我们有ETL流程,它每5分钟从不同的源系统(as400,orcale,sap等)将数据提取一次到我们的sqlserver数据库中,然后从那里每5分钟将数据提取到一个弹性索引中,以便两者同步。 我想将时间范围缩短到秒,而不是5分钟,我想确保它们始终保持同步。
我正在使用控制日志表来确保弹性摄取和SSIS ETL不在同一时间运行,以便我们可能不同步。这是一个非常差的解决方案,并且不允许我实现近实时数据捕获
我正在寻找更好的解决方案,以近乎实时地同步sqlserver数据库和弹性索引,而不是手动进行。
注意:我目前正在使用python脚本将数据从sql泵送到弹性索引。
答案 0 :(得分:0)
一种方法是让event stream从数据库中出来,甚至直接从SSIS包运行(实际上可能更容易实现)运行,直接将其输入到弹性搜索索引中。 ELK处理流日志文件,因此应该很好地处理事件流。