我正在处理SQLServer中的一个表,需要在几乎实时的时间内在ElasticSearch中进行索引。此表中的记录是从各个点(遗留代码、存储过程等)中添加/更新/删除的。因此,检测代码以查找与此表交互的所有区域是不可行的。什么样的技术和/或工具会允许这样做?
注意: SQLServer中的表包含大约10列,最多可包含100万行。
发布于 2017-03-05 04:02:41
如果您想用最少的代码来完成它,那么您可以使用Logstash插件来设置它(现在Elasticsearch不再支持江河概念)。表中有最后一次更新的时间戳列。您可以将轮询查询配置为基于它,以便它能够从上次运行以来收集更改。确保在这个时间戳列上定义了索引。因为这将是一个轮询过程,所以不要过问,设置非常低的轮询间隔,因为这样可能会给SQL服务器带来不必要的工作负载。
如果您准备以正确的方式完成它并准备花费时间编写代码,那么您可能应该考虑选项。您可以在表上设置触发器,以便在队列中写入消息和外部轮询/触发进程,以拾取消息/更改并将其推送到Elasticsearch。
https://stackoverflow.com/questions/42603412
复制相似问题