社区
Hadoop生态社区
帖子详情
为什么Hbase能实现快速的查询
爱似流星z
2014-07-29 09:42:00
请教大神,如题 为什么Hbase能实现快速的查询
...全文
7502
5
打赏
收藏
为什么Hbase能实现快速的查询
请教大神,如题 为什么Hbase能实现快速的查询
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
一支支穿云箭
2016-11-18
打赏
举报
回复
厉害。。。讲解的简单易懂。
YHL27
2014-08-08
打赏
举报
回复
good,长姿势了。。
zzhua100
2014-08-06
打赏
举报
回复
B:实时查询 实时查询,可以认为是从内存中查询,一般响应时间在1秒内。HBase的机制是数据先写入到内存中,当数据量达到一定的量(如128M),再写入磁盘中, 在内存中,是不进行数据的更新或合并操作的,只增加数据,这使得用户的写操作只要进入内存中就可以立即返回,保证了HBase I/O的高性能。 实时查询,即反应根据当前时间的数据,可以认为这些数据始终是在内存的,保证了数据的实时响应。
zzhua100
2014-08-06
打赏
举报
回复
6
你的快速是指什么? 是根据亿级的记录中快速查询,还是说以实时的方式查询数据。 A:如果快速查询(从磁盘读数据),hbase是根据rowkey查询的,只要能快速的定位rowkey, 就能实现快速的查询,主要是以下因素: 1、hbase是可划分成多个region,你可以简单的理解为关系型数据库的多个分区。 2、键是排好序了的 3、按列存储的 首先,能快速找到行所在的region(分区),假设表有10亿条记录,占空间1TB, 分列成了500个region, 1个region占2个G. 最多读取2G的记录,就能找到对应记录; 其次,是按列存储的,其实是列族,假设分为3个列族,每个列族就是666M, 如果要查询的东西在其中1个列族上,1个列族包含1个或者多个HStoreFile,假设一个HStoreFile是128M, 该列族包含5个HStoreFile在磁盘上. 剩下的在内存中。 再次,是排好序了的,你要的记录有可能在最前面,也有可能在最后面,假设在中间,我们只需遍历2.5个HStoreFile共300M 最后,每个HStoreFile(HFile的封装),是以键值对(key-value)方式存储,只要遍历一个个数据块中的key的位置,并判断符合条件可以了。 一般key是有限的长度,假设跟value是1:19(忽略HFile上其它块),最终只需要15M就可获取的对应的记录,按照磁盘的访问100M/S,只需0.15秒。 加上块缓存机制(LRU原则),会取得更高的效率。
tchqiq
2014-08-06
打赏
举报
回复
基于列的存储~按列查~嗯~不知道了~同求大神给个简单的解释
Hbase
行键设计(rowkey)
实现
多条件
查询
HBASE
的使用跟业务逻辑有很强的关联性,就像本文里提到的例子使用ElasticSearch更合适。
HBASE
适合那种使用key-value模式的
快速
查询
,多字段
查询
还是不适合它。 所以大家如果看本文的话,就全当是加深对
hbase
过滤器的理解吧,内容概括起来就是
实现
一个使用位运算的比较器。本文主要内容是通过合理
hbase
行键(rowkey)设计
实现
快速
的多条件
查询
,所采用的方法将所有要用于
查询
中的列经过一些处理后
C#使用Thrift2操作
HBase
数据库
C#使用Thrift2访问
Hbase
库,
实现
了简单的增、删、改、查。 便于大家
快速
入门。
HBase
如何
快速
查询
HBase
能提供实时计算服务主要原因是由其架构和底层的数据结构决定的,即由LSM-Tree(Log-Structured Merge-Tree) + region分区 + Cache决定——客户端可以直接定位到要查数据所在的HRegion server服务器,然后直接在服务器的一个region上查找要匹配的数据,并且这些数据部分是经过cache缓存的。
HBase
会将数据保存到内存中,...
为什么
HBase
数据
查询
快速
快速
查询
可以分作两方面: 一是根据亿级的记录中
快速
查询
,二是以实时的方式
查询
数据。 A:如果
快速
查询
(从磁盘读数据),
hbase
是根据rowkey
查询
的,只要能
快速
的定位rowkey, 就能
实现
快速
的
查询
,主要是以下因素: 1、
hbase
是可划分成多个region,你可以简单的理解为关系型数据库的多个分区。 2、键是排好序了的 3、按列存储的
HBase
学习之二:
hbase
分页
查询
在
hbase
中可以使用scan做一些简单的
查询
,但是要
实现
多条件复杂
查询
还需要借助filter(过滤器)来完成,甚至还可以自定义filter
实现
个性化的需求,项目中需要分页
查询
,记录了其中的核心代码,以便于查阅。 zookeeper.properties配置文件内容:
hbase
_zookeeper_quorum=xxx.com,xxx.com,xxx.com zookeeper...
Hadoop生态社区
20,808
社区成员
4,690
社区内容
发帖
与我相关
我的任务
Hadoop生态社区
Hadoop生态大数据交流社区,致力于有Hadoop,hive,Spark,Hbase,Flink,ClickHouse,Kafka,数据仓库,大数据集群运维技术分享和交流等。致力于收集优质的博客
复制链接
扫一扫
分享
社区描述
Hadoop生态大数据交流社区,致力于有Hadoop,hive,Spark,Hbase,Flink,ClickHouse,Kafka,数据仓库,大数据集群运维技术分享和交流等。致力于收集优质的博客
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章