这些传统数据集成的痛,你还在经历吗?

img DataPipeline2019-12-06

20多天后,我们将步入2020年。在即将过去的2019年,人工智能、5G、数字货币等技术不断冲击着传统的数据治理模式,你所在的企业是否同样感受到了冲击?在这些难以言说的痛中间,又有多少是传统数据集成所带来的?

今年,随着数据驱动决策的理念逐渐深入人心,越来越多的企业开始逐步对存量的数据资产进行消费,在数据消费过程中引入各种数据集成的工具,来解决数据打通的问题,并用于后端数据消费:如分析报表、数据查询、和数据挖掘等工作。


大数据时代的到来,不仅意味着数据来源更加广泛,数据存储量增加,同时对于数据及时性要求也越来越高,传统数据集成工具的瓶颈越发明显。其中主要表现在以下几点,看完后,你正在经历哪几种?

一、数据及时性


各行各业的业务部门对于数据时效性的看法是:希望越快越好。金融行业的客户经理希望第一时间得到客户的动账通知;客户在申请贷款时,希望能够秒批秒贷;数字化营销部门的负责人希望能根据渠道投放的实时反馈及时调整投放策略;连锁零售门店也希望能实时掌握各个门店的库存,避免外卖的骑手取货时才发现货品已经售罄,而客户不得不提出退款;而在互联网行业,任何用户的行为分析都需要实时,以便在客户短暂的上线时间段能抓住客户的需求点。业务追求的是增长,快对于业务的改变不仅仅是减少低效的投入,及时止损,快速试错,更重要的是能加快业务的微创新,提升客户的体验,在更短的周期内快速迭代,应对千变万化的市场。

而随着业务的快速增长,数据源端应用系统的数据结构往往会快速变化,更多异构数据源以及外部数据也会不断地被引入,这给基于传统数据集成工具的开发流程带来了不小的挑战。传统的数据集成从取数任务的开发到用户能够用上数据,整个开发周期耗时较长,跨越多个部门,难以敏捷响应,往往一边是火烧眉毛的业务用户,另一边是加班加点的数据工程师们。

二、异构数据源和目的地

企业在发展过程中会采购不同供应商提供的服务系统,这就导致数据源采用的数据库技术不尽相同。随着大数据技术的发展以及 NoSQL 接受程度越来越高,导致数据的存储方式也多种多样。出现关系型数据库和非关系型数据库并存,多种结构化和非结构化数据亟待打通的情况。


而在数据服务侧,从传统的数据仓库技术到现在的大数据平台,从报表展现到预测分析,数据的目的地从数仓,MPP 数据集市,基于 Hadoop 的大数据平台到云上的各种数据服务,数据集成产品需要支持多样化的数据目的地。由于存在多种异构数据源和目的地并存的情况,如何快速打通数据孤岛,实现数据资产的消费成为困扰很多企业 IT 部门的难题。而传统的数据集成工具由于本身的技术架构在应对异构数据源,尤其是非结构化数据方面表现乏力,或是实现异构兼容的代价较高,因此在落地的项目中,二次开发工作量较大,并且上线后维护成本非常高。

三、人工开发和维护成本

随着业务的开展和渠道的多样化,业务和决策部门对于数据及时性的要求越来越高,这给数据部门带来了很大压力。传统数据集成工具在数据需求愈加旺盛的现代化企业里面临以下的困难:


1. 数据开发周期长、工作量大
传统的数据集成工具开发流程,首先需要在目的端创建数据表,其次通过工具进行数据表字段类型的映射、选择增量或全量同步规则和编写清洗规则,最后将开发好的任务配置发布到调度 Sequence 中。如果一个数据源需要 20 张数据表,意味着至少需要开发 20 个任务。

2.维护成本高

传统 ETL JOB 需要依靠调度配置任务的依赖关系,存在数据同步的先后次序。这样不仅拉长了数据消费的周期,也增加了运营成本。需要运营人员充分了解数据之间的依赖关系,增加了运营的难度;且同步采用的单表同步方式,导致数据同步数量庞大,增加了监控的难度。

