HBase面试题总结1「建议收藏」

HBase面试题总结1「建议收藏」hbase的特点是什么??1)hbase是一个分布式的基于列式存储的数据库,基于Hadoop的hdfs存储,zookeeper管理。2)hbase适合存储半结构化和非结构化数据,对于结构化数据字段不够确定或者杂乱无章很难按一个概念去抽取数据;3)hbase为空的纪录不会被存储;4)基于的表包含rowkey,时间戳,列族,新写入数据时,时间戳更新,同时可以查询到以前的版本;5)hbase是…

大家好,又见面了,我是你们的朋友全栈君。

hbase的特点是什么??
1)hbase是一个分布式的基于列式存储的数据库,基于Hadoop的hdfs存储,zookeeper管理。
2)hbase适合存储半结构化和非结构化数据,对于结构化数据字段不够确定或者杂乱无章很难按一个概念去抽取数据;
3)hbase为空的纪录不会被存储;
4)基于的表包含rowkey,时间戳,列族,新写入数据时,时间戳更新,同时可以查询到以前的版本;
5)hbase是主从架构,hmaster作为主节点,hregionserver作为从节点。
描述一下hbase的rowkey的设计原则
1)rowkey的长度原则
rowkey是一个二进制码流,rowkey的长度被很多开发者 建议设计在10-100字节,不过建议越短越好,不要超过16字节。
原因如下:
a、数据的持久化文件hfile中是按照keyvalue存储的,如果rowkey过长比如100个字节,1000万列数据光rowkey就要占用100*100万=10亿字节,将近1G数据,着就会极大的影响hfile的存储效率。
b、menstore将缓存部分数据到内存,如果rowkey字段过长内存的有效利用效率会降低,系统将无法缓存更多的数据,这会降低检索效率,因此rowkey的长度越短越好,;
c、目前操作系统都是64位系统,内存8字节对齐,控制在16字节,8字节的整数倍利用操作系统的最佳特性。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/140928.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 自定义BeanUtils的populate方法实现「建议收藏」

    自定义BeanUtils的populate方法实现「建议收藏」1.1.1功能分析publicstaticvoidpopulate(Objectbean,Mapmap)//修改任意对象中的属性,为传入Map集合中的键和值思路:1.获取传入对象的字节码对象2.获取map集合中所有的键和值3.调用Class中的getDecl…

    2022年7月26日
  • C++ Boost全库简介

    C++ Boost全库简介

    2021年9月2日
  • 指令重排的意义[通俗易懂]

    指令重排的意义[通俗易懂]现代计算机由三大部分组成(已经转化为以存储器为中心)1.CPU(CentralProcessingUnit)中央处理器,核心部件为ALU(ArithmeticLogicUnit,算术逻辑单元)和CU(ControlUnit,控制单元)2.I/O设备(受CU控制)3.主存储器(MainMemory,MM),分为RAM(随机存储器)和ROM(只读存储器)//CPU与MM合…

    2022年10月9日
  • 1553B总线控制器61580使用

    1553B总线控制器61580使用这里写自定义目录标题收藏一篇关于61580使用的文章,侵删!原文地址:http://emesjx.spaces.eepw.com.cn/articles/article/item/1000231、BU-61580有“缓冲”和“透明”2种存储模式,前者使用BU-61580内部4Kx16bit缓冲区,后者使用外部RAM作为数据缓冲区,最大可达64Kx16bit。2、BU-61580的缓冲模式又…

    2022年6月5日
  • JAVA三元运算符_java中三元运算符详解

    JAVA三元运算符_java中三元运算符详解一:三元运算符条件表达式?取值1:取值2三元运算符是ifelse或者ifelseifelse的简写形式,可以使代码看起来简洁些。privateStringternary1(intfirst){System.out.println("=================================================================…

    2022年8月30日
  • SELinux深入理解

    SELinux深入理解

    2021年10月27日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号