分布式数据库选型论证报告

上传人:痛*** 文档编号:94823936 上传时间:2022-05-23 格式:DOC 页数:24 大小:792.50KB
收藏 版权申诉 举报 下载
分布式数据库选型论证报告_第1页
第1页 / 共24页
分布式数据库选型论证报告_第2页
第2页 / 共24页
分布式数据库选型论证报告_第3页
第3页 / 共24页
资源描述:

《分布式数据库选型论证报告》由会员分享,可在线阅读,更多相关《分布式数据库选型论证报告(24页珍藏版)》请在装配图网上搜索。

1、分布式数据库选型论证第一章主流数据库技术介绍一、关系型数据库系统是一种基于关系模型的数据库管理系统。这种关系模型最初是由埃德加?科德在IBM的实验室提出的。目前很多主流的数据库都是遵循这种关系模型。这种关系型的数据库管理系统从上世纪 80年代开始被广泛应用于存储财务数据、制 造业数据、个人信息数据,互联网各类应用的数据。目前主流的RDBM有Oracle Database、Microsoft SQL Server 、MySQL PostgreSQL等。关系型数据库的特点主要有一个数据库由多张表构成、每张表都有用户定义的表结构信息(schema)来描述表格的结构。每张表由行构成,每行包含若干列,

2、列的属性由表格的schema定义。关系型数据库可以解释为面向行的数据库,每 张表具有横向的扩展性,数据表是面向行增长的,而列的模式是相对固定的。其 功能主要包括以下几点。数据的检索功能:SQL语言的检索功能主要包括基于主键、二级字段的查询、 聚合查询、表连接查询等功能。事实上数据库的查询功能是SQL语言里被使用最 多的功能。1) .数据的操作功能:包括数据的插入、删除、修改。数据的操作以行为单 位,可以修改某具体行的特定列的值,也可以批量的对一组符合条件的行数据进 行操作。2) .事务处理的功能:数据库事务是数据库管理系统中执行时一个独立的单位,一般事务由一组数据库管理系统中的指令组成。 事务

3、之间相互独立,事务具 有ACID四个重要的特性:原子性(Atomicity)、一致性(Consistency)、隔离性 (isolation) 和持久性(durability)。事务也是区分很多NoSQ与SQL数据库的 重要特性之一。3) .表结构的定义功能:数据库定义语言(DDL)是用于创建表,修改以及删 除表结构(schema)的。DDL中也包括了对某个字段建立索引的功能。二、NoSQ技术1、Key. Value数据库(键值数据库)Key. Value数据库中对value(数据)基本上没有做什么限制,可以在 value 上存储任何格式的数据。Key. Value数据库的数据模型最为简单,因

4、此其一般 具有很好的性能、可扩展性、灵活性。典型的代表有亚马逊的DynamoEll数据库、RedisGoogle的LevalDB等。Key Value只支持对数据的一些简单的操作: Key Value对的插入、删除、更新。根据实现的不同Key可以有序也可以无序, key有序意味着可以进行key的范围查找。Dynamc采用的是最终一致性的模型、 亚马逊公司将它用在对数据一致性要求不高的购物车的应用中。2、面向列的数据库这类数据库不仅具有传统关系型数据库所具有横向(面向行)的可扩展性也支持面向列的动态可扩展性,它不需要像传统的关系型数据库需要使用DDL才能修改表结构以及要遵循每行的列属性要一致的规

5、范。这类数据库从GoGgle的BigTablet开始,之后出现了几种开源的数据库如 HBase Cassandra。HBase是 BigTable的开源实现,两者有很多相同的设计理念,两者的表结构里面都有一 个列簇(Column family)的概念,每个列簇对列的个数和格式基本没有限制,同 时每列数据都附上了时间戳的概念,这使得数据列值可以拥有多个版本。 BigTable和HBase从底层实现来看,本质上也是一个分布式的 Key Value系统, 只不过这里的Key的结构是一个包含了表名、主键名、列簇名、列名和时间戳的 多元组。3、Graph数据库(图形数据库)同Key Value数据库一样

