数据治理:数据集成的关键技术

腾讯数字生态大会  8.18-8.19  即将召开!

这是腾讯产业互联网领域 规格最高的会

现在报名,预约直播

会后,可以到会议官网下载全套会议PPT!


笔者08年就开始参与企业应用集成项目建设,经历了点对点数据集成、总线式数据集成、离线批量数据集成,流式数据集成等数据集成方式。所以,没有人比我更了解数据集成。
数据集成是把不同来源、格式、特点性质的数据在逻辑上或物理上有机地集中,从而为企业提供全面的数据共享。
数据集成的核心任务是要将互相关联的异构数据源集成到一起,使用户能够以透明的方式访问这些数据资源。
数据集成的目的是指维护数据源整体上的数据一致性,解决企业“信息孤岛”的问题,提高信息共享和利用的效率。

01  

点对点数据集成

点多点集成是最早出现的应用集成模式,采用点对点的方式开发接口程序,把需要进行信息交换的系统一对一地集成起来,从而实现整合应用的目标。

点对点的连接方式在连接对象比较少的时候,确实是一种简单和高效的连接方式,具有开发周期短、技术难度低的优势。但其最大的问题是,当连接对象多的时候,连接路径会以指数方式剧增,效率和维护成本是最大的问题。

当需要连接的应用系统越来越多时,点对点集成方式将把整个企业信息系统接口变成无法管理的“混乱的线团”。

点对点的集成架构不能集中管理和监控接口服务,仅支持一对一的数据交换,如果交换协议不一致,开发则非常困难。即,如果沟通的语言、文字、格式、方法等有差异,则每一个连接方都要同时支持和维护多种连接方式。

点对点的集成是紧耦合的,当一个连接变化时,所有与其相关的接口程序都需要重新开发或调试。

基于以上几点,在多点互连的情况下,点对点连接方式成本高,可用性和可维护性低。

显然,这不是一个好的连接方式。

02 

总线式数据集成

总线式数据集成是通过在中间件上定义和执行集成规则,其拓扑结构不再是点对点集成形成的无规则网状,而主要是中心辐射型的(Hub型)星型结构或总线结构。

总线结构通过与点对点集成架构相比,采用总线架构可以显著减少编写的专用集成代码量,提升了集成接口的可管理性。不同连接对象如果连接方式有差异,可以通过总线完全屏蔽掉,做到对连接对象透明,无需各个连接对象关心。通过总线结构,把原来复杂的网状结构变成简单的星形结构,极大提高了硬件的可靠性和可用性。

总线式数据集成的一代:电子数据交换系统(EDI)

EDI不是用户之间简单的数据交换,EDI用户需要按照国际通用的消息格式发送信息,接收方也需要按国际统一规定的语法规则,对消息进行处理,并引起其他相关系统的EDI综合处理。标准化得EDI格式转换保证了不同国家、不同地区、不同企业的各种商业文件(如单证、回执、载货清单、验收通知、出口许可证、原产地证等)得以无障碍电子化交换,促进了国际贸易的发展。

总线式数据集成二代:企业服务总线(ESB)

ESB的使用标志着企业的应用集成进入了SOA时代(SOA是一种面向服务的集成架构)。SOA架构的其主要特征是基于一系列Web标准或规范来开发接口程序,包括UDDI、SOAP、WSDL、XML,并采用支持这些规范的中间件产品作为集成平台,从而实现了一种开放而富有弹性的应用集成方式。

ESB是对web服务(WebService)的注册、编排和管理。

WebService是一种跨编程语言、跨操作系统平台的远程调用技术,是web的一种标准。可以理解为:WebService是一个应用程序向外界暴露了一个能通过Web调用的API接口,我们把调用这个WebService的应用程序称作客户端,把提供这个WebService的应用程序称作服务端。客户端进行服务的远程调用前,需要知道服务的地址与服务有什么方法可以调用。

因此,WebService服务端通过一个文件(WSDL)来说明自己家里有啥服务可以对外调用,服务是什么,服务中有哪些方法,方法输入的参数是什么,返回值是什么,服务的网络地址是什么,通过什么方式来调用等。

WSDL是一个基于XML的语言,用于描述WebService及其函数、参数和返回值,它是WebService客户端和服务器端都能理解的标准格式。

