我想使用elasticsearch-river-mysql以便将数据从MySQL数据库连续传输到ElasticSearch。我是ES和Rivers的初学者,所以希望您能为我的问题提供帮助。
我的建议已经出于多种原因尝试使用elasticsearch-jdbc- river。
其中之一是,elasticsearch-jbdc-river如果您决定切换 RDBMS ,则它更为通用。
elasticsearch-jbdc-river
另一个是,jbdc-river当另一个已经不存在时,它仍然保持不变,并且Elasticsearch从那以后发展了很多。
jbdc-river
1.据我所知,数据将从MySQL数据库流式传输到ES群集,后者将自动对其进行索引。 那是对的吗?我需要了解任何超时或限制吗?
来自MySQL的数据应从MySQL自动流传输到Elasticsearch集群,而没有超时限制,但瓶颈将是您的JVM堆大小。我不确定要处理多少数据量。您需要对其进行测试。
2.关系数据库表之间的外键关系将如何转换为ES? 包含外键的表行是否将成为ES文档的内部对象,或者将使用ES文档之间的其他关系?
Elasticsearch是无模式的,因此您需要管理内部Elasticsearch。河流只是将数据流传输到您的集群中。您可以在创建索引时定义映射,然后使用河流将其流式传输到ES群集中。
3.将河流用于上述目的是否有任何不利条件?
这条河将被另一种更清洁的方式来流式传输这些数据取代,但这是您目前拥有的最佳解决方案。