6、,Graph数据库对数据的value也不做限制。Graph 数据库的存储单元有三个:节点、关系、属性。这类数据库是用来存储那些更适 合用图来描述的数据,例如社交网络的关系数据、交通道路节点的数据或者一些 网络拓扑数据等。Graph数据库设计的关键是如何描述数据点之间连接关系,相 对于关系型数据库的关系模型,这种图数据模型具有大量复杂、互连接、低结构 化的特点,而我们知道在关系模型中表的连接操作效率往往是比较低的。目前相对比较成熟的开源Graph数据是NeO4Jti。n,NeO4J是一个用Java实现的兼容 ACID的图形数据库,NeO4J实现了一个非常高效的图形引擎用来实现快速的面向图形数据的

7、各类操作。由于这类图形数据结构模型的复杂性, 使得图形数据库具 有较大的可扩展性问题,要想实现分布式的图形数据库是非常困难的, 这也是图 形数据库一直未真正流行开来的一个重要的原因。4、文档数据库文档数据库是面向文档的数据库,是用来存储、检索、管理文档信息的数据 库,存储的文档结构大部分是半结构化,如 XML JSON文档等。这类数据库的所 存储的文档数据结构往往是由具体的应用决定的,文档数据库比较适用于那些不频繁对已经存在的文档做修改的应用。这一类型数据库的代表是109en团队开发 的MongoD罰Apache Couch DB与传统的关系型数据库采用表格的形式存储数 据不同,MongoDB

8、使用的是类似JSON格式的文档结构来存储数据,这种数据结 构的一个好处是可以实现动态的表结构 (schema)。尽管MongoDE属于NoSQL数据 库,但是MongoD实现了很多传统关系型数据库的功能:(1)含关键字字段查询、 范围查询,正则表达式查询在内的丰富查询功能;(2)对二级索引的支持;(3)数据库服务端运行自定义Javascript脚本的功能;(4)集成MapReduce实现数据 聚合分析的功能;(5)基于数据分片与数据备份机制的分布式存储功能。数抵规模Key-Value数据库面向列的数据库文档数据库图模型数据库数据模型的夏杂性图1.1数据模型复杂性与数据规模的关系示意图展示了不同