03

离线批量数据集成

在传统数据集成的语境下,离线批量数据集成,通常是指基于ETL工具的离线数据集成,ETL即数据的提取(Extract)、转换(Transform)和加载(Load)。

ETL是数据仓库的核心和灵魂,能够按照统一的规则集成并提高数据的价值,是负责完成数据从数据源向目标数据仓库转化的过程,是实施数据仓库的重要步骤。

在数据仓库、数据湖、数据资产管理等项目中,ETL都是最核心的内容。ETL通过ETL作业流(任务)从一个或多个数据源中抽取数据,然后将其复制到数据仓库。抽取类型有全量抽取、增量抽取、准实时抽取、文件提取等方式。针对不同的数据提取场景设计不同的数据抽取类型。在数据抽取过程中,需要将不符合规则的数据过滤掉,并按照一定的业务规则或数据颗粒度转换成数据仓库可用的数据,这个过程就是数据的清洗和转换。最后,就是调用数据库的服务将数据装载至数据库中。

ETL的实现有多种方法,常用的有三种:

第一种是借助ETL工具:例如:Informatic、IBM CDC、talend、kettle、Nifi等,借助工具可以快速的建立起ETL工程,屏蔽了复杂的编码任务,提高了速度,降低了难度,但是缺少灵活性。

第二种是SQL编码实现:SQL的方法优点是灵活,提高ETL运行效率,但是编码复杂,对技术要求比较高。

第三种是ETL工具和SQL组合实现:综合了前面二种的优点,会极大地提高ETL的开发速度和效率。

04

流式数据集成

流式数据集成也叫流式数据实时数据处理,通常是采用Flume、Kafka等流式数据处理工具对NoSQL数据库进行实时监控和复制,然后根据业务场景做对应的处理(例如去重、去噪、中间计算等),之后再写入到对应的数据存储中。

这个过程类似传统的ETL,但它是流式的处理方式,而非定时的批处理Job,NoSQL数据库采集工具均采用分布式架构,能满足每秒数百MB的日志数据采集和传输需求。

Kafka 就是一个能够处理实时的流式数据的一个新型ETL解决方案。

Kafka 能够通过 Kafka Connect API 实现流数据管道的构建,也就是 ETL 中的 E和L。Connect API 利用了 Kafka 的可扩展性,kafka connect是围绕kafka构建的一个可伸缩,可靠的数据流通道,通过kafka connect可以快速实现大量数据进出kafka从而和其他源数据源或者目标数据源进行交互构造一个低延迟的数据通道。

流处理和转换可以通过 Kafka Streams API 来实现,也就是构建了ETL中的T,Kafka Streams用于在Kafka上构建高可分布式、拓展性,容错的应用程序。它建立在流处理的一系列重要功能基础之上,比如正确区分事件事件和处理时间,处理迟到数据以及高效的应用程序状态管理。

Kafka Streams包含了ConsumerAPI 和ProducerAPI的功能,增强了对数据流的处理能力。使用 Kafka 作为流处理平台能够消除为每个目标 sink、数据存储或系统创建定制化(很可能是重复的)抽取、转换和加载组件的需求。来自数据源的数据经过抽取后可以作为结构化的事件放到平台中,然后可以通过流处理进行数据的转换。

05

网络数据集成

网络数据集成也叫网络数据采集,指通过网络爬虫或网站公开 API 等方式从网站上获取数据信息的过程。

网页爬虫,即一种按照一定的规则,自动地抓取互联网信息的程序或者脚本,一般分为通用网络爬虫和聚焦网络爬虫两种。网页爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。

聚焦爬虫的工作流程较为复杂,需要根据一定的网页分析算法过滤与主题无关的链接,保留有用的链接并将其放入等待抓取的URL队列。

网页爬虫支持文本文件、图片、音频、视频等非结构化数据、半结构化数据从网页中提取出来,存储在本地的存储系统中。

目前网络上有许多网页爬虫,Octoparse、WebCopy、HTTrack、Getleft、Scraper等,并且这些工具都是免费的哦!

当然,你是一个技术大大的话,也可以写自己的爬虫程序。

下周直播

