场景很简单:许多公司需要共享一些参考数据(例如,产品列表及其属性)。
问题是目前每个实体都在内部收集/清理数据,然后与其他公司共享数据,这导致了交换文件(电子表格)的冗长过程。
解决这个问题的现代方法有哪些?当然,这种情况在现代企业生活中很常见,所以我正在寻找一些关于标准流程/技术的指导来研究。
谢谢!
场景很简单:许多公司需要共享一些参考数据(例如,产品列表及其属性)。
问题是目前每个实体都在内部收集/清理数据,然后与其他公司共享数据,这导致了交换文件(电子表格)的冗长过程。
解决这个问题的现代方法有哪些?当然,这种情况在现代企业生活中很常见,所以我正在寻找一些关于标准流程/技术的指导来研究。
谢谢!
这确实是一种常见的情况,有多种解决问题的方法,从专用的商业产品(如Tibco MDM或 IBM、Dell/Boomi 等的类似产品)到轻量级的大型单一主数据解决方案每个微服务都拥有特定的数据子集,并将相关数据的更改发布到需要它的其他微服务。如果公司之间的数据库技术和架构大体相似,则有时您可以使用复制或数据库日志传送之类的东西来同步公司之间的数据。如果您的数据不需要自动同步,则可以使用 ETL 程序从一家公司提取对主数据的更改并将其加载到其他公司。
利用领域驱动设计的近实时方法将为每组需要管理的主数据元素(例如产品)识别一个有界上下文。然后,每个公司将定义他们的产品领域模型,定义一个产品聚合,该聚合公开产品的公共表面并抽象公司特定的细节。领域模型还将定义每个公司可以发布的与其产品聚合相关的事件。如果不同的公司拥有产品的不同部分,他们可能会将这些字段的更改发布为其他公司订阅的 领域事件。
在每个公司中定义产品的底层存储库和数据结构将由接收更改并将其应用于公司特定域的命令处理器进行更新。这可以使用 ESB、微服务或消息代理进行编排,具体取决于公司之间所需处理的复杂性,例如路由、转换和翻译。