9、数据模型复杂性与数据规模的关系。图中根据数据存储模型的复 杂性从低到高依次为Key. Value数据库、类BigTable数据库、描述复杂图模型 的图形数据库。这张图从一定程度上反映了数据的存储建模与数据规模的关系。第二章主要分布式数据库技术介绍一、Hadoop技术架构hadoop是一个免费开源的分布式系统基础架构,它最原始的版本是由Apache 基金会开发的。Hadoop核心框架主要包括:HDFS和MapReduce HDFS提供了海 量数据存储,MapReduce则提供了海量数据计算和分析过程目前市面上免费开源 的Hadoop版本主要有三个,分别是:Apache(最原始的版本,所有发行版均

10、基于 这个版本进行改进 )、Cloudera 版本(Cloudera S Distribution Including Apache Hadoop 简称 CDH) Hortonworks 版本(Hortonworks DataPlatform,简 称 HDP。Hadoop是一个分布式处理的软件框架,相对于单机运行,它更善于处理大 数据量的问题。实现了 Google的Map Reduce编程模型和存储框架提出的将应 用程序分割成许多小的并行的程序单元的要求,并且这些单元在任何节点上都 可以执行。在MapReduce中,要分清“作业(job ) ”和“任务(task ) ”。 Job是还未执行的的

11、应用程序,它处于准备阶段。而task则是正在各个计算节点上执行的工作单元,是从一个作业划分出来已经实施的程序部分。此外,Hadoop 提供的分布式文件系统(HDFS, Hadoop Distributed File System )主 要负责各个节点上的数据存储,它是实现高吞吐率的数据读写功能的基础。Master节点图2.1 Hadoop结构图Hadoop在分布式存储和分布式计算方面为了可以提高速率和准确度,都是采 用了主/从(Master/Slave )的架构模式,一系列在集群中运行的后台(deamon) 程序就是这 些要求的根本保障。根据分工不同可分为以下几个部分组成: NameNode

12、Sec on dary NameNode DataNode Task Tracker、JobTracker。女口 上图 2.1 所示的,NameNod、Secondary NameNode Job Tracker 运行在 Master 节点上,TaskTracker 和DataNode运行在Slave 节点上,本机的数据都尽量 交给这些数据处理程序来直接处理,以节约时间成本。2、HDFS简述HDFS(Hadoop Distributed File System) 是分布式计算 中数据存储管理的 基础。HDFS的体系结构是主/从 (Master/Slave )模式,即一个NameNode和 多个

13、DataNode,如图2.2所示。HDFS将数据文件分割成大小各异的数据块(Block ),分散存储于各个DataNode中,并按照“一次写入、多次读取”的 模式进行读写。用户如果要对数据进 行操作,都有要先访问NameNode它会处 理用户的请求,之后给 DataNode分配具体任务,也就是说NameNode负责调 度安排,DataNode实施具体工作。图2.2 HDFS结构示意图HA(High Availability),即高可用性。HA为系统对外正常提供服务时间的百分比,也即是在出现故障的情况下还能保证数据存储的可靠性的程度。HDFS的可靠性能够利用平均无故障时间(MTTF)来衡量,即为

14、HDFS正常服务的平均运 行时间;HDFS的可维护性是利用平均维护时间(MTTR来衡量,即HDFS从不能 正常服务到再次正常服务之间所需的平均维护时间。HDFS的HA可精确定义为如下公式:MTTF/(MTTF + MTTR) *100% ( 2.1 )HDFS具备了较为完善的冗余备份和故障恢复机制,可以实现在集群中可靠 地存储数据文件。3、HBASE简述HBase 是 Google BigTable 的开源实现,是一个“ NoSQL, HBase 不属 于Hadoop,但是依赖于Hadoop和ZooKeeper。其实,与其说它是一个数据库, 倒不如说它是一个Key-Value对的仓库更加合适,

15、它和常用编程语言中 Map类 也有些相似之处。作为NoSQ屮Base并没有采用基于行的存储模式。在HBase中 的数据表每列单 独存放在相邻的物理单元,只需要访问涉及到的列,因此可以 在很大程度上降低整个集 群系统的I/O 开销;HBase还支持并发地进行查询和 处理,如果需要处理好几列,可以开启多个线程,每个线程处理一列或者几列, 以加快处理速度,因此它采用了这种基于列的存储方式。HBase的数据表具有排 列疏松,使用时间长,维度高的特点,它按照 Key值排序,其索引是行关键字 (key值)、列关键字(Column)以及时间戳(Timestamp)。行关键字是行在表中的 唯一标识,如果先后插

16、入两个行关键字相同的行,则后面一行会覆盖掉前面一行。 用户在HBase表格中存储数据,每一行都有一个可排序的主键,多个在创建表 时固定的列簇和任意多的列。I IMaMeTHBase采用了主/从(Master-Slave )的架构模式,其中 HBase主节点节作为Master调控整个集群,同时定期检测Regionserver 发来的“心跳”以确 认其处于工作状态,同时为了确保元数据表中的所有数据都处于在线状态,HBaseMaster也会定期对元数据表进行扫描。Regionserver 运行在Slave节 点上,这些具体任务就是有它来完成的。为了实现HBaseHBase的分布式特性, 集群需要大量

17、的Regionserver 。4、Hive简述Hive是一个基于Hadoop生态体系的数据仓库工具。它的最大优势是大大降 低了 MapReduce作业的开发时间。它没有提供更快地开发 Map和Reduce任务的 方法,而是定义了一种类似SQL勺查询语言(HiveQL ,简称HQL)Hive使用HiveQL 语句进行数据操作,并将其自动转化成一个或者多个MapReucd乍业,最后执行这些Map Reduce程序并将数据结果提交给最终用户。Hadoop Streami ng缩短了 “编码、编译、提交”的开发周期,而 Hive完全摒弃了这一过程,只需要构造 HiveQL语句即可。HiveQL语句转换

18、成对应的 Map Reduce底层操作。它还提供了 一系列的工具进行数据提取转化加载,也可以实现对map和reduce函数的定制, 为数据操作提供了良好的可扩展性。此外,结合Sqoop Mahout数据挖掘工具,可以有效地实现对数据仓库中多维数据的挖掘处理。因此,非常适合数据仓库的构建。然而,Hadoop是一个批处理架构,因此,其任务的提高和高度会有较高的延 迟和资源消耗。这会导致 Hive即使针对非常小的数据量进行查询操作时,也会 造成十分严重的延迟现象。所以,在小数据集的分析和处理上,Hive远不如Oracle、DB2等关系数据库。Hive的设计目的是为可容忍延迟的交互式数据查询 与分析提

19、供服务。此外,Hive不适用于OLTP联机事务处理)和实时查询、更新, 它最适合用于对海量不可更改的数据集的批处理工作。Hive具有良好的容错机制、可伸缩性以及数据格式的松耦合。5、MongoDE简述MongoDB是由C+h语言编写的,是一个基于分布式文件存储的开源数据库系 统。在高负载的情况下,添加更多的节点,可以保证服务器性能。Mon goDB旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB将数据存储为一个 文档,数据结构由键值(key=value)对组成。MongoDB文档类似于JSON对象。 字段值可以包含其他文档,数组及文档数组。name: r,sue,ff fie

20、ld:valueage: 26x field:valuestatus: A, field:valuegroups: L ,news, sports field:valueMon goDB的提供了一个面向文档存储,操作起来比较简单和容易。可以在MongoDB记录中设置任何属性的索引(女口: FirstName=Sameer,Address=8Gandhi Road)来实现更快的排序。可以通过本地或者网络创建数据镜像,这使得 Mon goDBT更强的扩展性。如 果负载的增加(需要更多的存储空间和更强的处理能力),它可以分布在计算机 网络中的其他节点上这就是所谓的分片。 Mon go支持丰富的查询表

21、达式。查询指 令使用JSON形式的标记,可轻易查询文档中内嵌的对象及数组。使用 update() 命令可以实现替换完成的文档(数据)或者一些指定的数据字段。Mongodb中的Map/reduce主要是用来对数据进行批量处理和聚合操作。Map和Reduce Map函数调用emit(key,value) 遍历集合中所有的记录,将 key与 value传给Reduce函数进行处理。Map函数和 Reduce函数是使用Javascript 编写的,并可以通过db.ru nComma nd或map reduce命令来执行Map Reduce操作。 GridFS是MongoD中的一个内置功能,可以用于存放

22、大量小文件。6、Cassandra 简述Cassandra的数据模型是基于列族(Column Family )的四维或五维模型。它借鉴了 Amazon的完全分布式的 Dynamc为基础,结合了 Google BigTable基于 列族(ColumnFamily )的数据模型,采用 Memtable和SSTable的方式进行存 储。在Cassandra写入数据之前,需要先记录日志 (CommitLog ),然后数据 开始写入到 Column Family 对应的Memtable中,Memtable是一种按照key 排序数据的内存结构,在满足一定条件时,再把Memtable的数据批量的刷新到 磁盘

23、上,存储为SSTable 。 Cassandra是社交网络理想的数据库, 适合于实时事务处理和提供交互型数据。目前twitter和digg中都有使用。在CAP特性上, HBase选择了 CP, Cassandra更倾向于AP,而在一致性上有所减弱。Cassandra和HBase的一个重要区别是,Cassandra在每个节点是是一个单Java进程,而完整的HBase解决方案却由不同部分组成:有数据库进程本身, 它可能会运行在多个模式;一个配置好的HadoopHDFS分布式文件系统,以及一个Zookeeper系统来协调不同的HBase进程。第三章各类分布式数据库技术对比、HBase与 Mongod

24、b对比对比项HBaseMongodb语言javaC+存储方式列式数据库,集群部署时每个文档型数据库,整个数据都存在磁盘familycolumn 保存在单独的 hdfs文件中二级索引不支持支持主键存储是row key,可以是任意字符串(最大长记录插入的顺序和存放的顺序一样度是64KB,实际应用中长度一般为1O-1OObytes),在 hbase 内部,row key保存为字节数组。存储时,数据按照Rowkey的字典序(byte order) 排序存储。查询只支持三种查找:通过单个row key访问,支持集合查找,正则查找,范围查找,支持skip读效率比MapReduce通过 row key 的r

25、ange,全表扫描和limit 等等,适合写多读少效率高支持支持 mapreduce,不过 mongodb 的 mapreduce 支持不够强大,如果没有使用mongodb 分片,mapreduce实际上不是并行执行的数据读写采用 LSM 思想(Log-Structured采用的是mapfile+Journal 思想,如果记录不在机制Merge-Tree),就是将对数据的更改 hold内存,先加载到内存,然后在内存中更改后记录在内存中,达到指定的 threadhold 后将日志,然后隔一段时间批量的写入data文件,这该批更改merge后批量写入到磁盘,这样样对内存的要求较高,至少需要容纳下热

26、点数据将单个写变成了批量写,大大提高了写入和索引。速度,读数据时需要 merge disk上的数据和memory中的修改数据,这显然降低了读的性能。、HBase与 Cassandra 对比对比项语言出发点HBaseJavaBigTableCassa ndraJavaBigTable and Dyn amoLice nseApacheApacheProtocolHTTP/REST (also Thrift)Custom, binary (Thrift)数据分布表划分为多个region存在不同region server上改进的一致性哈希(虚拟节点)存储目标大文件小文件一致性强一致性最终一致性,Qu

27、orum NRW策略架构master/slavep2pNameNode是HDFS的单点故障高可用性点八、P2P和去中心化设计,不会岀现单点故障伸缩性Regio n Server扩容,通过将自身发布到 Master , Master 均匀分布Region扩容需在Hash Ring 上多个节点间调整数 据分布读写性能数据读写定位可能要通过最多6次的网络RPC,性能较低。数据读写定位非常快数据冲突处理乐观并发控制(optimistic con curre ncy con trol)向量时钟临时故障处理Regio n Server石机,重做II I cr数据回传机制:某节点宕机,hash至U该节点的新

28、数据自动路由到下一节点做hintedHLoghan doff ,源节点恢复后,推送回源节点。永久故障恢复Regi on Server恢复,master重新给其分配 regionMerkle 哈希树,通过 Gossip协议同步Merkle Tree,维护集群节点间的数据一致性成员通信及错误检测Zookeeper基于GossipCAP1,强一致性,0数据丢失。2, 可用性低。3,扩容方便。1,弱一致性,数据可能丢失。2,可用性咼。3,扩容方便。、HBase Cassandra、MonogDI对比以下数据基于亚马逊云平台上对三个主流的 NoSQ数据库性能比较横坐标是 吞吐量,纵坐标是延迟,这是一对矛

29、盾,吞吐量越大,延迟越低,代表越好。1. 纯粹插入,Cassandra领先,Load phflse, 100.000.000 records * 1 KBjINSERT一 一- _ _ = _ 一. O -9 876543210SE菩弓2 Cass an dr 2.0 Hbase 0 9;Mcngudb 2.4.650001000D 15DOOThroughput, ops/spc2DOOO2. 读修改操作各占一半情况下的修改性能:MongoDBH显延迟增加,落败:Workload A; Update (Update 50%a Read SOK120a ifces&oaj2UODThrough

30、put ops/spc2.63. 读修改操作各占一半情况下的读性能:Cassandra落后Workload A: Read (Updt 50% Fend 5D糾8070w504030?omoM E r&匚 MJOHE BLasan dra 2.Co.nr.lixifloDb 2.4r65001000 1S0Q 200025001000Throughput, opS 饌Workload B: Update (5% update,iinnr匕亡善-e矗4. 95%勺read和5%勺update以读为主的场景下修改性能: MongoDE落后:5. 95%勺read和5%勺update以读为主的场景下

31、读取性能:三者差不多,HBase好些9o8o7oMsog3o竝Iflosur-Lruils轡絆-2AWorkload B: Read (5% update 95% read)sridr 201000 2000Throughput ops/sec6. 100%勺 read:击 a 2j0*Q.2Worklodd C10O% ReadsmbMoh 沪 Db 2.4.6加70甜S0403O301OOWAXlzln 薯:5001000150020002500Throughput,7. 5%勺插入和95%勺读的场景下插入性能,Cassandra表现最好。Workload Di Insert Srnser

32、tS1 rd|8. 5%的插入和95%勺读的场景下读性能,Cassandra表现最好。VVorklotd D: Read (5% Insert, S3% rr#d)90807060 /;一0 SOO iOOO 1S002000?5fl03000ThrouKhpwt, ops/secuw5d p、ln d 上 Bn 上 0 0 oooriZS1*1品g#畀MW%OL矣 七su 一 - - Pe2 &%09e七一 pollbpeps&ogbL-圉、rdQnCLJ=alno4rl? peffP蛊 PAE吕彗至 uj Amm广a5tei.iAv品 gtfs Pe2 &%09e一pollbpep s &

33、09 .6四、HiveSQL与 SQLM比数据库的事务、索引以及更新都是传统数据库的重要特性。但是 Hive到目 前也不支持更新(这里说的是对行级别的数据进行更新),不支持事务;虽然Hive 支持建立索引,但是它还不能提升数据的查询速度。下表列出了 RMD和 Hive的 比较:比较项SQLHiveQLANSI SQL支持不完全支持更新UPDATEINSERTDELETEinsert OVERWRITEINTO TABLE事务支持不支持模式写模式读模式数据保存块设备、本地文件系统HDFS延时低高多表插入不支持支持子查询完全支持只能用在From子句中视图UpdatableRead-only可扩展性

34、低高数据规模小大本文采用Oracle与Hive进行性能对比测试,将测试数据分组,以1000W和2000W条数据为一个级别,分为 5 个组:1000W 2000W 3000W 4000W 6000W8000W分别为一组测试数据。然后每一组数据分别在Hive数据仓库和Oracle数 据库中测试查询时间(分别每组取10次,然后求平均值),最后比较查询效率。测试时间表数据量级(万条)Oracle测试时间(ms)Hive测试时间(ms)10006608100482000116811592730001629216682400021207181936000273711985480003362820769由实

35、验分析可得:当数据量较小时,Hive优势无法体现,甚至远不如Oracle 数据库。但是,随着数据量级别的不断增大,当数据量超过3000W条时,Hive的特点开始发挥优势,当测试数据为 4000W条时,Hive查询时间已经开始略优 于Oracle数据库,可以预测随着数据量级的不断增大,Hive数据仓库的优势会逐步体现出来。所以,在面对海量数据处理时,基于Hive架构数据仓库具有明显的优势。五、HDFS HBase与Hive的关系HDFS是 GFS的一种实现,他的完整名字是分布式文件系统,类似于FAT32NTFS是一种文件格式,是底层的。Hive与Hbase的数据一般都存储在HDFSK Hadoo

36、p HDFS为他们提供了高可靠性的底层存储支持。容错率很高,即便是在系 统崩溃的情况下,也能够在节点之间快速传输数据。HBase是非关系数据库,是开源的Not-0nly-SQL数据库,它的运行建立在 Hadoop上。HBase依赖于CAP定 理(Consistency. Availability, and Partition Toleranee)中的 CP项。HDFSft适于执行批次分析。然而,它最大的缺点是无法执行实时分析,而实 时分析是信息科技行业的标配。HBase能够处理大规模数据,它不适于批次分析, 但它可以向Hadoop实时地调用数据。HDF别HBase都可以处理结构、半结构和非结构

37、数据。因为HDFS建立在旧的MapReducei架上,所以它缺乏内存引擎,数据分析速度较慢。相反,HBase使用了内存引擎,大大提高了数据的读写速度。HBase乍为面向列的数据库运行在HDFS之上,HDFS缺乏随即读写操作,HBase正是为此而出现。HBase以Google BigTable为蓝本,以键值对的形式存储。项目的目标就是快速在主机内数十亿 行数据中定位所需的数据并访问它。HBase是一个数据库,一个NoSql的数据库, 像其他数据库一样提供随即读写功能,Hadoop不能满足实时需要,HBase正可以 满足。如果你需要实时访问一些数据,就把它存入HBasa可以用Hadoop作为静态数

38、据仓库,HBase作为数据存储,放那些进行一些操作会改变的数据。Hbase 与hive都是架构在Hadoop之上的。都是用 Hadoop作为底层存储。而 Hbase是 作为分布式数据库,而hive是作为分布式数据仓库。当然hive还是借用Hadoop 的Map Reduce来完成一些hive中的命令的执行。第四章分布式数据库总结一、选型原则? 所提供的功能是否能够完整地解决问题,是否适应于现有业务场景? 数据库的扩展性如何。是否允许用户添加自定义组成来满足特殊的需求。? 所选择分布式数据库是否有丰富完整的文档,并且能够以免费甚至付费 的形式得到专业的支持。? 所选择分布式数据库是否有很多人使用

39、,尤其是一些大型企业在使用, 并存在着成功的案例。二、选型方案本文建议拟选用关系型数据库、分布式数据库与分布式存储技术相结合的模 式进行数据库选型。1、HBase作为开源的BigTable解决方案,依托Hadoop生态圈,越来越多的 被企业用来作为数据的在线存储方案,以解决 PB级数据的实时存储与高并发访 问。技术社区资源丰富,在互联网、金融、通信领域具有成熟的应用案例。2、 HBase的存储方式有2种,一种是使用操作系统的本地文件系统,另外一种则是在集群环境下使用 Hadoop的HDFS相对而言,使用 HDFS各会使数据更 加稳定。HBase不仅可以向下提供运算,它还能够结合Hadoop的M

40、ap Reduce向上提供运算,与Spark计算平台具有很好的结合,满足未来对于历史归档数据的 统计分析应用拓展需求。3、HBase是一个高可靠性、高性能、可伸缩的分布式存储系统,很适合存储 电子票据数据。HBase可以保障业务高并发开票能力,支持海量票据存储和检索; 每份电子票据存储三份,互为冗余备份;采用分库分表技术解决了传统关系型数 据所不具备的写扩展能力。4、扩展读写能力,随着数据量和并发的增长,请求均匀分布在不同机器, 数据自动分片(Sharding ),自动均衡。分片之后,数据以 Region为单位均匀分 布在服务器节点,跟Hadoop的无缝集成保障了其数据可靠性(HDF$和海量数

41、 据分析的高性能(MapReduce。5、水平扩展(Scaling-Out。操作简单,扩容时通过增加机器节点完成,数 据自动平衡,数据总量取决于集群节点数量,而且对错误的兼容性比较高。三、主流HBase产品目前国内市场上HBase产品主要分为两大流派,一是以阿里云为代表的云数据库HBase通过云服务托管的模式为用户提供全面的运维服务。二是以硬件厂 商为代表的企业级大数据平台建设方案,通过提供整套大数据基础设施建设方案 满足用户对大数据存储管理的需求。 本文主要以第二种产品为论证对象,对主流大数据平台产品进行选型评估。1 华为Fusionlnsight 企业级大数据平台Fusionlnsight

42、是华为面向众多行业客户推出的,基于Apache开源社区软件 进行功能增强的企业级大数据存储、 查询和分析的统一平台。它以海量数据处理 引擎和实时数据处理引擎为核心,并针对金融、运营商等数据密集型行业的运行 维护、应用开发等需求,打造了敏捷、智慧、可信的平台软件、建模中间件及产品规格如下:系统指标规格系统支持最大节点数4000可靠性指标-MTTF17520小时可靠性指标-MTTR1小时可靠性指标-MTBF17521小时可服务性规格-可软件安装时间2小时可服务性规格-扩容完成时间2小时100节点内可服务性规格-软件升级时间40002GB份钟完善的ANSI SQL标准兼容,OLAP扩展Flume、H

43、DFS HBASE Storm、Pig、Mahout 等 支持In-Database Analytics ,提供丰富的数据 挖掘算法2002TB/小时完善的ANSI SQL标准兼容,OLAP扩展支持行级、列级、混合存储;压缩皆可到14倍;支持 md5 SHA1SHA224/256/384/512、AESPGP对称加密、PGP公钥加密等存储加密方式200 节点;40TB2万/秒SQL Key/Value数据智能分片、智能均衡、集群多活,支持MapReduce算 法等3、IBM InfoSphere大数据分析平台IBM InfoSphere 大数据分析平台包括 BigInsights 和Strea

44、ms,二者互补,Bigl nsights 对大规模的静态数据进行分析,它提供多节点的分布式计算,可以 随时增加节点,提升数据处理能力。Streams采用内存计算方式分析实时数据In foSphere大数据分析平台还集成了数据仓库、数据库、数据集成、业务流程 管理等组件。BigI nsights 基础版和企业版均包含了 Apache Hadoop和大量的开 源软件技术,具体包含的开源项目:1) ApacheHadoop包括 HadoopDistributed File System (HDFS) Map Reduce 框架和通用的实用工具,是一种适用于数据密集型应用的软件框架,可用于开发分布式计

45、算环境2) Pig是用于Hadoop的一种高级编程语言和运行时环境3) Jaql 是基于 JavaScript Object Notation (JSON)的一种高级查询语言, 也支持SQL4) Hive是一种数据仓库基础架构,设计用于支持批量查询和分析Hadoop管理的文件5) HBase是一种以列为主的数据存储环境,设计用于支持Hadoop中的稀疏填充的大型表格6) Flume是一种用来数据收集并将其加载到 Hadoop中的工具7) Luce ne是一种文本搜索和索引技术8) Avro是一种数据序列化技术9) ZooKeeper是分布式应用程序的一种协作服务10) Oozie是工作流/作业

