分享

数据中台——数据统一采集接入平台

 邸彦强 2024-03-25 发布于河北

1. 平台简介

数据中台——数据统一采集接入平台

数据统一采集接入平台,是面向用户大数据场景下,实时和离线数据采集、集成、管理的诉求,提供快速连接、高时效融合各种数据、灵活进行ETL数据开发的能力,帮助企业打破数据孤岛,大幅激活企业业务潜能,使数据成为生产力。

2. 平台架构

数据中台——数据统一采集接入平台

采用统一的数据接入模式,以标准化、模块化的方式进行多源异构数据资源的接入;提供采集全面、动态可配的数据接入机制,实现数据的获取分发、策略配置、任务配置、任务调度、数据加密、断点续传等数据接入功能;当接入时,同时维护数据资源目录,以及数据血缘信息。

3. 数据流程

数据中台——数据统一采集接入平台

平台提供一站式的数据迁移接入功能,内部数据通过专用数据通道进入统一接入平台,可在接入过程中做初步的清洗加工,并提供可视化的任务调度运行管理,并向数据智能管理和数据治理提供数据支撑。

4. 平台功能

4.1. 数据接入

考虑到数据的种类多样性、多源异构性,以及通道的多样复杂性,数据接入系统支持多源接入,支持对数据接入的插件化管理,可以分为关系型数据库、nosql数据库、分布式存储系统、流式处理系统、消息中间件系统、文本文件和文件系统等。

数据接入系统支持对数据的DML的抽取,抽取内容包括insert、update、delete语句的解析和内容抽取;支持对数据库DDL的抽取,抽取内容包括且不限于数据库表空间、用户、角色、视图、函数、索 引、约束等,对关系型数据库的全量采集和增量采集。

数据接入系统支持库到库、库到文件、文件到文件、文件到库的实时数据接入,包括MogoDB、Hive、HBase、XML、JSON等,在可视化配置界面中通过拖拉建立和异构系统的映射关系。

数据接入系统支持分布式存储,提供分布式文件共享存储、多副本功能,提供对分布式存储中的文件、文件夹进行权限控制,使得各系统只能访问授权的文件、文件夹。提供对分布式存储的可视化操作,包括对文件进行复制、粘贴、删除等。

数据接入系统支持流式处理系统,包括CQ、flink等,支持Flume 采集组件,支持消息中间件系统,如kafka、RabbitMQ、ActiveMQ 等。支持实时流式数据接入、全量离线数据接入、周期性批量数据接 入等多种数据接入方式。支持push被动接受和pull主动拉去两种方式。依据数据接入策略、传输策略对接入的结构化数据、半结构化数据、非结构化数据进行检验,并按接入输出分发策略进行输出存入原始库或分发给数据处理流程。

数据接入系统提供对多种文件格式的解析器,包括BCP、二进制、 XML、AVRO、JSON、CSV及自定义格式txt文件,提供对FTP/SFTP、 HTTP/HTTPS、Socket、WebService、SNMP 等标准协议的数据接收 能力。

数据接入系统支持多节点文件接力传输功能,实现多节点文件传输,支持对文件、文件夹、文件夹下的指定文件,自动感知变化文件传输功能,包括:HTML数据类型、EXCEL表格数据类型、PDF电 子文件数据类型、WORD文本文档数据类型、图像数据类型、音频 数据类型、视频数据类型、超媒体数据类型等。提供过期文件数据接入系统中间数据缓存功能,通过redis、hazelcast等实现分布式缓存提高数据的读取速率,保障数据的一致性。接入系统提供多通道数据传 输,利用分层隔离原则,采用三种数据传输通道:通用数据传输通道、高优先级数据传输通道、高吞吐量数据传输通道。

提供标准接口,针对特殊数据结构及类型做插件开发,进而支持多样化的数据来源。

4.2. 数据接入策略配置

数据接入系统策略配置模块针对多数据源系统以及结构化数据、半结构化数据、非结构化数据的不同数据类型特点,按照抽取、同步、 整合等数据处理步骤,提供一体化、可融合的数据适配解析器和数据转换功能,采用插件方式,支持二次开发,实现根据数据源情况的自适应数据解析和流程化处理。

