2016-05-21 53 views
1

我在MySQL中以不同的數據庫形式出現大量數據,以及它們各自的表。它們都是相互關聯的。但是當我不得不對數據進行分析時,我必須創建不同的腳本,這些腳本結合了數據,將其合併並顯示爲結果,但這需要花費很多時間和精力。我喜歡通過kibana對elasticsearch的速度和可視化數據進行彈性搜索,因此我決定將我的整個MySQL數據實時移動到elasticsearch,並將數據保存在MySQL中。但我想要一個可擴展的策略,並將這些數據遷移到elasticsearch。實時將數據從MySQL遷移到elasticsearch?

建議最好的工具或方法來完成這項工作。

謝謝。

+1

有幾個答案可能有所幫助:[here](http://stackoverflow.com/questions/33028085/how-to-migrate- mysql-data-to-elasticsearch-realtime/33029458#33029458),[here](http://stackoverflow.com/questions/33293965/ho w-to-sync-a-mysql-database-to-external-data-source/33325963#33325963)and [here](http://stackoverflow.com/questions/34477095/elasticsearch-replication-of-other-system -data/34477639#34477639)。 – Val

回答

0
  1. 在Elasticsearch 2.x之前,您可以編寫自己的Elasticsearch _river插件,您可以將其安裝到elasticsearch中。你可以控制你想要多長時間一次這樣的數據,你的腳本被_river拉入(注意:這不是真正的推薦)。

  2. 您也可以使用自己喜歡的隊列Message Broker的工具,如ActiveMQ將數據推入elasticsearch

  3. 如果你想完全控制,以滿足您對數據的實時遷移,你也可以寫一個簡單的需求使用elasticsearch REST端點的應用程序,只需通過REST寫入即可。你甚至可以做批量發佈

  4. 利用任何的elasticsearch工具,如beatlogstash,在裝運幾乎任何類型的數據到elasticsearch

對於改寫(munging)數據的其他替代品是巨大的到一個平面文件,或者如果你想保持關係看到這個職位here