46、编排技术IBM大数据平台提供全面的企业级 Hadoop平台、流计算、分析引擎企业级 数据仓库实现各种数据的存储、分析和挖掘,结构化数据可以使用数据仓库进行 存储和分析,结构化原始数据、半结构化和非结构化数据可以存储到企业级 Hadoop系统中并进行后续分析处理,动态的半结构化和非结构化信息流通过流 计算和分析引擎进行处理、过滤和分析后,生成的结构化分析结果可以存储到数 据仓库中以便和其他历史信息进行进一步的深入分析,而获取的半结构化和非结构化信息可以存储到企业级 Hadoop系统中(当然结构化的信息也可以存储到企 业级Hadoop中)。数据仓库技术和企业级 Hadoop系统之间是相互补充,而非

47、 相互竞争关系。借助于企业级 Hadoop平台InfoSphere Biginsights 3.0,用户可以方便的进行大数据分析、数据挖掘、文本分析、全文检索、报表展现以及 各种交互式查询访问,使得企业用户进行大数据分析的时间价值曲线变平。4、Intel Hadoop 大数据平台In tel Hadoop发行版提供了一个稳定高效可管理的 Hadoop版本,包含Hadoop 分布式文件系统HDFS分布式数据库HBase分布式计算框架MapReduce数据 仓库Hive、数据处理Pig、机器学习Mahout商业套件。此外,英特尔还提供全 面的产品技术支持和顾问服务,使得企业在系统规划、设计和实施运

