Hbase简易知识理论

前言

	:HBase是一个分布式的、面向列的开源数据库

特点

	1.非关系型数据库,可以存储海量数据
	2.提供了低延迟的数据查询能力。低延迟指的是能够在秒级甚至毫秒级给出响应
	3.面向列存储的数据库。

行列存储比较

	在数据写入上的对比
		1)行存储的写入是一次完成。如果这种写入建立在操作系统的文件系统上,
		   可以保证写入过程的成功或者失败,数据的完整性因此可以确定。
		   性因此可以确定。
		
		2)列存储由于需要把一行记录拆分成单列保存,写入次数明显比行存储多
		 (意味着磁头调度次数多,而磁头调度是需要时间的,一般在1ms~10ms),
		  再加上磁头需要在盘片上移动和定位花费的时间,实际时间消耗会更大。
		  所以,行存储在写入上占有很大的优势。

        3)还有数据修改,这实际也是一次写入过程。不同的是,数据修改是对磁盘
           上的记录做删除标记。行存储是在指定位置写入一次,
           列存储是将磁盘定位到多个列上分别写入,这个过程仍是行存储的列数倍
           所以,数据修改也是以行存储占优。

	在数据读取上的对比
		1)数据读取时,行存储通常将一行数据完全读出,如果只需要其中几列数据
		   的情况,就会存在冗余列,出于缩短处理时间的考量,消除冗余列的过程
		   通常是在内存中进行的。

        2)列存储每次读取的数据是集合的一段或者全部,不存在冗余性问题。
        
    	3)两种存储的数据分布。由于列存储的每一列数据类型是同质的,不存在
    		二义性问题。比如说某列数据类型为整型(int),那么它的数据集合一定是
    		整型数据。这种情况使数据解析变得十分容易。相比之下,行存储则要复杂
    		得多,因为在一行记录中保存了多种类型的数据,数据解析需要在多种数据类
    		型之间频繁转换,这个操作很消耗CPU,增加了解析的时间。所以,列存储的
    		解析过程更有利于分析大数据。

优缺点比较

  	   1)行存储的写入是一次性完成,消耗的时间比列存储少,并且能够保证数据的完
  	      整性,缺点是数据读取过程中会产生冗余数据,如果只有少量数据,此影响可以
   	      忽略;数量大可能会影响到数据的处理效率。

       2)列存储在写入效率、保证数据完整性上都不如行存储,它的优势是在读取过程,
          不会产生冗余数据,这对数据完整性要求不高的大数据处理领域,比如互联网
          犹为重要。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值