Hadoop Hbase适合存储哪类数据?(转)
2010-01-26 17:05
211 查看
最适合使用Hbase存储的数据是非常稀疏的数据(非结构化或者半结构化的数据)。Hbase之所以擅长存储这类数据,是因为Hbase是column-oriented列导向的存储机制,而我们熟知的RDBMS都是row- oriented行导向的存储机制(郁闷的是我看过N本关于关系数据库的介绍从来没有提到过row- oriented行导向存储这个概念)。在列导向的存储机制下对于Null值得存储是不占用任何空间的。比如,如果某个表 UserTable有10列,但在存储时只有一列有数据,那么其他空值的9列是不占用存储空间的(普通的数据库MySql是如何占用存储空间的呢?)。
Hbase适合存储非结构化的稀疏数据的另一原因是他对列集合 column families 处理机制。 打个比方,ruby和python这样的动态语言和c++、java类的编译语言有什么不同? 对于我来说,最显然的不同就是你不需要为变量预先指定一个类型。Ok ,现在Hbase为未来的DBA也带来了这个激动人心的特性,你只需要告诉你的数据存储到Hbase的那个column families 就可以了,不需要指定它的具体类型:char,varchar,int,tinyint,text等等。
Hbase还有很多特性,比如不支持join查询,但你存储时可以用:parent-child tuple(不是很懂) 的方式来变相解决。
由于它是Google BigTable的 Java 实现,你可以参考一下:google bigtable 。
下面3副图是Hbase的架构、数据模型和一个表格例子,你也可以从:Hadoop summit 上 获取更多的信息。
![](http://images.cnblogs.com/cnblogs_com/chenjingjing/ajf3xwhqsr2q_1624fqfd8hcv_b.png)
![](http://images.cnblogs.com/cnblogs_com/chenjingjing/ajf3xwhqsr2q_1625fddxt2d8_b.png)
Hbase适合存储非结构化的稀疏数据的另一原因是他对列集合 column families 处理机制。 打个比方,ruby和python这样的动态语言和c++、java类的编译语言有什么不同? 对于我来说,最显然的不同就是你不需要为变量预先指定一个类型。Ok ,现在Hbase为未来的DBA也带来了这个激动人心的特性,你只需要告诉你的数据存储到Hbase的那个column families 就可以了,不需要指定它的具体类型:char,varchar,int,tinyint,text等等。
Hbase还有很多特性,比如不支持join查询,但你存储时可以用:parent-child tuple(不是很懂) 的方式来变相解决。
由于它是Google BigTable的 Java 实现,你可以参考一下:google bigtable 。
下面3副图是Hbase的架构、数据模型和一个表格例子,你也可以从:Hadoop summit 上 获取更多的信息。
![](http://images.cnblogs.com/cnblogs_com/chenjingjing/ajf3xwhqsr2q_1624fqfd8hcv_b.png)
![](http://images.cnblogs.com/cnblogs_com/chenjingjing/ajf3xwhqsr2q_1625fddxt2d8_b.png)
![](http://images.cnblogs.com/cnblogs_com/chenjingjing/ajf3xwhqsr2q_1628gd2tq5gn_b.png)
相关文章推荐
- Hadoop Hbase适合存储哪类数据?
- Hadoop Hbase适合存储哪类数据?
- Hadoop Hbase适合存储哪类数据?
- 揭秘FaceBook Puma演变及发展——FaceBook公司的实时数据分析平台是建立在Hadoop 和Hive的基础之上,这个根能立稳吗?hive又是sql的Map reduce任务拆分,底层还是依赖hbase和hdfs存储
- 【Hadoop & Hbase】大数据存储系统编程_读出写入
- 专家讲解 Hadoop:HBASE松散数据存储设计
- Hadoop数据存储—Hbase
- Hadoop数据存储—Hbase
- HBase是否适合存储Blob数据?
- Hadoop HBase概念学习系列之HBase里的存储数据流程(二十三)
- 基于Hadoop、HBase的数据分析挖掘管理平台-舆情预警监控系统 (系统总体设计图)
- Avro技术应用_11. 将 HBase 数据存储为 Avro格式的二进制数据 -- 待完善
- 基于NoSQL数据库的空间数据存储(一)---Hadoop的构建
- Hadoop Mapper 阶段将数据直接从 HDFS 导入 Hbase
- Hadoop数据工具sqoop,导入HDFS,HIVE,HBASE,导出到oracle
- 大数据Hadoop核心架构HDFS+MapReduce+Hbase+Hive内部机理详解
- HBase-3.HBase读数据和存储数据原理
- 数据科学之hadoop大数据存储技术研究之路(一)
- 大数据开发利器:Hadoop(9) HBase进阶第2讲 HBase过滤器
- hadoop、hbase的数据备份数(dfs.replication)问题