我的团队陷入了困境,并被要求在各种大型数据集上建立客户的联合搜索,这些数据集包含关于每个人的不同程度的不同数据(并且没有匹配的标识符),我想知道如何着手实施它。
我认为 Apache Nifi 非常适合查询我们的各种数据库、合并结果、通过外部工具对条目进行重复数据删除,然后将此结果推送到数据库中,然后查询该数据库以在 Elasticsearch 实例中供应用程序使用。
所以粗略地说是这样的: -
例如,以下数据存在于第一个流程的结果数据库中:-
<a href="https://i.stack.imgur.com/gTPx7.png" rel="nofollow noreferrer">
然后在这个数据库表上运行https://github.com/dedupeio/dedupe,它将添加集群 ID 以帮助记录链接,例如:-
<a href="https://i.stack.imgur.com/6EukP.png" rel="nofollow noreferrer">
然后,第二个流程将查询结果数据库并将此结果提供给 Elasticsearch 实例,以供应用程序 API 用于查询,该查询将使用集群 ID 链接重复项。
几个问题:-
我将如何触发重复数据删除以在合并的内容上运行被推送到数据库?</p>
必然的问题 - 第二个流程如何知道何时获取结果以推送到 Elasticsearch?定期轮询?</p>
我在这里也没有考虑任何 CDC 流程,因为数据库将不断更新,我需要处理,所以如果有人解决了类似的问题或使用了不同的方法(也很高兴考虑其他技术),我真的很感兴趣。
谢谢!