Hbase-面试题

1. Hbase-region切分

  1. 自动切分,默认情况下
    1. 2.0版本,第一次region的数据达到256M,会进行切分,以后就是每达到10G切分一次,切分完成后,会进行负载均衡,均衡到其他regionserver
  2. 预分区+自定义rowkey
    1. 可以理解为预切分
    2. 比如预分区,每个regionserver会有10个region,每个region都有startrow和endrow
    3. 生产上必须要用预分区+自定义rowkey
    4. 预分区好了之后,即使没有数据,也会新建10个region的空文件
    5. 以后存数据的时候,会均匀的存到每个region中

2. Hbase-大合并和小合并

大合并:将过期数据删除,将文件进行合并 企业中7天进行一次

小合并:将过期数据标记,但是不会删除,只会合并邻近的文件

3. Hbase-内存数据刷写

  1. 手动刷写
    1. 用命令刷写
  2. 定时刷写
  3. 设置参数
    1. MemStore达到128M
    2. 如果MemStore比较多,而且都没有达到128M,可以设置region的大小为512M

4. Hbase-二级索引

4.1. 问题

hbase查询如果过滤条件不是rowkey,就会全局遍历

举例:

如果根据name过滤,就会全局遍历

sql 复制代码
id    name    age  
1     ikun    19   

4.2. 解决

添加二级索引,其实就是再新建一个表,以name为rowkey

sql 复制代码
name  id  
ikun  1 
相关推荐
Rsun045511 小时前
MySQL相关知识点
数据库·mysql
浩哲Zhe1 小时前
SQL基础
数据库·sql
小不点区块3 小时前
大舍传媒:如何在海外新闻媒体发稿报道摩洛哥?
大数据·人工智能·驱动开发·阿里云
T0uken3 小时前
【Git】远程仓库操作
大数据·git
兔老大RabbitMQ3 小时前
mysql之比较两个表的数据
数据库·mysql·算法·oracle·哈希算法
VNGRY3 小时前
MySQL-数据库管理:优化、安全、合规与迁移的全面解析
数据库·mysql
C or Cpp3 小时前
nodejs sqlite模块
数据库·sqlite
TangAcrab3 小时前
sql 清空表,并清空自增 id
数据库·sql·清空数据库表·清空自增id
InterestingFigure4 小时前
redis的时延监控
数据库·redis·缓存
搬砖写代码4 小时前
MySQL数据库文件在Linux下存放位置
linux·数据库·mysql