数据接入的策略配置模块支持任意种类、任意数据源、任意目标库的数据抽取传输,常用数据源、目标库类型主要有关系型数据库、列簇数据库、并行分布式数据库、内存数据库、全文索引数据库等主流数据库,支持 FTP、XML、CSV、JSON、EXCEL、RCFILE 等常用文件类型,支持kafka、WebService等消息处理类。

数据接入的策略配置模块支持任意类型的抽取汇聚任务配置,主要包括异构数据库之间数据传输汇聚,不同类型、跨服务器的文件型数据传输,数据库和文件类、服务接口间相互传输等。策略配置模块实现基于数据源的异构数据自动解析,并能按照任务场景进行自定义 配置,实现智能化、可视化、组件式数据汇聚整合任务构建。

对于数据接入周期不同需求的数据接入,策略配置模块支持多样化的数据接入周期配置。根据数据接入实际需求的不同,策略配置模 块支持实时数据接入、周期数据接入、批量数据接入、增量数据接入、全量数据接入。对于实时更新的数据源,接入平台能够对数据源做实时的数据抽取,实现数据的周期性接入。对于实时性要求较低的数据源,可以通过用户自定义条件,对源数据做批量数据导出,实现用户自定义需求的批量接入。对于用户指定数据源,通过指定的导出字段或导出条件,对数据做周期性的增量导出,实现数据的增量接入。对于体量较小的数据源,通过用户配置,实现对源数据的全量数据导出,实现数据的一次性。

策略配置模块支持多样化输出配置。数据接入系统包含多样化的数据接入输出接口,可对的输出做多样化配置,这里包括本地存储系统、关系型数据库、nosql数据库、图数据库、分布式文件系统、分布式缓存系统、全文存储系统、实时计算流系统、消息中间件系统,同时支持消息的订阅分发。

4.3. 数据接入断点续传

数据接入系统支持数据传输过程中的断点续传。在数据总线传输过程中,当遇到网络故障、传输资源短缺、入原始库积压时,状态总线记录接入数据中断点及数据接入中断状态,控制总线在数据接入所 需网络、存储等资源可用时,从排队任务中重新启动断点续传任务,分配数据总线资源,从数据断点处接入后续数据,不需要从头开始数据传输,从而节约数据传输时间,提高数据接入效率。在数据分发过程中,数据订阅方没能正常接收订阅的数据时,接入系统支持对失败数据做断点重发。

4.4. 数据接入任务管理

数据接入系统支持多样化的任务管理方式,实现了多种场景的任务调度机制对数据接入的任务支持多角度的任务监功能,支持异常处理、重新调度等功能,及时解决存在问题,恢复数据传输,确保按时完成数据汇聚整合任务,保证大数据中心数据资源的准确性、完整性和一致性。

数据接入系统任务调度模块按照数据规模、更新频率、内容特征等数据属性特点,采用组建(插件)方式,分类实现不同场景下多元化数据抽取汇聚策略。对数据总量规模不大、增量有限的一般业务数 据,采用传统数据抽取汇聚模式,实现与当前在用数据抽取工具的集成或开发类似功能。对高总量、高增长量的数据资源,采用大数据传输汇聚模式,实现任务自动切片分发、断点续传、节点管理、调度节点故障切换等功能。对视频图像、音频、文档等大文件数据,提供 FTP、HTTP等文件传输方式,实现断点续传、多线程并行等功能。

数据接入系统任务调度模块具有多样化的任务调度机制,支持各类转换程序和交换任务的灵活定制,方便用户对数据抽取汇聚任务的流程控制和动态处理。支持按年、月、周、日、小时、分钟、秒定时调度,可选指定有效时间内调度。增量情况下支持实时调度,数据近 秒级同步。支持推(push)、拉(pull)的数据使用方式。数据增量捕捉支持按时间戳、数据快照、日志等方式。

数据接入系统任务调度模块提供可视化配置调度策略功能,实现数据接入,文件传输等任务通过运行菜单进行调度的功能。提供事件触发调度功能,包括就绪文件触发、变化日志触发、http、WebService 等接口触发(含URL调度),实现对满足条件的文件进行触发调度处理。提供文件分类调度功能,实现对满足条件的文件进行分类调度处 理。

