大数据三层架构 驱动价值的产生
2013-11-11 企业网D1Net 编辑:佚名
随着大数据的深入发展,关于大数据自身架构的关注也日益成为焦点,大数据的总体架构包括三层,数据存储,数据处理和数据分析。类型复杂和海量由数据存储层解决,快速和时效性要求由数据处理层解决,价值由数据分析层解决。
数据先要通过存储层存储下来,然后根据数据需求和目标来建立相应的数据模型和数据分析指标体系对数据进行分析产生价值。而中间的时效性又通过中间数据处理层提供的强大的并行计算和分布式计算能力来完成。三层相互配合,让大数据最终产生价值。
数据存储层
数据有很多分法,有结构化,半结构化,非结构化;也有元数据,主数据,业务数据;还可以分为GIS,视频,文件,语音,业务交易类各种数据。传统的结构化数据库已经无法满足数据多样性的存储要求,因此在RDBMS基础上增加了两种类型,一种是hdfs可以直接应用于非结构化文件存储,一种是nosql类数据库,可以应用于结构化和半结构化数据存储。
从存储层的搭建来说,关系型数据库,NoSQL数据库和hdfs分布式文件系统三种存储方式都需要。业务应用根据实际的情况选择不同的存储模式,但是为了业务的存储和读取方便性,我们可以对存储层进一步的封装,形成一个统一的共享存储服务层,简化这种操作。从用户来讲并不关心底层存储细节,只关心数据的存储和读取的方便性,通过共享数据存储层可以实现在存储上的应用和存储基础设置的彻底解耦。
数据处理层
数据处理层核心解决问题在于数据存储出现分布式后带来的数据处理上的复杂度,海量存储后带来了数据处理上的时效性要求,这些都是数据处理层要解决的问题。
在传统的云相关技术架构上,可以将hive,pig和hadoop-mapreduce框架相关的技术内容全部划入到数据处理层的能力。原来我思考的是将hive划入到数据分析层能力不合适,因为hive重点还是在真正处理下的复杂查询的拆分,查询结果的重新聚合,而mapreduce本身又实现真正的分布式处理能力。
mapreduce只是实现了一个分布式计算的框架和逻辑,而真正的分析需求的拆分,分析结果的汇总和合并还是需要hive层的能力整合。最终的目的很简单,即支持分布式架构下的时效性要求。
数据分析层
最后回到分析层,分析层重点是真正挖掘大数据的价值所在,而价值的挖掘核心又在于数据分析和挖掘。那么数据分析层核心仍然在于传统的BI分析的内容。包括数据的维度分析,数据的切片,数据的上钻和下钻,cube等。
数据分析我只关注两个内容,一个就是传统数据仓库下的数据建模,在该数据模型下需要支持上面各种分析方法和分析策略;其次是根据业务目标和业务需求建立的KPI指标体系,对应指标体系的分析模型和分析方法。解决这两个问题基本解决数据分析的问题。
传统的BI分析通过大量的ETL数据抽取和集中化,形成一个完整的数据仓库,而基于大数据的BI分析,可能并没有一个集中化的数据仓库,或者将数据仓库本身也是分布式的了,BI分析的基本方法和思路并没有变化,但是落地到执行的数据存储和数据处理方法却发生了大变化。
D1Net评论:
如果把大数据比作是一个人,那么,大数据的三层架构就是人的不同器官和机体,三层架构相互配合,相互协调,最终创造大数据的价值,大数据的三层架构缺一不可,作为一个统一的整体,才能发挥最大作用。