基于国产软硬件的行业大数据体系架构研究
2017-02-27
大数据技术最近几年在迅速发展,国内外的厂商和组织已经推出了多种大数据解决方案。在金融领域,已经利用大数据技术解决诈骗检验、IT风险管理和自助服务等问题,未来大数据技术将会起到越来越重要的作用。
由于国内外针对商业机构系统频频发生的安全事件,国内各行业的信息化目前正在向基于国产软硬件和自主可控方向发展,大数据也是目前国内各行业重点关注的技术。很多厂商和企业纷纷进行技术研究、方案准备和内部测试,并逐步开始在历史数据查询、分析,非结构化数据检索等方向上开始使用。从最近几年的趋势来看,安全、自主可控的大数据解决方案在大数据行业领域有非常大的市场需求。
国内很多关键行业应用,如金融信息系统的许多关键设备都没有采用国产产品,导致无法准确判断其安全隐患,这使得我国信息化建设的安全底数不清。迫切需要国内IT企业和行业共同研发自主可控、自主知识产权的信息系统、信息环境和信息安全产品。针对这种状况国家银监会提出了“自主可控,持续发展,科技创新”的三大战略,国产的信息化产品,在金融领域的应用已经开始了破冰之旅,事实证明,自主可控的软硬件产品,在关键行业领域的应用是可行的,但是缺乏完整的经过验证的整体解决方案和实际案例,无法复制和推广。
行业大数据应用的需求分析
(1)面向多源异构业务数据的采集和管理需求
以在客户信息为例,行业内的集团企业经常会面临急需解决的数据集成问题,企业存在大量分散的客户信息资源,并由各系统自主采集和维护,没有良好的共享体系,客户信息、订单信息等异构的存在不同数据源中,没有横跨多个业务领域的客户信息的统一管理和分发体系。因此,要求统一建设行业信息大数据管理系统,是一套为所有在线业务服务的、整合的行业信息大数据管理与分析系统,并具有行业先进水平的大数据管理和分析能力,以满足企业形成市场竞争优势的要求。
(2)针对海量异构大数据的高性能存储需求
通过调研发现很多大型企业的信息系统已经积累了大量的业务数据,而且随着业务拓展的需求,大数据分析的数据源已经不仅局限于企业内部,如对客户流失分析或者产品销售趋势预测,就还需要互联网社交网络或者电商消费信息等。这些多源、异构、海量的数据对于大数据平台的存储提出了极高的要求。以某大型企业集团的客户和生产经营信息为例,数据规模已经达到上百TB容量,且相关数据量,特别是生产线的传感器数据和用户行为等数据还在持续大幅增长。
(3)多样性大数据分析和处理需求
大数据分析系统不但集成了多个系统的数据源,未来大数据分析应用系统也会被多个部门,多个业务中使用,而且不同的部门和不同业务对大数据分析处理 的响应时间、数据量、结果准确程度以及具体的分析算法都会有很大差异。因此需要完整的对这些分析和处理需求进行分析,以便于设计满足当前和潜在需求的大数据分析处理架构。
(4)行业大数据的安全监控和隐私保护需求
面向行业和企业的大数据平台都将集成来自于不同数据源的数据,其中有很多数据会涉及商业秘密和个人隐私等安全问题,所以这些数据在大数据平台中应该被合理的授权使用,并有完善的安全监控和隐私保护措施,以避免引起数据泄密或者隐私纠纷。
(5)行业大数据平台的业务应用和可视化展现的需求
大数据分析的结果是更好的支持业务推广和运营决策,所以企业大数据分析还是要和现有的业务应用紧密结合,并且以简单友好的操作,以及可视化的方式直观的展现分析结果,这样才能被各部门和各级别的人员使用好大数据系统。
基于自主可控服務器的大数据基础架构研究
通过行业大数据需求和数据现状的调研和测算,大数据基础平台如采用传统的集中数据库Oracle+小型机+集中式存储环境,将无法满足大数据在存储和分析处理方面的需求,而且采用国外进口设备为主的方式也无法保证系统数据的安全和自主可控,国外小型机和存储的硬件成本过高,投入产出比低。因此本文研究对比了主流的大数据硬件方案,提出基于国产主机的行业大数据基础平台,包括分布式Hadoop大数据存储和处理集群、分布式海量数据采集集群和应用与可视化展现服务器集群架构研究,形成满足行业大数据应用的基础硬件平台技术方案。
系统的网络部署架构如下图所示:
自主可控的大数据分析基础软件平台研究
通过项目前期技术研究和分析,我们发现传统数据仓库模式进行行大数据分析在软件平台方面是不能满足性能、容量和成本方面的需求的。为此,我们对大数据软件平台进行充分对比研究,重点研究了国内面向行业的大数据平台的软件基础架构,包括操作系统、分布式文件系统、列式数据库、批处理框架、内存计算引擎、资源调度、安全管控等方面的研究。形成了满足行业大数据应用的基础软件平台技术方案。
我们研究和评估了基于国产操作系统和基于开源自主可控的大数据平台基础软件架构,操作系统层面可以支持国产Linux和Unix操作系统。大数据基础软件架构采用了大量的组件实现大数据的存储、计算、分析和管理功能,如上图所示。
在大数据软件架构中设计通过分布式ETL工具各业务系统完成数据采集,支持结构化数据以及非/半结构化数据,即数据库数据、文件、日志等类型,采集数据包括全量历史数据迁移以及增量数据同步。未来保证数据质量和数据溯源,采集过程中需要对数据质量分析、治理。
架构中设计了数据分层存储的解决方案,对于需要进行持久化存储的数据(离线保存3年以上)和非结构化数据,可直接在HDFS中存放,以数据仓库ORC表形式存储;需要挖掘或检索管理的数据放入HBase列式数据库中,并支持与传统数据库互导,系统会自动完成多个数据副本的拷贝,从而实现冗余备份;对于需要快速实时交互式分析 的数据以Cube的形式存储在SSD或内存中,可以提供快速交互式分析能力。
架构中还包括了数据分析功能和组件,对需要进行数据关联分析和数据挖掘等涉及大数据量的统计和查询需求的应用,可选用Mahout,R等数据分析和数据挖掘工具。
架构中的数据服务设计包括数据集市所提供的业务/部门级服务,数据Cube及交互式报表、数据质量分析报告、数据流程监控及告警、API数据调用和数据能力开放等服务。对于实时性要求较高的数据(如Kafka采集的数据)放在Spark Stream中提供实时服务。