загружать динамические данные из таблицы MySQL в ElasticSearch, используя драйвер JDBC - PullRequest
0 голосов
/ 23 мая 2018

Я получил данные из таблиц MySQL в моем индексе упругого поиска.Для этого я использовал следующую ссылку, но не получил результат:

Я использовал следующий код:

echo '{
    "type":"jdbc",
    "jdbc":{

    "url":"jdbc:mysql://localhost:3306/CDFL",
    "user":"root",
    "password":"root",
    "useSSL":"false",
    "sql":"SELECT * FROM event",
    "index":"event",
    "type":"event",
    "autocommit":"true",
    "metrics": {
                "enabled" : true
            },
            "elasticsearch" : {
                 "cluster" : "servercluster",
                 "host" : "localhost",
                 "port" : 9300 
            } 
    }
    }' | java -cp "/etc/elasticsearch/elasticsearch-jdbc-2.3.4.0/lib/*" -"Dlog4j.configurationFile=file:////etc/elasticsearch/elasticsearch-jdbc-2.3.4.0/bin/log4j2.xml" "org.xbib.tools.Runner" "org.xbib.tools.JDBCImporter"

, и для этого решения я использовал следующую ссылку:

ElasticSearch, как интегрировать с Mysql

https://github.com/jprante/elasticsearch-jdbc

Извлечение изменений из таблицы с рекой JDBC ElasticSearch

https://github.com/logstash-plugins/logstash-input-jdbc

1 Ответ

0 голосов
/ 24 мая 2018

У меня есть ответ на этот вопрос: создайте один файл в корневом каталоге с именем event.sh и следующий код в этом файле

event.sh

curl -XDELETE 'localhost:9200/event'
bin=/etc/elasticsearch/elasticsearch-jdbc-2.3.4.0/bin
lib=/etc/elasticsearch/elasticsearch-jdbc-2.3.4.0/lib
echo '{
"type":"jdbc",
"jdbc":{

"url":"jdbc:mysql://localhost:3306/CDFL",
"user":"root",
"password":"root",
"useSSL":"false",
"sql":"SELECT * FROM event",
"index":"event",
"type":"event",
"poll" : "6s",
"autocommit":"true",
"metrics": {
            "enabled" : true
        },
        "elasticsearch" : {
             "cluster" : "servercluster",
             "host" : "localhost",
             "port" : 9300 
        } 
}
}' | java -cp "/etc/elasticsearch/elasticsearch-jdbc-2.3.4.0/lib/*" -"Dlog4j.configurationFile=file:////etc/elasticsearch/elasticsearch-jdbc-2.3.4.0/bin/log4j2.xml" "org.xbib.tools.Runner" "org.xbib.tools.JDBCImporter"
echo "sleeping while importer should run..."
sleep 10
curl -XGET 'localhost:9200/event/_refresh'

и запустите этот файл с помощью команды cmd, набрав следующую команду:

sh elasticSearch/event.sh

, что нормально работает

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...