我正在尝试从Superset连接到Apache Solr数据源。据我所知,Solr是在Java中开发的,Superset是用Python开发的,在SqlAlchemy中没有Solr的方言。
hs1ihplo1#
您不能为Solr创建一个现成的超集数据源,因为(就您的观点而言)没有用于Solr的SQLAlchemy方言。请注意,SQLAlchemy(或Superset)并不关心数据源是用java编写的(还是用Fortran编写的)--只要有一个功能性的SqlAlchemy方言和Python驱动程序。也就是说,对于Solr来说,SQLAlchemy方言不存在的原因是它们基于不同的目的和不同的结构而构建。最好的办法可能是实现某种类型的数据提取过程,从Solr中获取所需的数据,并将其放入受支持的数据库中。
disbfnqx2#
当然可以。你可以使用Spark-Solr,运行Spark Thrift服务器,并将你的超集与Thrift服务器连接。这个堆栈对我很有效。Spark Solr是指向github的链接Spark Solr是一个强大的库,可以从Solr索引中创建 Dataframe 。你甚至可以编写流表达式来连接多个集合。Spark Thrift提供了一个到Spark引擎的JDBC连接。
2条答案
按热度按时间hs1ihplo1#
您不能为Solr创建一个现成的超集数据源,因为(就您的观点而言)没有用于Solr的SQLAlchemy方言。
请注意,SQLAlchemy(或Superset)并不关心数据源是用java编写的(还是用Fortran编写的)--只要有一个功能性的SqlAlchemy方言和Python驱动程序。
也就是说,对于Solr来说,SQLAlchemy方言不存在的原因是它们基于不同的目的和不同的结构而构建。
最好的办法可能是实现某种类型的数据提取过程,从Solr中获取所需的数据,并将其放入受支持的数据库中。
disbfnqx2#
当然可以。你可以使用Spark-Solr,运行Spark Thrift服务器,并将你的超集与Thrift服务器连接。这个堆栈对我很有效。
Spark Solr是指向github的链接
Spark Solr是一个强大的库,可以从Solr索引中创建 Dataframe 。你甚至可以编写流表达式来连接多个集合。Spark Thrift提供了一个到Spark引擎的JDBC连接。