《企业数字化转型大数据湖项目建设和运营综合解决方案.docx》由会员分享,可在线阅读,更多相关《企业数字化转型大数据湖项目建设和运营综合解决方案.docx(145页珍藏版)》请在课桌文档上搜索。
1、企业大数据湖项目建设和运营综合解决方案1 .项目综述LI项目背景必要性:预计未来十年,数据将以每年约40%的速度增长,更重要的是,数据中囊括了绝大多数企业业务的数据需求。在这种环境下,通过使用数据分析提高竞争力,企业需要有能力满足“信息一代”的需求,这对企业来说至关重要。从帮助预测购买行为到驱动创新项目以增强客户服务或提高生产力,数据湖能整理、存储并分析海量数据,拥有变革业务的巨大能量。分析能力正从企业的“愿望清单”中移除,转而成为必需。数据湖,为分析提供最大的灵活度。,企业产生的数据比以往任何时候都更多。这种情况为企业带来了独特的问题:需要装备自己分析这些数据,而不仅仅是存储。数据湖与Had
2、oop平台一道,提供了增加数据价值所需的自动化和透明度。1 .运营复杂度:随着基础设施规模的扩大,数据需求不断加深。基础设施的瓶颈对企业业务数据的存储和以此为基础建立的业务的拓展带来的制约。对于企业IT运维人员、业务系统开发人员、数据管理人员的工作量也是逐年增加,从而导致其数据需求就很有可能超过管理能力。传统的业务数据资源并不总是池化的,这样就为单一管理者可应对的存储空间造成了限制,同样,在构建更灵活的通用存储资源(例如数据湖)方面,管理者也面临难题。整理制作郎丰利1519o2 .运营成本:通过减少运营成本,提升企业效益。但业务对IT的需求却在持续增长时,便产生了矛盾。全职人工也会带来管理IT
3、资源的运营成本上升。为了有效应对这些需求,企业或者需要更多人力资源,或者需要投资额外的第三方,支持监控、管理、部署和改善系统。与通过增加员工人数相比,第二种方法扩展了一个数量级甚至更多。整理制作郎丰利。3 .生产压力:现有的分析应用正为业务生产系统带来压力。实时分析可能是耗费大量资源的,无论是想通过视频分析,从大量高清视频流中获得洞察,还是研究社交内容瀑布流。这些流程是需要专用资源的,这样,尝试使用生产系统的用户才不会损失性能。数据湖是确保实时分析能够以最佳性能运行的关键。4 .多协议分析:企业需要数据湖,一个最终的关键信号是,数据科学家正在大量不同的Hadoop发行版上运行应用,并且,需要将
4、他们的数据与Hadoop挂钩。未来,随着各种各样的分析实验不断深入,业务线需要IT有能力支持多种协议。企业也需要以数据湖策略为重要依据,进行整体的合理规划。5 .打破数据孤岛:长期以来,数据孤岛一直是存储应用的标准,但是这些系统是运营效率低下的,并且会限制从相关数据中获得更佳洞察的能力。节约成本也是一大驱动力。除了管理复杂性,孤岛系统还需要多种授权,服务器和其他费用,而数据湖可以经济高效的方式,由单一基础设施提供支持。随着分析变得更快速、更复杂,组织也需要以同样的方式进化,以探索所有可能性。数据不再单单是数据本身,借助所有组织化数据构建的完整图景。6 .利用实时分析:数据收集和分析正变得越来越
5、快。像信用卡欺诈预警分析、股票分析这样的应用场景,需要在动作发生后数秒内就实现。不过,实时分析并不都是需要100%立刻马上就实现的。一些数据(如月销售数据、季度财务数据或年度员工表现数据)只需以特定的时间间隔存储并分析一。组织需要有能力构建1.2项目目标平台层通过对各业务板块各种数据的采集、整理、汇聚,建立一个基于“互联网+”、云计算技术和人工智能技术的数据湖,实现各业务板块的生产监视、智能设备状态监测、智能故障诊断、智能运行保障、生产数据分析等功能,打造涵盖智慧型生产、经营、发展、党建等全领域的综合平台。业务层公司数据湖融合实时数据库、关系数据库,实现数据资产管理,提供大数据应用和数据分析计
6、算模型。其中,实时数据是主要的数据形式,实时数据库集群承担高通量数据接入的任务同时,为总部实时业务应用系统提供高实时性的数据查询、计算、组态数据源服务,同时完成数据的标准化、格式化、清洗和整理,将整齐的数据通过Kafka或其他适配器等方式输出到Hadoop数据湖,并负责提供从Hadoop平台到实时库等其他所需数据应用的输入输出组件。数据集中、挖掘,对实现与下属单位互联互通、智能处理、智能协同的目标,使用标准化、自动化、数字化、信息化、智能化等手段,打造涵盖智慧型生产、经营、发展、党建等全领域的综合平台,形成具有“自分析、自诊断、自管理、自趋优、自恢复、自学习、自提升”为特征的智慧企业生态系统。
7、展示层随着数据湖数据存储、分析、挖掘的深入应用,将极大的激发各部门、各层级对于业务数据的分析和探索,在此之上的数据报表展示需求也将呈现复杂性、综合性、多终端性、个性化等特点。本平台主要目标是建立一个快速的可视化报表平台,无缝化对接数据湖,提供丰富的报表展示功能,面对各层次人员提供对应的数据报表及分析服务。基于此平台,我们不仅可以在报表开发过程中,加快开发速度,提高数据应用的及时性,还可以在业务需求变更、调整后,大大的降低维护难度,实现可视化做到随需应变。最终在深入完善复杂报表、打印导出、图形化分析、移动决策、大屏监控、自助分析等多个可视化分析领域的支撑。整理制作郎丰利1519oL3项目建设路线
8、第一期:建设企业数据湖,梳理企业应用系统内部的业务数据类型,数据量;将结构化、非结构化数据打标签导入数据湖中心湖中,构建视频池、文本池和应用池分类。对某些应用场景构建Bl报表分析。第二期:建立主数据管理和数仓,ETL规范和流程,数据安全管理,数据可视化管理,数据监控的管理。梳理数据湖使用人员的角色和权限,对数据湖进行基于业务需求场景的多租户管理。根据业务的微服务化,逐步构建企业大数据微服务平台,细粒度的平台资源管理。第三期:数据的深化应用,一体化管控数据标准和数据治理,深化主数据消费和应用。逐步将应用的数据来源迁移至数据湖中,形成数据应用平台、数据挖掘和Bl报表平台,人工智能和机器学习平台。2
9、.需求分析2.1 功能需求数据湖的应用、管控、展示为一体,提供标准的服务和数据接口和报表展现方式。数据湖数据采用高效,可靠的存储架构。企业业务数据制订迁移方案,将ERP系统、数据采集系统、OA系统、视频监控系统、云商系统中存储的核心数据,整体迁移至数据湖,非弹性资源实行本地化部署,对于弹性计算功能,需与算法数据湖进行协同计算。以实现核心数据可控,消除安全问题和潜在未知风险。支持可视化建模,支持鼠标拖拽方式进行人工智能算法建模。包括数据预处理、特征工程、算法模型、模型评估和部署等功能支持快销业务领域的预测预警等多种类型的算法应用,包括逻辑回归、K近邻、随机森林、朴素贝叶斯、K均值聚类、线性回归、
10、GBDT二分类、GBDT回归等算法模型,也支持深度学习等人工智能训练模型。展示层通过统一的商业Bl报表组件,多维度,动态的展示各业务系统的运行状况,资源使用情况等。并支撑周期性或临时性生成各业务状况,决策数据展示,故障分析挖掘等业务场景。海文件索引存储分析 实时获取FTPHTP影住/g胸其他文件XX数据湖架构图文件中心:主要用于存储各种格式文件,包括影像文件,视频音频文件,PDF,OffiCe文件等类型文件,提供文件级别的全文检索,文件发布,文件共享,文件提取等功能。提供文件权限管理,版本管理,历史版本恢复等管理功能。文件中心中文件内容可以经由ETL过程与日志中心,数据中心交换融合数据,共同参
11、与数据处理,数据挖掘,机器学习,影像分析等工作。日志中心:收集各类日志数据,物联数据等实时数据,由流处理引擎实时处理数据,确保在第一时间分析处理数据,做到实时监控,实时告警。经处理的实时数据可与文件中心,数据中心的数据融合,共同参与数据分析等工作。结构化数据中心:实时(或批量)获取数据库或其他介质中的架构化数据,借助HadooP/Spark等强大的处理能力,高效处理各类数据。有效结合文件中心,日志中心中的数据共同参与数据分析,数据挖掘。支持百亿级数据CUbe,做到海量数据亚秒级多维度查询。标准SQL输出接口,支持不断升级的需求以及二次开发。2.1.1统一数据接入数据湖接口统一接口示意图数据接入
12、原则1、以应用驱动为主,优先建设高价值数字挛生项目;2、入湖数据必须有数据管理部认证,发布对应数据资产标准,匹配对应数据责任人;3、数据建模原则以原始数据、清洗整合数据、三范式结构、服务化宽表逐级向上规范;4、整体平台需符合高可用、平行扩容原则,符合业务3-5年的数据规划。数据实时同步,支持绝大多数的数据库实时同步需求。支持跨广域网的数据同步,支持接收器集群。建设统一的,标准的,易于复制和维护的数据实时同步平台,同时完成数据实时同步的技术规范及策略。实现数据同步监控系统,构建数据的更新情况有一个持续的,可靠的实时监控系统。完成一次性数据快速导入与增量数据导入的融合机制一一涓流复制。通过Full
13、DUmP模块实现数据入库的加密,基于DataHandle提供HiVeSQL接口,同时完成数据出库的解密。通过APPIiCationAdaPter的定制实现数据访问权限的控制2.1.2数据迁移将对于频繁读写数据的业务系统,ERP系统、数据采集系统、OA系统、视频监控系统、云商系统保留原数据库的方案。业务数据同步至数据湖,并在并轨运行过程中,需定期验证本地数据湖中与业务系统数据的一致性。接收实时增量数据,按照预定架构存储数据至本地数据湖。生产实时数据实时接入、可靠传输至公司数据库集群中,数据接入量约为IIoTB/天,历史数据40000TB。7Aur外部篇源中心湖区(DataLake)HDFSHlV
14、ESparkSQL数据迁移逻辑架构图数据湖作业分为非弹性和弹性两类,对于非弹性作业在本地数据湖进行运算,对于消耗资源大且需弹性计算作业,采用与企业云进行协同计算,在企业云数据湖中不保存数据,待作业计算完成后将过程和结果数据回传至本地数据湖进行存储。接口服务支持发布订阅模式,支持跨数据湖、跨系统的调用,支持HDFS、HiveHBaSe等系统。a)接口类型批量数据封装将大批量数据按一定条件抽取出来封装成数据资源。批量数据封装必须通过系统进行,不能进行手工操作。数据请求接口封装通过restful接口方式将数据封装成访问接口,使访问方通过远程调用对数据进行访问。b)接口安全配置管理对共享数据的内容和共
15、享接口规则进行配置,包括基础数据配置、共享服务配置、共享权限和共享配置下发。a)基础数据配置能够对数据共享功能域中使用到的基础数据进行配置,包括使用共享数据系统的配置、共享数据实体的数据结构和语义描述、共享方式等。b)共享服务配置数据服务定义、数据服务目录、数据服务参数配置(如:目标系统、共享方式、数据承载方式、访问频率、访问允许时段)等。C)共享权限配置对允许使用共享服务的目标系统进行权限配置,支持共享服务内部具体数据实体和属性的权限配置。Ci)共享配置下发共享数据的内容和共享接口规则下发至各相关系统。数据共享过程对各数据共享过程进行监控、异常处理、日志管理,并对数据共享相关的数据提供查询统
16、计和分析功能。a)表数据共享目标系统是应用层分析系统,直接开放表访问权限,由目标系统通过ETL进行数据抽取。b)数据查询目标系统是应用层分析系统,由目标系统直接通过调用数据湖提供的数据查询服务,完成数据查询。C)数据订阅目标系统是应用层分析系统,目标系统提出数据订阅需求,由数据湖提供数据订阅服务。2.1.3数据范围与ETL数据来源数据类型(待梳理)ERP系统会计核算、财务管理、生产控制管理、物流管理、采购管理、分销管理、库存控制、人力资源管理数据采集系统历史秒级数据、实时秒级数据、统计数据:一分钟数据、十分钟数据、日数据视频监控系统故障数据、状态数据、故障日志(B文件、F文件、W文件等)OA系
17、统服务工单、服务请求工单、工作任务书(技改)、在建阶段工单、审批计划、档案、知识库、遗留问题ZX商系统日志、交易信息ETL需求:DELT支持从ERP系统、数据采集系统、OA系统、视频监控系统、云商系统等数据源数据的抽取、传输与加载。ERP.OA为OraCle;数据采集系统为SQLSerVer;云商系统为MySql数据库。视频监控系统为非关系型实时数据。郎丰利整理制作。2)支持流式的导入方式。郎丰利整理制作。3)支持各种数据抽取与加载接口,如专用数据库驱动接口、JDBC、ODBC,以及WebSerViCe接口等。郎丰利整理制作。4)ETL设计支持可视化的复杂任务控制流与数据流,支持在数据抽取、清
18、洗和转换中实现自定义处理流程与规则;5)支持多种数据清洗、转换任务组件,如查找、模糊查找、排序、聚合、合并、分组、条件分拆、抽样等。郎丰利整理制作。6)支持ETL过程的异常数据处理,实现常见故障数据的修复或剔除或对故障数据抛出保留,以备系统管理员检查处理。7)ETL执行过程具备完整的日志管理和数据审计功能,并有相关监控预警机制,保证ETL正常进行;郎丰利整理制作。2.1.4报表平台服务数据采集安全数据采集I其他数据采集(总体功能架构图)综合展示的总体功能架构包括数据采集管理、信息数据管理、可视化管理三个层次。统一数据仓库建立统一数据仓库,执行统一数据接口标准,数据湖各系统与综合展示数据湖的数据
19、通讯和同步。展示数据集中管理展示数据统一转换、统一存储、统一处理、统一调用。丰富展现方式能够灵活选择多种展现方式,包括3D圆柱图、半圆仪表、水平仪表、垂直仪表、垂直进度条、圆形进度条、水平进度条、堆积柱图、弧形进度条、扇形进度条、温度计仪表、汽泡图、雷达图等。深度关联挖掘各种展示指标,支持层层深入挖掘,从宏观到微观、从整体到个体、从实时到中长期趋势。可维护性能够根据IT运营服务本身的管理需求,快速、灵活地调整定制展现方式、展现内容。展示环境无关性数据湖展示不受大屏硬件、分辨率、尺寸大小、拼接方式的限制。2.1.5 安全管理大数据安全框架整体以及基本组件如下图所示,图中各组件为数据安全构架基本构
20、成,后续根据需求会进行增删以及调增,橙色部分为本期主要阶段性实现:数据安全从最初的数据接入到最终的数据展现的安全问题。中间包括数据源、数据收集、消息系统、实时处理、存储、数据库等各部分的数据安全以及整条线的安全。整理制作郎丰利1519o身份认证和访问控制通过身份认证确保访问数据湖中的数据、资源和服务的用户是安全的,本次使用大数据技术支持身份认证,并能够实现快速建立密钥分发中心等。用户通过身份认证后可获得访问数据湖的资格,同时为进一步控制用户对资源的访问权限,通过授权机制来管理不同用户对不同资源的访问许可。所有组件都在一定程度上支持对访问的控制,使用访问控制模型,通过对细粒度的控制,控制到被访问
21、对象的访问级别。在制定访问控制策略时,依据合规要求,结合敏感数据保护策略、数据使用场景等针对不同数据、不同业务需求制定相应的访问限制规则。数据保护数据保护技术通过对数据利用脱敏、失真、匿名化限制发布等技术处理后,使处理后的数据到达安全交易、开放共享的目的。针对脱敏后的数据,可放宽复杂的访问控制限制,降低数据泄露带来的风险和复杂控制的成本。网络分区安全网络划分独立的安全域,控制域其他区域以及系统的访问控制,控制网络层数据流向,控制大数据网络与非内部网络的链接。保障客户端访问数据湖的连接和数据湖中服务器节点之间的网络通信安全。节点之间及客户端与服务器之间的通信如有需要,可进行加密。对网络通信进行加
22、密设置,使用网络安全设备隔离客户端与数据湖的直接访问。网络安全设备部署在数据湖和企业用户网络域之间,提供访问控制、策略管理,三区与四区间使用较强的访问控制措施,从而保护数据湖不会受到非法访问。基础安全审计和监控数据湖的一切活动并生成告警信息用来分析识别安全事件。安全事故和事件监控(SIEM)系统负责对数据湖中任何可疑的活动进行收集,监控,分析和生成各种安全报告。被监控的事件:用户登录和身份验证事件、授权错误、敏感数据操作、通过各种客户端的访问以及异常事件。2.1.6 数据治理根据业务要求、合规性、安全策略及数据的敏感性,数据基本分类简要定义为业务系统数据以及配置数据。从数据特性层面对数据进行标
23、记(包括分析类型、处理方式、数据时效性数据类型、数据格式、数据源等维度),脉络化数据湖内外数据流向,包括数据被使用,被谁使用,数据是如何存储的等等,基于此对数据的管理和数据访问控制制定相应的策略。掌握敏感数据在数据湖中存在位置,降低数据暴露于风险下的概率。掌握敏感数据在数据湖中分布情况,自动地增量式地发现找到敏感数据,监控其使用情况,做到全面保护数据安全。建立整个的主数据,并保证主数据对于各个业务系统的准确性、唯一性。2. 2非功能需求2.1.1 运维保障需求数据湖具有友好的系统界面供运维保障人员使用,运维保障人员一般情况下通过系统界面对系统进行维护。维护数据湖需要包含并不限于以下内容:1、
24、程序每一步操作需要记录日志,在程序出现错误之后,需要提供基础的错误分析;2、 需要能够通过系统界面监控服务程序的运行状态;3、 数据处理过程需要进行记录,以及处理的问题数据和正常数据的条数;4、 针对kafka等流式数据处理服务进行监控和分析;5、 针对数据湖各组件的服务状态进行监控和告警;6、 针对服务器硬件层面、系统层面、hadoop集群层面进行监控,并根据故障级别以短信和邮件等形式发出告警信息。222可用性需求系统具备长期稳定工作的能力,所有选用产品均符合我国或国际上的质量及可靠性标准。在不同环境及人员操作情况下,均能处于平衡稳定状态。提供高可靠的分布式文件系统:1)基于业内广泛使用的高
25、效分布式存储架构,可存储任意容量,任意数据类型的数据;2)没有单点故障,提供成熟的高可用性方案,并可以直接图形化配置;3)支持分层,多种存储介质的异构分布式存储架构,有效利用内存、SSD等存储介质的性能优势以及传统磁盘的容量成本优势;4)支持多种访问模式,包括NFS,HTTP,原生APl等;5)提供完善的图形化文件管理工具,具有查看、编辑、删除等功能;6)提供快照功能,防止误删除文件;7)支持多租户情况下数据管理;8)支持KUdU存储引擎;9)支持impala引擎对kudu访问;10)提供高可靠的分布式关系型存储Kudu;11)基于业内广泛使用的分布式关系型存储,可按关系型二维表存储数据;12
26、)支持关系型数据的增删改查功能,并能秒级进行大数据操作;13)支持多种访问模式,包含原生APl等;14) 支持与MapReduceSpark和Impala等的集成;15) 支持高并发数据访问和高吞吐。223可靠性需求系统具备按要求进行备份的能力,并提供相应手段。1、健壮性要求:接收异常或其他错误数据,数据湖具有强健壮性,不会导致系统出错甚至崩溃,能够满足业务应用。2、安全性要求:通过对用户和数据的权限设定,确保用户只能访问其所属用户类型已被授权访问的那些功能或数据。3、可扩充性要求:当现有数据湖资源需进行扩充时,数据湖能够满足动态扩容的需求。1 .2.4性能需求1、历史业务系统和配置数据从应用
27、系统数据湖迁移至本地化数据湖过程,性能满足要求。2、实时数据接收,数据无丢失,查询性能满足要求。3、目前运行在应用系统中的算法迁移至本地数据湖,且算法在数据湖中,性能满足业务应用要求。备注:在本地化数据湖中算法性能不低于当前在应用系统中算法运行性能。2 .3需求总结综上述,通过此技术架构,可以在大数据基础数据湖建设方面实现以下功能:1、统一数仓:建设成熟稳定、性能先进、灵活架构、便捷易用的大数据存储与计算数据湖,实现企业内部统一汇聚、统一标准的数据仓库。2、统一管理:建设数据权限、元数据管理、数据生命周期管控能力。3、全量数量:建设数据全量存储、全量计算的大数据基础数据湖,实现快速对接系统数据
28、,提供批量数据采集与处理能力。4、数据汇集:建设多源异构数据整合接入能力。5、数据计算:建设海量数据混合计算处理能力(批量处理和实时流处理),以及丰富多样的数据挖掘算法工具。6、数据展现:多种维度、多种展现方式、多种接入方式的灵活的,可定制化的,可拖拽的报表平台。7、数据湖扩展:建设具有良好兼容性与扩展性的基础数据湖,以较好地支撑后续大数据应用系统的建设。8、图片及视频流数据保存至数据湖中,并支持快速检索。3 .整体解决方案3.1 数据湖整体方案3.1.1 硬件部署方式支撑X86架构服务器部署。网络使用以太网络构造,要求支持IP网络即可,底层存储无专用的存储体系结构要求,单数据节点无存储可靠性
29、要求。网络部署拓扑参考下图:JMi机架2大数据平台硬件配置如下:数量CPU内存操作系统硬盘容量管理节点:2台2*E5-2620v4128GCentOSLinuxSAS600GB,12Gb,5块主板自带支持RAIDO、RAID1;主机总线适配器;主板集成2口千兆网卡以及2口万兆网卡;工作节点:13台2*E5-2620v4256GCentOSLinuxSAS600GB,12Gb,2块;SATA4TB,12Gb,8块;主板自带支持RAIDo、RAID1;主机总线适配器;主板集成2口千兆网卡以及2口万兆网卡;3.1.2基于CDH的数据湖软件部署本次XX项目底层数据湖是由公司所发行的HadOoP企业版,
30、简称CDH。该版本作为业界最领先的企业级数据中心基础软件,Enterprise除了包含业界最流行的基于开源HadoOP及其生态组件构建的CDH核心,还包含了很多为支撑企业级业务的高级管理特性。借助于EnterPriSe的整体解决方案,企业可以专注于自己的业务能力。1、结构概述基于HadOOP的系统数据湖中,底层为统一分布式存储HDFS,其上包含了分布式内存分析引擎SPARK,分布式NOSQL数据库HBaSe,以及支持多租户的分布式计算集群。在HadoOP及相当架构系统数据湖之上,根据实际外部合作以及内部应用提供多相户服务以及资源与数据访问权限控制。如下图所示:FTP CLl文件接口 命令行接口
31、应用统一管理flume权限控制消息队列sqoopFTPOver HDFSHDFS分布式文田享多凝权限认证LDAP企业用户 活动目录Kerberos认证集群统一管理Hade)OP数据湖架构图数据湖由分布式资源管理框架实时调度资源、管理计算分析集群,为各个租户以及各个应用提供资源调度管理以及高效的分析挖掘能力,同时结合LDAP与KerberoS提供完备的权限管理控制。3.1.3基本组件云端部署ClouderaDirector敌据工程师数据发现和分析教据查询批量SPARK,HIVE, PIG流式SQL搜索建模快迷查询灵活部署SMRKIMMLAS(ARKHBASE庆一数据服分资源管理-YARN安全-S
32、ENTRY数据集成和存储文件系统列式存储NoSQLHDFSKUDUHBASE数据接入-SQOOB FLUME, KAFKA0 On-Premises Appliances Engineered SystemsPublic Cloud PrivateCIoud Hybrid CloudC6UDERA NAV-GAToRCL。UDERA MANAGER基本组件结构图结合XX使用的主要组件和使用场景,从数据接入到数据存储和数据计算,各组件的应用场景和功能整体介绍下如下:1) HDFS:HadoOP分布式文件系统,主要以大文件存储为主,吞吐比较高,主要存储相关的视频文件和常规非实时、不修改的结构化数据
33、,同时可以作为历史数据存储,适合数据分析和数据挖掘存储。2) Kudu:结构化数据存储,可以实时接入设备端数据,同时接入业务系统需要经常修改的业务交易数据,适合结构化数据数据分析和数据挖掘。3) HBase:NOSQL数据库,可以实时接入设备端数据,适合做固定模式的数据明细查询;同时适合存储如文件、音频等海量的小文件。4) YARN:资源管理和调度框架,主要的批处理和计算引擎的资源调度工具。5) MapReduce:分布式批处理引擎,主要适合海量数据的批处理作业。6) Zookeeper:分布式的服务框架,主要用来解决分布式集群中应用系统的一致性问题,它能提供基于类似于文件系统的目录节点树方式
34、的数据存储,ZookeePer作用主要是用来维护和监控存储的数据的状态变化,通过监控这些数据状态的变化,从而达到基于数据的集群管理。7) Hive:SQLOnHadOOP的最常用工具,主要适合客户用SQL来进行数据的批量处理,底层会借助MaPRedUCe或SPark。8) Impala:MPPOnHadOOP的最常用工具,主要适合客户用SQL进行交互式查询和即席查询相关的操作,支持JDBC/ODBa和主流Bl工具已经认证集成。9) ES:全文检索工具,主要用于客户针对文本内容进行数据的搜索,如WOrd,PDF等。10) Spark:主流的HadOoP数据处理引擎,以内存计算为主。通过的高效数据
35、计算引擎,支持批处理、流式计算和数据挖掘等不同的计算方式,流处理有引擎SParkStreaming,数据挖掘有SparkMLLib,数据批处理有SParkSQL和SCaIa开发。后续应用的流式计算和数据挖掘、机器学习和数据处理都需要这个组件。H)Sqoop:ETL工具,主要用来集成业务交易系统数据如OracIeDB2MySql等数据源数据定时同步到HadooP数据湖上。12)Kafka:消息中间件,可以传输不同的数据,目前主要可以用来传输设备端如风电等实时数据,进行数据的缓冲和数据的多目标分发。13)Flume:一个可以收集例如日志、事件等数据资源,并将这些数量庞大的数据从各项数据资源中集中起
36、来存储的工具/服务。FIUnle具有高可用,分布式,配置工具,其设计的原理也是基于将数据流,如日志数据从各种网站服务器上汇集起来存储到HDFS,HBaSe等集中存储器中。具体版本及特性的详细介绍,请参见第四章。3.1. 3数据ETL及数据接口开发方案3.1. 3.1业务系统数据迁移开发方案业务系统数据迁移需要将实时数据库中的历史数据与实时数据整齐地通过Ka珠a消息队列输出到XX集控中心HadoOP数据湖的KUdU和HBaSe中进行存储。实时数据库中配套的输出适配器将缓冲区的数据解析并生成指定格式的数据,实时向HadOoP数据湖中的Kafka集群推送,存入Kaf*ka的TOPiC中,每一个业务系
37、统对应一个采集协议,同一采集协议的数据放在一个ToPiC里。业务系统历史数据中,结构化数据通过SqoOP脚本进行批量的导入,在导入过程中进行面向业务的数据清洗、转换、加载到KUdU和HbaSe中去。数据按照业务系统进行分类,进行标签的规则制定和数据标签的开发。业务系统历史数据中,非结构化数据通过flume脚本进行批量的导入,在导入过程中进行面向业务的数据清洗、转换、加载到KUdU和HbaSe中去。数据按照业务系统进行分类,进行标签的规则制定和数据标签的开发。ERP系统、数据采集系统、OA系统、视频监控系统、云商系统进入数据湖存储。日志中心湖区和文件中心湖区往往数据量非常大,且价值密度较低。对于
38、这类数据不要求强一致性,故而可不进行数据审计和定期数据一致性校验。日志中心湖区和文件中心湖区多以半/非结构化数据为主,需要进行关联分析的,进行模型换行,并将其导入到中心湖的HDFS/HIVEo云商数据和用户网页行为分析的数据,数据产生并发度高,数据流量大,需要用Ka珠a集群进行数据承接,承接过程中需要进行一定比例的数据压缩,之后直接存储到HDFS中,通过HlVE外部表的形式进行访问,以降低集群负载。对于文件中心的图片文件,推荐进行图片识别,通过Web前台、数据API服务,进行图片数据的上传及查询,图片需要有唯一ID作为标示,确保可检索。海量图片数据以ID为rowkey,储存于HbaSe平台,提
39、供快速储存及查询能力。数据资产上有以下方面的构建:1、统一索引描述非结构数据,方便数据检索分析工2、增加维护及更新时间作为对象描述字段(图片类型、像素大小、尺寸规格)。非对象方式及数字化属性编目(全文文本、图像、声音、影视、超媒体等信息),自定义元数据。3、不同类型的数据可以形成了关联并处理非结构化数据。HadOoP数据湖,通过相关组件将数据存储在HadoOP集群的HDFS和HBaSe中。通过上层分析和处理引擎HiVe、ImPaIa、Spark对底层数据进行分析处理,并提供统一的数据访问接口非弹性计算业务迁移:包括预警常规模型计算和预警可视化服务。服务所需环境:CentOS7.0、HbaseH
40、iveo3. L3.2数据存储开发方案Kafka的TOPiC中的数据通过定制开发的SParkStreaming程序进行清洗、去重等操作并存入数据湖。数据采用KUdU+HBase的方式存储,HBaSe存全量数据,KUdU存计算点数据、测点数据。数据仓库的存储,根据业务需求,采用hive+kudu的方式进行开发。报表的数据存储,根据实时性和变化量,采用hive+mysql的方式进行存储,开发相应的关系映射和连接组件。3.1. 3.3Hbase+ES近实时(NRT)查询开发方案HbaSe适用于大表的存储,通过单一的RowKey查询虽然能快速查询,但是对于复杂查询,尤其分页、查询总数等,实现方案浪费计
41、算资源,所以可以针对hbase数据创建二级索引(HbaseSecondaryIndexing),供复杂查询使用。而ES作为一个高性能,采用Java5开发,基于LUCene(同时对其进行了扩展)的全文搜索服务器,提供了比LUCene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎。Key-ValueStoreIndeXer是HbaSe到ES生成索引的中间工具。在CDH5中的Key-VaIUeStoreIndeXer使用的是LiIyHBaseNRTIndeXer服务。LilyHBaSeIndeXer是一款灵活的、可扩
42、展的、高容错的、事务性的,并且近实时的处理HBaSe列索引数据的分布式服务软件。LilyHBaseIndeXer使用ESCloUd来存储HBaSe的索引数据,当HBaSe执行写入、更新或删除操作时,IndeXer通过HBaSe的replication功能来把这些操作抽象成一系列的EVent事件,并用来保证写入ES中的HBaSe索引数据的一致性。并且IndeXer支持用户自定义的抽取,转换规则来索引HBaSe列数据。ES搜索结果会包含用户自定义的ColUnInfanIiIy:qualifier字段结果,这样应用程序就可以直接访问HBaSe的列数据。而且IndeXer索引和搜索不会影响HBaSe运
43、行的稳定性和HBaSe数据写入的吞吐量,因为索引和搜索过程是完全分开并且异步的。hbase负责海量数据存储;ES负责构建索引和提供对外查询;IndeXer负责提供hbase到ES的索引构建。Client条件豆询Client诋回总合条件TJRowKey桶BRoeKeyS询返回数照一Solr Instance数据使用流程图Solr Instance数据湖通过标准接口的方式为外部系统提供数据服务,根据不同业务系统的需要进行定制化的接口开发。根据业务的不同数据封装分成两种方式,一种是对批量的数据进行封装,将封装后的数据发布到共享区上,供数据应用和外围系统获取,这种方式主要针对访问方需要海量数据的情况;
44、另一种方式是将数据封装成WebSerViCe或者其他专用SoCket协议的格式供访问方获取单条数据,这种方式主要针对对客户视图等的访问情况。1) API应保持与开源Hadoop及相当架构系统各服务组件的API不变,具体包括并不限于接口功能、接口类型(JaVa、PythonRest等)、接口名称、输入参数、返回结构。所支持的接口包括并不限于:a.支持访问分布式文件系统的文件操作接口;b.支持与外部数据源关系数据库的交互;c.通过提交MR任务分析和查询数据;d.支持Thrift、ReSt接口;e.以直接提交查询语句方式访问数据;f.提供用户访问Hive的方法,支持用户使用Java和Thrift方式
45、访问Hiveo2) SQL应支持上层使用SQL语言进行访问,具体要求:a.以ODBC方式访问数据湖;b.以JDBC方式访问数据湖;c.提供可视化界面工具,提供SQL设计以及数据访问功能,支持KUdu、SparkHiveImPaIa以及传统数据库。数据湖提供标准接口API直接与生产实时数据库通信,获取生产数据,并将数据接入XX数据湖的实时数据库集群中。数据格式标准化方式,将数据湖的数据访问,封装为标准的WebSerViCe接口。消费数据的上层应用,通过不同的接口服务进行调用,数据湖提供标准化的解析方式,权限由数据湖统一控制。数据接入层采用KAFKA为实时接入组件,根据业务需求,建立统一的TOPl
46、e,消息包含但不限于:时间戳、消息来源、设备类型,状态值等类型,采用统一命名规则和编码方式。数据库表进行统一的命名方式和索引构建,使用CDH的Navigator组件进行数据全生命周期的跟踪和管理。JDBC/JND1HTTPWebServiceSOAP支持ETL架构图将业务系统的关系型数据库中的数据集成到Hadp数据湖,涉及的部分关系型数据库包括:Oracle9Oracle9.2Oracle9iOracle10gOracle10.2、OraclellgOracle11.2、Oracle13SqlServer2000SqlServer2008、MySql5.OoETL是数据抽取(Extract)转
47、换(Transform)装载(Load)的过程。是构建数据湖的重要一环,用户从数据源抽取出所需的数据,经过数据清洗,最终将数据加载到数据湖中。数据抽取a)提供手工和自动两种抽取方式;手工方式通过人为方式启动任务,自动方式基于调度程序定期定时执行抽取任务;b)提供全量和增量数据抽取;c)提供多种抽取策略;d)抽取的字段可以动态修改;e)提供上传数据压缩包的解压;数据转换数据转换(Transform)是按照目标表的数据结构,对一个或多个源数据的字段进行翻译、匹配、聚合等操作得到目标数据的字段。数据装载a)提供数据的批量装载;b)提供以接口和文件的方式将数据装载进入综合应用数据湖、深度分析库、HadOoP库中;c)提供对采集过程及结果的监控界面,获取监控数据。提供对采集的过程报错提供日志记录和审计功能,并提供相应的管理界面和外部访问接口。D非结构化数据集成