2014-07-01 77 views
1

是否可以從Cassandra導入數據到Apache Solr?使用dataimporthandler從Cassandra導入數據到Apache Solr

我目前使用Solr的dataimporthandler將數據從MySQL導入Apache Solr。是否有可能使用Cassandra來代替MySQL?

更新1:

我試圖使用這裏給出的JDBC驅動程序(https://code.google.com/a/apache-extras.org/p/cassandra-jdbc/)一個簡單的Java程序連接到卡桑德拉。我的想法是,如果Java代碼工作,Solr也應該從Cassandra導入。但它沒有工作,我得到了以下錯誤:

log4j:警告沒有appender可以發現記錄器(org.apache.cassandra.cql.jdbc.CassandraDriver)。 log4j:WARN請正確初始化log4j系統。 log4j:警告有關更多信息,請參見http://logging.apache.org/log4j/1.2/faq.html#noconfig。 線程「main」中的異常java.lang.NoClassDefFoundError:org/apache/cassandra/cql/jdbc/AbstractJdbcType at org.apache.cassandra.cql.jdbc.CassandraConnection。(CassandraConnection.java:146) at org.apache (DriverManager.java:270) 在CqlConnection.main(CqlConnection.java:14) 引起:java.lang.ClassNotFoundException:org.apache.cassandra.cql.jdbc.AbstractJdbcType at java.net.URLClassLoader $ 1.run(URLClassLoader.java:372) 在java.net.URLClassLoader $ 1.run(URLClassLoader.java:361) at java.security.Ac cessController.doPrivileged(本機方法) 在java.net.URLClassLoader.findClass(URLClassLoader.java:360) 在java.lang.ClassLoader.loadClass(ClassLoader.java:424) 在sun.misc.Launcher $ AppClassLoader.loadClass (Launcher.java:308) 在java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 5個

+0

你能想出整合沒有datastax的最新版本嗎? –

回答

2

免責聲明 - 從未嘗試過這一點,所以無法保證性能等:)

Solr的DataImportHandler contrib使用JDBC連接到關係數據源。下面是官方的Solr維基約configuring JDBC

現在,卡桑德拉,你可以使用Cassandra-jdbc驅動程序和設置您的DIH配置有該驅動程序支持SQL。

請注意: - 我沒有在生產環境中使用Cassandra-jdbc,所以可能有缺點,您可能需要考慮嘗試。 - 如上所述,我不知道性能方面 - 會建議你把它搞砸。

請寄回任何發現!

+0

謝謝。讓我嘗試! – sarghau

+0

Cassandra-jdbc太舊了,它只支持較早版本的cassandra。目前,java-cassandra由[Datastax](https://github.com/datastax/java-driver)提供。我不認爲這可以與Solr一起使用。 Datastax有自己的solr和cassandra集成包。但這是一個付費版本。 – sarghau

+0

該死的,多數民衆贊成在運氣...恐怕我的想法.. –

相關問題