48、行中能得到 专业及时的专业服务,为企业解除后顾之忧。1Intel Hadoop Manager 2.0Sqoop 1 4 1Mahout 0.6Rig 0921 fl Hive 0,9,0 IZookeeper 3.3.5Map/Reduce 1.0.3卜d* 电 _HBase 0.90.6 赏时.井布式胡雄联据即rHDFS 1.0.3主要技术特点:1)基于Hadoop底层的大量优化算法,使应用效率更高、计算存储分布更均衡,提高系统扩展性,适合不同配置服务器组成的集群;2)集成最新开源和自行开发的补丁,用户可以及时修正漏洞,保证各个部 件之间的一致性,使应用顺滑运行;3)根据读请求并发程度动态

49、增加热点数据的复制倍数,提高Map/Reduce任务扩展性;4)提供独有的基于浏览器的集群安装和管理界面,解决开源版本管理困难的问题;5)提供跨数据中心的HBase数据库虚拟大表功能,用户应用可实现位置透 明的数据读写访问和全局汇总统计;6)实现HBase数据库复制和备份功能,并提供单向、双向复制功能,实现异地容灾,以及其他针对企业需要的增强功能;7)实现对HBase的不同表或不同列族的复制份数精细控制5、以上三类产品横向对比分析陸n 产品主要优势应用案例IBMIBM Platform Symphony并行高效;支持结构化深圳市儿童医院IBM集成平台与商业智和非结构化;可在多种硬件平台上扩展能