数据接入系统任务调度模块提供流程调度组建,可视化配置任务的串行、并行等任务,实现多任务并行、串行、混合调度。提供任务代理调度功能,实现跨节点的任务之间的调度。提供操作系统的shell 脚本调度功能,实现通过可视化配置任务调用shell脚本的功能,对于数据的操作系统级的shell命令调用,shell脚本支持变量。提供SQL 调度功能,通过可视化配置任务实现对统一的标准SQL语句、存储 过程、SQL函数的调度功能。提供前后处理调度功能,通过可视化界面配置前后处理调度实现多个任务之间联动运行的功能,被调用的处理为任务、二次开发的处理类(统计接入数据行数)。

数据接入系统任务监控模块提供面向工具自身及所配置数据传输任务的监测器,监控调度节点运行状态及任务调度情况,监控执行节点运行状态及数据接入任务执行情况,及时采集各类监控对象的运行状态和重要性能数据,实现专用工具自身运行状态及相关数据接入任务的实时监控,实现异常情况的自动报警提醒。

数据接入系统任务监控模块监控所有控制、执行、管理状态(正 常、异常、运行、等待、终止、完成等),能够通过预设的运行异常指标,实现多种渠道的事件报警和提醒功能;任务监控模块常态化监控传输过程中的最小数据单元,建立数据接入更新时效监测机制。基于接入阀值分析源头数据接入传输是否正常,数据增量是否符合常态,及时发现并协调解决相关异常问题。任务监控模块同时监控自身的运行状态,为后期开展工具问题的日志分析、故障诊断、系统优化提供数据支持。

数据接入系统任务监控模块支持实时数据中断监控,实时监控接入数据的接入状态,如果中断时间超过预设阀值,则ALM处理。另外也支持服务器运行状态监控,包括JVM、task、CPU、内存、节点、主题、活跃分区、离线分区、请求度量指标等系统状态,定时监控服务器的运行情况,如果服务器运行出现异常,则ALM处理。

数据接入系统任务监控模块支持数据传输任务执行全过程和数据传输工具自身运行情况的日志实时采集,以及各个功能插件的运行曰志的实时记录。数据传输日志,主要包含传输任务执行起始时间、 结束时间、执行时长、传输总记录数、错误记录数、数据源、目标库、数据对象、数据要素类型等内容。当输入源为文件类型时,数据传输曰志包含采集文件名称、大小、读取记录数、处理状态、处理时间等内容。当输入源为数据库时,数据传输日志包含数据来源、操作时间、接入条数、执行时间等内容。

4.5. 接入数据清洗

数据清洗的任务是过滤那些不符合要求的数据,将过滤的结果够直观的展示给相应的主管部门,主管部门确认是否过滤掉或者修正之后再进行抽取。

不符合要求的数据主要有以下几类:

缺失的数据:主要是一些数据的信息确实,如物品名称、物品代号、业务系统中数据不能匹配等。在系统中用户可以自动逸过滤规则,把这一类数据过滤出来,输出到文本文件或Excel等格式文件提交给业务用户,业务用户在人工对数据修改核对后,再写入数据仓库,如果修改的规则是固定的,也可以由系统按照规则自动添加、修改数据。

错误的数据:错误的数据生产的原因是业务系统不够健全,或则人为误操作再接手输入后没有进行判断直接写入后台数据库造成的,这一类数据也要进行分类,不同的分类采取不同的处理方式,包括人工处理和自动处理,处理之后再更改数据库里的数据。

重复的数据:重复的数据特别是再维表中会常出现这种情况,系统可以按照规则将重复数据导出来,让用户确认并回写到数据库。

数据清洗是一个和业务用户反复沟通的过程,不可能再很短的时间内完成,只能不断的发现问题,可能解决问题。对于是否过滤,是否修正一般要求用户确认,对于过滤掉的数据要写入文本文件、Excel 文件、数据库表。数据清洗需要注意的是对于每个过程规则都要认证进行验证,并要用户确认。

4.6. 接入数据统计

数据接入系统接入统计模块支持对接入数据、分发数据进行多种维度的数据量统计。通过接入数据的接入统计,有助于对数据总资产总体的、宏观的、全面的掌握。接入统计模块主要从接入数据的数据量、接入数据文件数量、每个接入数据文件的接入时间、数据接入的 总耗时、数据来源、数据文件类型、分发数据的数据量、分发数据的文件数量、每个分发数据文件的分发时间、数据分发的总耗时、数据分发目的地等维度,对数据接入做接入数据的整体统计。数据接入系 统接入统计模块支持接入统计功能插件式开发,可自定义配置数据接入的统计项。

