互联网大数据与传统数据仓库技术比较研究

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

互联网大数据与传统数据仓库技术比较研究

韩路

1.Hadoop技术简介

Hadoop是Apache软件基金会旗下的一个开源分布式计算平台,是目前全世界最主流的大数据应用平台。以分布式文件系统(HDFS)和MapReduce为核心的Hadoop,目前已整合了其他重要组件如Hive、HBase、Spark,以及统一资源调度管理组件Yarn,形成了一个完成的Hadoop产品生态圈。

1.1.HDFS

HDFS是一个分布式文件系统,可设计部署在低成本硬件上。它可以通过提供高吞吐率支持大量数据的批量处理,同时支持应用程序流式访问系统数据。

1.2.MapReduce

MapReduce是一种编程模型,用于大规模数据机的并行运算。MapReduce可以将一个任务分发到Hadoop平台各个节点上并以一种可靠容错的方式并行处理大量数据集,实现Hadoop的并行任务处理功能。

1.3.Hive

Hive是用于对Hadoop中文件进行数据整理、特殊查询和分析储存的工具。Hive提供了一种结构化数据的机制,支持类似传统结构化数据库中SQL元的查询语言,帮助熟悉SQL的用户查询HDFS中数据。

1.4.HBase

HBase是一个分布式的、列式储存的开源数据库。HBase不同于传统关系型数据库,适合非结构化数据储存,同时可以为一个数据行定义不同的列。HBase 主要用于需要随机访问、实时读写的大数据。

1.5.Spark

Spark是基于内存计算的分布式计算框架。Spark提出了RDD概念,弥补了MapReduce在并行计算各个阶段无法进行有效数据共享的缺陷。同时,Spark形成了自己的生态系统:SparkSQL、SparkStreaming、MLlib,并完全兼容Hadoop 生态系统。

2.Hadoop平台与RDBMS关系型数据平台优势对比

Hadoop技术平台基于HDFS和MapReduce两大核心组件的技术特性,相对传统关系型数据平台具有以下优势:

2.1.扩展能力

Hadoop技术平台各组件均基于分布式储存和运算的概念,能可靠储存和处理海量数据(PB级)。在不保证低延时的前提下,可提供高吞吐量支持海量数据的运算。对传统数据仓库扩容成本高的限制,Hadoop平台具有运算性能线性扩展的性能,储存与计算能力随集群节点数增加线性递增,同时数据自动分布,不影响原有应用运行。

2.2.储存成本低

基于分布式储存和计算的特点,Hadoop平台对集群内单个节点的配置要求不高,集群性能主要由节点数和网络吞吐率决定。因此Hadoop可大规模部署于普通服务器上,对海量低价值数据的存储拥有极高性价比。

2.3.数据结构多样化

HBase是基于HDFS的NoSQL数据库,支持半结构化和非结构化数据的储存,同时MapReduce和Spark也支持对非结构化的文本文件进行结构化处理和分析,Hadoop平台对多样化数据的应用支持度更高。

2.4.计算效率和数据消耗能力高

基于核心组件MapReduce的分布式计算特点,Hadoop平台可在短时间内批量处理海量数据,适合大批量数据的离线处理和分析。

3.Hadoop平台与RDBMS关系型数据平台劣势对比

由于Hadoop核心组件的一些天生缺陷和整个Hadoop生态系统的成熟度较低,Hadoop平台相对RDBMS关系型数据库存在以下缺点:

3.1.小规模计算任务效率低下

MapReduce分布式计算框架在任务分配时占用较长的启动时间,因此Hadoop 平台对于数据量较小、且需要深度挖掘的任务时,运行效率迅速降低。

3.2.数据修改难度大

由于HDFS设计初衷是提供一次写入、多次读取的功能,不支持数据修改。在进行数据ETL的过程中,对数据的清洗、转换造成很大困难。

3.3.上层应用开发门槛高

由于Hadoop技术生态系统尚不成熟,基于Hadoop技术的数据分析、挖掘组件选择性较少。数据挖掘、建模需要基于MapReduce、Spark等计算框架开发,学习曲线、门槛较高,不利于企业深层次挖掘数据内在价值。

3.4.安全可控性低

HDFS中NameNode单点故障解决方案不够完善,存在数据丢失的隐患。此外HBase在对用户的各级别权限控制的功能上远不及关系型数据库。

4.总结

在数据平台的工作能力上,Hadoop平台基于HDFS的特点拥有线性扩展能力,同时支持异构数据的储存和分析,而传统关系型数据平台仅支持结构化数据处理,且扩容成本较高。基于Mapreduce的高速处理批量数据能力,也使Hadoop平台在处理简单数据ETL任务时效率更高,但由于HDFS系统不可修改文件的特性,在ETL时对文件清洗增加了难度。而由于围绕Hadoop技术的生态系统成熟度较低,在安全管理、权限控制和上层分析工具成熟性上仍落后于发展完整的关系型数据平台,尤其体现在数据挖掘模型和服务应用。虽然Hadoop平台具有海量数据的建模能力,但由于配套接口和应用的成熟度较低,相对于传统数据仓库丰富的已有模型和建模工具,基于Hadoop平台的数据挖掘模型仍需通过Spark、R 等组件直接开发,开发、培训成本较高。在对数据挖掘软件的接口支持上,目前仅有部分软件开发了针对Hadoop的支持接口,在数据挖掘工具的选择上受到限制。

Hadoop平台支持海量数据的储存和高速计算,并支持结构化和非结构化数据的分析,能满足银行面对业务数据增长和非结构化数据处理的挑战。而不同于互联网企业,银行内部数据仍以业务产生的结构化数据为主,且需要对数据进行复杂、深层次的加工、分析、挖掘,由于Hadoop平台的成熟度较低,传统RDBMS 关系型数据库仍是满足银行业特有的复杂数据处理和建模分析等应用的首选。

相关文档
最新文档