50、分析系统;民生银行流水查询分析系统,产业链金融管理系统;青岛银行 PureData for TransactionsBigSheets :基于浏览器的图形化工具,以电子表 单的方式来实现数据的分析、挖掘。业务处理系统;Intel华为浪潮HBse高速及时分析;针对行业的不同需求功能增强; 稳定易部署、易管理;HBse改进和创新,支 持实时查询、快速查询、复杂查询;HiveQL语言实时查询比MR方式性能快几十倍;支持准实时的全 文检索功能和模糊查询功能开源到企业级的蜕变,采纳社区精华,去除开源 bug,提升组件性能。易安装、易管理、易开发提供多源数据集成、高效存储、分布式计算与调度、高并发访问以及分析挖掘能力,可应对GB-PB量级的海量异构数据场景,帮助客户轻松构建数据的全移动用户上网记录查询与分析系统;中国联通3G详单查询系统;智能交通大数据平台分析系统;福建移动基于大数据的精准营销工作; 农行完成海量数据分布式计算平台; 招商银行大数据处理平台建设;工商银行分布式日志收集与分析平台; 江苏移动详单大数据平台; 湖北省工商行政管理局信息化建设; 贵州气象局建设大数据创新实验室; 烟台银行打造一站式“信贷工厂”;生命周期管理体系

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!