对于如何在Data Consolidation/Data Integration和Data Synchronisation之间选择什么,我有些困惑?我知道:
数据整合/数据集成:指将来自多个源的数据收集和集成到单个目标中。在此过程中,将不同的数据源组合在一起,或合并到一个数据存储中。
数据同步:指在系统和数据存储之间建立一致性,以及随后的持续更新以保持一致性。
现在假设我有这样一个关于一家公司的案例:
-数据存在于多个来源中,通常是部门间的数据
-因为公司大部分时间都花在验证数据上,而不是在有用的规划分析上
-不同来源的数据定义也不尽相同
现在,在这种情况下,哪种情况更好--数据集成/合并,还是将数据保留在不同的源中,并将其同步?
此外,我还应该寻找哪些其他有用和相关的信息来帮助我作出决定,以及这些额外的信息将如何反映我的决策?
发布于 2017-09-09 13:15:13
首先,您介绍的案例(单个公司、多个部门来源、克服不完整/不一致/无法匹配的部门数据的大量验证,以及以牺牲对数据的有用分析为代价的效率低下)是再工程您的系统或采用集成软件系统 (如企业资源规划 )的典型业务案例。
但我认识到,这并不总是可能的,也不是可取的。
数据集成是一种流行的方法,它展示了ETL解决方案的丰富提供和企业数据仓库的发展趋势。
尽管其由来已久,但这种方法在几乎任何情况下都是有效和可行的(批处理或实时、互补或不同的数据、清洁数据或待清理和更正的数据等)。而且强壮。
的情况
另一方面,最近的技术发展,例如大数据体系结构或微服务,试图将系统解耦并促进扩展(避免可能成为瓶颈的共享数据库)。
如果直接使用服务API不值得增加同步的复杂性,通过事件来源和信息传递实现数据同步是一种非常有效的方法,可以将系统解耦并实现可伸缩性。
但是,同步需要在应用程序之间建立一个一致的模型,这是良好的DDD实践,但在一个异构的历史发展的系统景观中并不总是可能的。
发布于 2017-10-24 18:15:28
从2017年末的角度来看,数据集成将是一个很好的选择,同时对现有系统进行审查,以确定哪些是升级或替换的候选。
通过使用数据湖或数据仓库来整合来自每个不同系统的重要业务数据,您可以为用户提供一个研究和分析源。数据被验证为ETL过程的一部分,因此您有确保质量数据的制衡。此外,将查询和分析从操作系统移开,使其能够集中精力处理日常事务。
另一种选择是使用ELT (提取、加载、转换)系统。这可能不适合所有这些不同的系统,但它为兼容的系统提供了优势。ELT会将数据从操作系统中移出,然后在查询时执行转换过程或转换。这种方法减轻了维护负担,因为在数据提供给用户之前没有繁琐的转换过程。某些类型的系统(包括功能和数据类型)可能比其他系统更适合ELT。为了更好地理解两者的区别,下面是来自泛垄断博客的一篇很好的ETL/ELT 101文章。
为了使仓库保持最新,我建议使用来自事务系统的实时数据流和来自非事务系统的常规数据流。有了可用的工具,一旦验证了原始工作流,这些流程就可以在很大程度上实现自动化。
发布于 2016-09-11 06:16:55
这取决于许多外部因素。如果您只查看不同的数据模式,那么很可能就不难合并,要么将其中一个数据源拖到另一个数据源,要么从第三个数据源重新开始,从零开始构建它,同时考虑到两个现有数据源的需求并迁移数据。但是会有类似的依赖关系
因此不可能判断哪一个在一般情况下会更好。
https://softwareengineering.stackexchange.com/questions/330740
复制相似问题