系统概述
大数据应用支撑平台提供数据支撑服务,对外发布数据服务进行数据价值变现。包含数据采集、数据治理、数据交换、数据存储、数据计算相关组件的搭建、验证,并建立大数据仓库。
b)功能要求
1.数据采集,大数据平台数据源层有各类型数据源,数据类型分为关系型业务库、NoSQL库、文本文件、视频、服务接口,数据格式分为结构化数据、非结构化数据(文件、图片、视频等),为了将多源异构的数据进行采集,需要将源数据原封不动的从源库全量抽取出来,或者只抽取上次抽取以来源库中要新增或修改的数据,因此数据采集工具需要满足对多源异构数据的全量抽取和增量抽取。
2.数据治理,由于从数据采集工具采集过来的数据不具备统一的数据标准及数据格式,数据治理工具需要对到达的数据进行格式检查、标准化、增量对比、数据筛选、拆分后,生成符合标准的、统一格式的数据,使之与大数据平台要求的数据标准、逻辑关系与质量符合。
3.数据交换,为了满足子系统与总系统之间的数据交换及同步的需求,各系统之间的数据传输过程需要符合数据规范标准,交换的双方通过发送和接收任务进行数据交换,整个过程需要保证数据安全保密及可靠性,并且数据查询结果始终一致。
4.数据存储,为了满足数据采集、数据治理、数据交换各个过程中到达存储的数据,数据存储体系需要满足分布式文件存储、分布式列式存储、NoSql数据库存储、图数据库存储、关系型结果库存储;为了满足数据计算和数据分析过程对数据的需求,数据存储体系需要支持全量的从数据存储体系中抽取出来加载到并行数据处理器,增量的结构化数据实时从数据存储体系中抽取出来后加载到处理器中进行分析计算。
5.数据计算,数据计算模块需要为数据分析应用场景提供数据计算能力,需要整合分布式计算框架MapReduce、全文检索存储引擎(Solr)、Spark(SparkSQL、SparkStreaming、GraphX),通过数据匹配、数据搜索、数据重构,提供对海量数据的并行加载与处理功能,并对数据进行实时计算和离线计算,支撑上层数据分析需求。
6.大数据仓库,数据仓库支持从各种不同的数据源中采集数据,包括关系数据库、NoSql库、文本文件、视频文件、数据接口等。采集工具综合运用kettle、dataX、sqoop、kafka、flume等,实现全量采集和增量采集方式。按数据处理的不同阶段,将数据仓库进行分层:
STAGE层(接口层):提供业务系统数据文件的临时存储,是生产系统数据源的直接拷贝,由ETL过程对数据源进行直接抽取,在格式和数据定义上不作任何改变。从各业务系统中抽取、抓取的数据,进入这一层。
ODS/DWD层(细节数据层):简称DWD层,是对STAGE层数据进行沉淀,减少了抽取的复杂性,同时ODS/DWD的信息模型组织主要遵循企业业务事务处理的形式,将企业各专业数据进行集中,将数据按分析的主体的形式存放,跟STAGE层的粒度一致,属于分析的公共资源。
MID层(轻度汇总层):是面向分析型应用,对DWD层的生产数据进行轻度综合和汇总统计。
DM层(数据集市层):将数据按分析的专题组织成多维库表的形式存放,属于分析目标范畴的数据组织与汇总,属于分析的专有资源,其信息主要来源于DWD 和MID层汇总,时间维度可以是日、月、季、年。
MDW层(元数据):对数据仓库中的数据、数据源、采集方式进行描述。
各类数据从业务系统通过ETL工具抽取至接口层,然后经过清洗转换,进入细节数据层,经过汇总统计,进入轻度汇总层,再经过主题划分,按事实表、维度表进行汇总组织,形成数据集市层。
数据仓库的服务主要包括元数据管理、数据处理调度、数据稽核、数据发布。元数据管理对数据仓库中的数据、数据源、采集方式进行管理,为数据处理和发布提供基础元数据。数据处理调度实现各层数据处理过程的调度管理。数据稽核实现数据完整性、一致性、准确性的检查。数据发布实现数据的对外共享发布。
基于数据仓库,搭建数据分析工具,实现数据明细查询、全文检索,数据交互式探索、数据统计和数据挖掘等。数据分析的结果可以进一步接入到应用中,进行可视化展现。