Импорт данных в Apache Solr из Cassandra с использованием dataimporthandler

#solr #dataimporthandler #cassandra-2.0 #cassandra-jdbc

#solr #dataimporthandler #cassandra-2.0 #cassandra-jdbc

Вопрос:

Возможно ли импортировать данные из Cassandra в Apache Solr?

В настоящее время я импортирую данные из MySQL в Apache Solr, используя dataimporthandler Solr. Возможно ли использовать Cassandra вместо MySQL?

Обновление 1:

Я попытался подключиться к Cassandra из простой Java-программы, используя приведенный здесь драйвер JDBC (https://code.google.com/a/apache-extras.org/p/cassandra-jdbc /). Моя идея заключалась в том, что если Java-код работает, Solr также должен быть импортирован из Cassandra. Но это не сработало, и я получил следующую ошибку:

log4j: ПРЕДУПРЕЖДЕНИЕ Не удалось найти приложения для logger (org.apache.cassandra.cql.jdbc.CassandraDriver). log4j: ПРЕДУПРЕЖДЕНИЕ Пожалуйста, правильно инициализируйте систему log4j. log4j: ПРЕДУПРЕЖДЕНИЕ См.http://logging.apache.org/log4j/1.2/faq.html#noconfig для получения дополнительной информации. Исключение в потоке «main» java.lang.Ошибка удаления класса: org/apache/cassandra/cql/jdbc/AbstractJdbcType в org.apache.cassandra.cql.jdbc.CassandraConnection.(CassandraConnection.java:146) в org.apache.cassandra.cql.jdbc.CassandraDriver.connect(CassandraDriver.java:92) в java.sql.DriverManager.getConnection(DriverManager.java:664) в java.sql.DriverManager.getConnection(DriverManager.java:270) в CqlConnection.main(CqlConnection.java:14), вызванный: java. лэнг.Исключение ClassNotFoundException: org.apache.cassandra.cql.jdbc.AbstractJdbcType в java.net.URLClassLoader$1.выполнить(URLClassLoader.java:372) в java.net.URLClassLoader$1.выполнить(URLClassLoader.java:361) в java.security.AccessController.Допривилегирован (собственный метод) в java.net.URLClassLoader.FindClass(URLClassLoader.java:360) в java.lang.ClassLoader.loadClass(ClassLoader.java:424) в sun.разное.Launcher$AppClassLoader.loadClass(Launcher.java:308) на java.lang.ClassLoader.loadClass(ClassLoader.java:357) … еще 5

Комментарии:

1. Не могли бы вы выяснить, как интегрировать последние версии без datastax?

Ответ №1:

Отказ от ответственности — Никогда не пробовал этого, поэтому не могу ручаться за производительность и т.д. 🙂

Содержимое DataImportHandler в Solr использует JDBC для подключения к реляционному источнику данных. Вот официальная Solr Wiki о настройке JDBC

Теперь для Cassandra вы можете использовать драйвер Cassandra-jdbc и настроить свою конфигурацию DIH на SQL, поддерживаемый этим драйвером.

Пожалуйста, обратите внимание: — Я не использовал Cassandra-jdbc в производственной настройке, поэтому могут быть недостатки, которые вы, возможно, захотите рассмотреть в пилотном режиме. — Как упоминалось выше, я также не знаю аспект производительности — порекомендую вам использовать его.

Пожалуйста, отправьте обратно любые результаты!

Комментарии:

1. Cassandra-jdbc слишком устарел и поддерживает только более старые версии cassandra. В настоящее время java-cassandra предоставляется Datastax . Я не думаю, что это можно использовать с Solr. У Datastax есть собственный пакет solr и cassandra, интегрированный. Но это платная версия.