关注“选型宝订阅号”,进入“资料下载”频道,下载更多 IT 干货资料

IT规划、数字化转型中台IT项目管理IT架构....更多专题资料,应有尽有
更多IT方面干货,欢迎扫二维码,加选型宝小秘书微信获得!
(0)

相关推荐

  • 传统数仓如何转型大数据

    一.数据仓库 数据仓库:数据仓库系统的主要应用主要是OLAP(On-Line Analytical Processing),支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果.也就是说,数据 ...

  • 为什么建数据仓库需要使用ETL工具?

    数据仓库,是为企业所有级别的决策制定过程,提供所有类型数据支持的战略集合.它是单个数据存储,出于分析性报告和决策支持目的而创建.既然要获取全部数据,必然涉及到多系统,各类型数据库的对接问题,还有数据抽 ...

  • 「数据治理」什么是数据分析?流程、最佳做法和工具

    数据处理和分析离不开数据分析--检查源数据的内容和质量.随着数据越来越大,基础设施向云端转移,数据分析变得越来越重要.需要用有限的时间和资源实现大数据概要分析吗? 什么是数据分析? 数据分析是审查源数 ...

  • 数据治理成功要素6:技术与工具

    前言:正所谓:"工欲善其事,必先利其器!",一套好的数据治理工具,能让企业的数据治理工作事半功倍.数据治理本质是盘点数据资产.治理数据质量,实施数据全生命周期的管理,根据不同的项目 ...

  • 能源互联网数据交易:架构与关键技术

    点击下面标题,了解通知详情 2020第九届电工技术前沿问题学术论坛暨第十三届中国电工装备创新与发展论坛 团队介绍 郭庆来,清华大学电机系长聘副教授,博士生导师.教育部奖励计划青年学者,国家优秀青年科学 ...

  • 水专项巡礼 | 采用金泽原水的水厂工艺集成优化关键技术研究成果

    在金泽水库通水之前,上海市西南五区各水厂各自就近在黄浦江干.支流水域取水,原水常年处于中污染状况,切换金泽水库后,原水水质有较为明显的改善,但仍存在耗氧量偏高.季节性藻类暴发,以及复合嗅味.抗生素.农 ...

  • 数据资产盘点 数据治理 数据价值实现=数据资产管理运营

    须知 公众号推文规则变了,读者会错过文章更新,点击上方 '企业数字化咨询'关注, 设为星标 后台回复[技术],申请加入资料分享&技术交流群 略去大数据分析背景与价值部分,言简意赅的介绍如何进行 ...

  • 企业数字化转型关键 ,数据治理需要关注什么?

    2019年我国数字经济规模为35.8万亿元,产业数字化占数字经济的比例达到80.2%.新经济领域的高度数字化,通过传导至传统产业的转型升级.在"新基建".疫情等外部因素的催化下,数 ...

  • 数据治理是人工智能未来发展的关键

    为了更好地采用人工智能,人们需要了解一些基本知识.数字时代最主要的事情之一就是保护隐私. 人工智能革命为希望保护隐私的人们带来了巨大的麻烦.有时候,人工智能机器人的预测能力可能为注重隐私的人们带来困扰 ...

  • 分析 | 大数据:产业链关键技术步入创新突围期

    2020年,受新冠肺炎疫情倒逼,大数据技术.产品和解决方案广泛应用于监测分析.防控救治.资源调配.复工复产,大数据融合应用新场景大量涌现,在常态化疫情防控和经济社会发展中发挥了积极作用.2021年,随 ...

  • 大数据隐私保护关键技术:数据脱敏、匿名化、差分隐私和同态加密

    古人云,"鱼,我所欲也,熊掌亦我所欲也:二者不可得兼".大数据时代,数据挖掘诚可贵,例如各类APP通过收集我们的行为信息进行购买商品与美食预测和推荐,提高用户体验和提升效率:然而, ...

  • 品友互动创始人兼CEO黄晓南:技术与服务是大数据服务商未来发展的关键方向

    数据猿导读 从大数据服务商的角度来看,有两个关键的发展方向,一方面是通过技术提高准入门槛,形成核心竞争力:另一方面,通过透明化的大数据服务引导行业良性发展.前者是大数据企业安身立命的根本,后者则直接帮 ...