4.7. 接入数据对账

数据对账是数据提供方和数据接收方在数据传输结束后进行完整性、一致性、正确性检验的过程,提供数据接入效果评估能力。包括以下功能:

对于实时数据接入,支持接入数据的关键信息、唯一性信息的日志存储和查询统计。对于可靠性、一致性要求高的数据,提供数据同步检查和校验功能,并输出详细日志。支持一定时间范围的接入状态统计,包括对数据更新状态、联通状态、数据量、校验等情况的统计。

对于批量数据接入,支持提供周期性接入信息查询和统计,支持格式异常数据查询和统计。支持系统、设备无上报数据等情况的ALM策略设置。

数据对账发现异常问题时通过短信、邮件等方式通知管理员及时处理。数据对账支持对账功能的插件式开发,可根据特殊需求对数据对账功能进行扩充,适应数据接入多样化的数据对账功能。

4.8. 接入数据质量

数据接入系统的数据质量模块对接入数据做接入维度的数据质量检测评估。数据接入系统对接入数据解密异常、解压异常的数据作为问题数据记录日志。数据接入系统对接入数据的数据对账异常记录在接入数据问题报告。接入数据在完成数据对账后生成数据接入质量 报告,对数据接入过程做整体的质量评估检测。数据接入系统的问题数据记录日志、接入数据问题报告对数据接入异常的数据做详细的信息记录,支持用户手动查询问题数据。

在数据接入过程中配置数据质量检查逻辑规则,将干净的数据装入目标中,将判断的问题的数据路由到数据表或者数据文件中,支持将成功、失败信息反馈记录,若执行多次后交换成功,记录交换次数。

数据接入系统支持对接入系统的运行状态的监控,支持向运维监控系统报送数据接入系统的JVM、task、CPU、内存、节点、主题、 活跃分区、离线分区、请求度量指标等系统状态指标数据。

另外数据中台对数据质量管理是平台建设中必不可少的重要组成部分,良好的数据质量挂管理工作可以保证平台数据的正确性、完整性、相关性等质量指标。缺乏数据质量管理将造成平台数据质量失去控制、质量低下,用户对平台数据不认可、对数据缺少信任、增加平台的推广难度、降低平台应用服务质量,以及增加平台的建设和维护成本等后果。

数据质量管理的目标包含两方面,一是对源系统层的数据质量有个较全面的了解,比较具体的反映数据平台涉及的各源业务系统的数据质量;二是防范数据平台内部数据流程过程发生的错误,提高数据平台中的数据质量。

数据质量管理并不仅是在生产阶段才实施,在数据中台建设过程中,数据质量检查需要从源数据分析开始,自始至终贯串全过程。在源数据分析阶段,通过数据剖析(Data Profiling)可以分析源系统数据质量问题;在开发测试阶段,通过对数据加载的各个阶段设置检查,可以验证上游系统接口的完整性以及模型加工的正确性;在投产后的生产环境,通过设置代码完整性、总分核对等检查,监控平台内的数据质量。

数据中台实施数据质量管理的目的在于,提高数据平台的加工数据质量,监控上游系统数据质量,协助客户建立企业级数据质量管理环境。

数据质量管理主要包含:

1)数据质量检查汇总:可以按照检查阶段、检查日期、检查 类型、错误级别进行数据质量检查结果的汇总。

2)我关注的检查任务:列出我关注的检查任务的执行情况。

3)质量日志浏览:可以浏览数据质量的登记日志。

4)质量检查结果和错误明细:可以浏览检查任务的执行情况, 包括汇总数据和错误明细数据。

5)错误明细下载:用户可以直接用数据管理平台下载数据质 量检查结果明细。

6)查询主要实现工具是Datawave数据管理平台,查询功能主 要是可以在数据质量检查的任务、错误明细等信息中进行查 询,查询主要功能与元数据的基本一致。

7)数据质量管理主要由数据质量管理员来完成,管理的主要功 能主要包括:

ü 质量检查规则的增删改:可以维护质量检查规则,可以修改 检查规则的SQL模板。

ü 检查任务的增删改:可以维护质量检查任务,可以批量上传 质量检查任务。

质量日志的增删改:可以维护数据质量日志。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多