3. 源端数据表结构变化监控难

随着业务的发展,源端的数据表结构会做对应的调整,为保证数据的准确性和一致性,目的端也需要能够及时做响应。传统的数据集成工具很难实现源端数据表结构变化的自适应。


4. 异构数据源兼容难

传统数据集成工具,在支持关系型数据库方面大多能够提供强大的解决方案,但是对于支持非结构化数据库能力偏弱。这就导致很多企业在打通异构数据源时,需要使用多套产品来解决异构数据源打通的问题。

针对上述提到的情况,一位相关工作人员就提出了以下几点让人崩溃的问题:

问题1:业务部门数据由于历史原因,使用的RDS(关系型数据库服务)类型多种多样,有Oracle、SQLServer等 ,如何整合这些数据库的部分数据到一个大数据平台进行数据分析?

问题2:业务部门数据表设计之初,没有考虑ETL数据抽取的问题,换言之没有时间字段,如何在上百G的数据中抽取增量数据?


问题3:关于实时计算的大数据项目,目前我们业务部门需要5~10分钟获得一次当前Call Center(呼叫服务中心)的工作情况,数据量较大。如果不能实时运算,难道要不断借助各种传统的ETL 进行增量数据提取?


问题4:业务部门中有数据分析人员,有人精通 T-SQL, 有人擅长 PL/SQL,还有人只会JAVA,如何满足多种多样的数据目的地需求?


问题5:由于数据库更新,需要使用PostgreSQL代替Oracle。目前需要进行灰度发布,Oracle 和 PostgreSQL 数据之间进行实时同步,当程序跑通,上线两个礼拜没有问题后将Oracle 清除。


问题6:传统ETL在数据权限管理上问题较多,从与技术无关的角度来说,至少公司尤其是外企的审计、安全部门,对数据的流向、权限是非常重视的。有一个良好的用户权限管理,非常有必要。


以上几个问题只是其中的冰山一角,当多个数据源数据获取不及时造成数据获取延迟,数据获取不准确,数据提供的格式错误时,就会给业务系统带来负担,造成业务投诉。这期间集中了大数据部门工作人员、机器、程序等各种问题。各种不满和委屈在这个数据通道的需求中,集中爆发。

四、新型数据融合平台做了哪些优化工作

1. 针对及时性问题


实时的数据供应链是数据驱动企业的命脉,如果流计算足够快的话,批处理和流处理将采用同一个技术框架,采集、集成、分发数据,这也是 DataPipeline 基于流计算框架设计面向未来数据融合平台的出发点。DataPipeline 基于流式数据处理的模式,实现在不间断的时间轴上,不间断地处理无限数据集。不仅能实时获取源端的数据变化,还能及时消费掉,这样可以保证数据的实时传输。

2. 针对多源异构数据同步问题


DataPipeline 在产品设计之初,就深刻意识到只有打通各种异构的数据源,才能真正实现企业级的数据融合。目前 DataPipeline 产品已经适配了市场上主流的关系型数据库和非关系型数据库,对象存储等。同时还可以快速实现云上数据平台、以及各种大数据平台的数据打通、以及文件系统同步等功能。

3. 针对开发和后期维护

DataPipeline继承了开源的优势,灵活、自主可控、可扩展,同时侧重于丰富用户所需的管理功能:数据管理,监控,运维,稳定性,容错性,以及故障排查的能力。


另外在用户管理权限方面,工作人员通过可视化运维看板(数据任务看板、速率进度信息、报表统计、日志审计),可以看到数据同步的状态、数据的来源与结构,及时了解数据的接入、交换和数据流向。当数据同步出现问题时,基于完善的纠错机制与系统状态监控,可第一时间找到数据源并进行处理。在提升工作效率的同时,降低了工作负荷。


如果步入2020年,你是否已经想好如何平稳渡过数字化转型的深水区?借助新型数据融合技术,也许会带你走出欲济无舟楫的尴尬境地。


部分内容来自公众号:AustinDatabases

用数据驱动决策与创新!