每个开发人员都应了解的数据集成平台

处理大量数据非常类似于开发软件。 两者都需要对最终用户的需求有充分的了解,需要有关如何实施解决方案的知识,并需要灵活的实践来迭代和改善结果。 软件开发和数据实践都需要建立技术平台,编码实践,devops方法论和灵活的基础架构,并准备满足业务需求。

与软件开发人员相比,数据科学家, dataops工程师和数据工程师拥有许多相似的技术和实践,但是仍然存在许多差异。 在参加2019年在纽约举行的Strata数据会议时,我研究了通过软件开发人员和数据工程师的双重视角介绍的方法,平台和解决方案。

准备好数据以供使用

使用少量数据的应用程序开发人员通常通过脚本,数据库存储过程和其他编码选项来实现前期数据集成,格式化和存储。 这是一种直截了当的方法,可以绕过所需的管道,并准备好数据可以由微服务支持,通过API共享或由最终用户应用程序使用。

但是,由于交付应用程序是主要的业务目标,因此也是全栈开发人员的关注重点,因此通常最小化用于提取,处理和存储数据的工程工作。

另一方面,数据科学家和数据操作工程师则认为加载数据的世界大不相同。 首先,他们非常了解垃圾桶,垃圾桶的原理,并且知道如果未正确清理和处理加载的数据,分析,数据可视化,机器学习模型和其他数据产品就会受到损害,并且可能毫无用处。

此外,如果数据没有得到最佳存储,则会使分析工作效率降低,并可能影响查询性能。 通过过多的联接查询关系数据库或处理未分区的大量时间序列数据库,因此生产力和性能可能是一个问题。

数据团队在考虑如何最好地提取数据时,将始终考虑数据源,数据类型以及支持容量,性能,可靠性和安全性的要求。 他们还将考虑在准备好使用数据之前需要进行的数据清洗和扩充的类型。

总之,他们投入了巨大的努力来确保数据加载符合当今的需求,可扩展以支持不断变化的数据格式,并且可扩展以支持不断增长的数据量。

数据集成平台不适合所有人

像软件开发平台一样,有许多不同类型的数据提取平台。 软件开发人员应熟悉以下基本数据集成类型:

  • ETL(提取,转换和加载)平台已经存在了一段时间,并且传统上用于批量处理不同企业系统之间的数据移动。 Informatica,Talend,IBM,Oracle和Microsoft都提供ETL技术。
  • 当必须实时或近乎实时地为IoT和其他应用程序提取数据时,Kafka和Spark等平台或Vantiq等事件驱动架构是更好的选择。
  • 拥有许多业务分析师并处理数据的组织可以使用数据准备技术来加载电子表格和其他较小的数据源。 Tableau,Alteryx和Trifacta的工具都提供自助数据提取和处理功能,企业用户只需很少或不需要编码即可使用它们。
  • 当公司认识到需要采取主动措施来清理数据或建立主数据记录时,便有了诸如HoloClean之类的开源平台,以及诸如Reltio,Tarr和Ataccama之类的数据质量和母带平台。 ETL,数据准备和其他数据集成平台也具有数据质量功能。
  • 大型企业以及拥有分布在多个云和数据中心中的许多数据源的企业可能会考虑使用Cloudera数据平台,SAP数据智能或InfoWorks数据运营与编排系统。 这些平台可在众多数据库和大数据平台上工作,并有助于虚拟化多个数据源,简化数据集成流程并实施所需的数据沿袭和数据治理 。

这些平台中的许多平台都提供了可视化编程功能,因此可以开发,管理和扩展数据管道 。 例如,管道可以从Kafka收集的IoT传感器数据开始,将数据与其他数据源合并,运送到数据湖,然后推入分析平台。

每个人都可以在哪里找到所有这些数据?

随着数据源,管道和管理平台数量的增加,IT部门难以管理,数据消费者难以找到所需信息。 知道在哪里搜索和查找数据源只是一个起点; 数据使用者必须了解可用数据源上的描述,描述性元数据,状态,使用权利以及主题专家。

数据目录是许多数据平台提供的功能,可作为业务分析人员,数据科学家,数据工程师和软件开发人员的集中资源,以查找数据源并记录有关它们的信息。 这些可以成为引人注目的企业工具,以帮助共享和改进数据以进行分析或在应用程序中使用

正确使用数据是每个人的责任

所有这些工具和功能代表了软件开发人员的新职责和机遇。

责任始于使用数据集成工具作为引入新数据源并将其用于应用程序的主要方式。 与数据集成平台的功能相比,开发脚本和用代码对数据清除操作或业务规则进行编码的简单方法具有明显的缺点。

由于数据集成平台需要特定于数据源的扩展,规则和配置,因此仍有许多编码机会。 但是,这些平台提供了健壮的方法来管理此代码,处理异常以及提供其他操作功能,这些方法都会挑战任何“自己动手”的方法。

数据目录为开发人员提供了重要的机会,可以在软件应用程序中使用更多的数据源和分析或机器学习模型。 实际上,许多组织的主要目标之一就是以数据为驱动力 ,并使员工,客户和合作伙伴能够使用适当的且经过许可的数据和分析。 有什么比软件开发团队将可用数据,分析或机器学习模型直接嵌入应用程序更好的方法?

询问数据科学家,他们的主要目标之一就是将他们的机器学习模型集成到应用程序中。 嵌入分析以使最终用户受益是数据科学家和软件开发人员如何协作并交付业务价值,这对每个人都是胜利。

From: https://www.infoworld.com/article/3442761/data-integration-platforms-every-developer-should-understand.html

你可能感兴趣的:(每个开发人员都应了解的数据集成平台)