再聊Hbase架构与原理.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
再聊Hbase架构与原理 1、Hadoop生态圈 hadoop全部应用都是构建于hdfs(它供应高牢靠的底层存储支持,几乎已经成为分布式文件存储系统现实上的工业标准)之上的分布式列存储系统,次要用于海量结构化数据存储。通过Hadoop生态圈,可以看到HBase的身影,可见HBase在Hadoop的生态圈是扮演这一个重要的角色那就是 实时、分布式、高维数据 的数据存储; 2、HBase简介 – HBase – Hadoop Database,是一个高牢靠性、高功能、面对列、可伸缩、 实时读写的分布式数据库 – 利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase中的海量数据,利用Zookeeper作为其分布式协同服务 – 次要用来存储非结构化和半结构化的松散数据(列存NoSQL数据库) Hbase特性: 强全都性读写: HBase 不是 最终全都性(eventually consistent) 数据存储这让它很适合高速计数聚合类任务。 自动分片(Automatic sharding):HBase表通过region分布在集群中。数据增长时,region会自动分割并重新分布。 RegionServer 自动毛病转移 Hadoop/HDFS 集成: HBase 支持本机外HDFS 作为它的分布式文件系统。 MapReduce: HBase 通过MapReduce支持大并发处理, HBase 可以同时做源和目标. Java 客户端 API: HBase 支持易于使用的 Java API 进行编程访问. Thrift/REST API:HBase 也支持Thrift和 REST 作为非Java 前端. Block Cache 和 Bloom Filters: 对于大容量查询优化, HBase支持 Block Cache 和 Bloom Filters。 运维管理: HBase供应内置网页用于运维视角和JMX 度量. 3、HBase数据模型 以关系型数据的思维下会感觉,上面的表格是一个5列4行的数据表格,但是在HBase中这种理解是错误的,其实在HBase中上面的表格只是一行数据; Row Key: 打算一行数据的独一标识 RowKey是依据字典挨次排序的。 Row key最多只能存储64k的字节数据。 Column Family列族(CF1、CF2、CF3) qualifier列: HBase表中的每个列都归属于某个列族,列族必需作为表模式(schema) 定义的一部分事后给出。如create ‘test’, ‘course’; 列名以列族作为前缀,每个“列族”都可以有多个列成员(column,每个列族中可以存放几千~上千万个列);如 CF1:q1, CF2:qw,新的列族成员(列)可以随后按需、动态加入,Family下面可以有多个Qualifier,所以可以简约的理解为,HBase中的列是二级列,也就是说Family是第一级列,Qualifier是其次级列。两个是父子关系。 权限把握、存储以及调优都是在列族层面进行的; HBase把同一列族里面的数据存储在同一名目下,由几个文件保存。 目前为止HBase的列族能能够很好处理最多不超过3个列族。 Timestamp时间戳: 在HBase每个cell存储单元对同一份数据有多个版本,依据独一的时间戳来区分每个版本之间的差异,不同版本的数据依据时间倒序排序,最新的数据版本排在最前面。 时间戳的类型是64位整型。 时间戳可以由HBase(在数据写入时自动)赋值,此时时间戳是精确到毫 秒的当前系统时间。 时间戳也可以由客户显式赋值,假如应用程序要避开数据版本冲突, 就必需本人生成具有独一性的时间戳。 Cell单元格: 由行和列的坐标交叉打算; 单元格是有版本的(由时间戳来作为版本); 单元格的内容是未解析的字节数组(Byte[]),cell中的数据是没有类型的,全部是字节码方式存贮。 由{row key,column(= +),version}独一确定的单元。 4、HBase体系架构 Client 包含访问HBase的接口并维护cache来加快对HBase的访问 Zookeeper 保证任何时候,集群中只要一个master 存贮全部Region的寻址入口。 实时监控Region server的上线和下线信息。并实时通知Master 存储HBase的schema和table元数据 Master 为Region server安排region 担任Region server的负载均衡 发觉失效的Region server并重新安排其上的region 管理用户对table的增删改操作 RegionServer Region server维护region,处理对

文档评论(0)

bob157641554 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档