100个免费货源网站,漫画网站建设教程,北京app手机网站制作,南开区网站建设文章目录目录1.HBase概述1.1BigTable1.2 HBase简介1.3 HBase和传统的关系型数据库之间的区别2.HBase访问接口3.HBase数据模型3.1 数据模型概述3.2 数据模型相关概念3.3 数据坐标3.4 概念视图3.5 物理视图3.6 面向列的存储4.HBase的实现原理4.1 HBase功能组件4.2 表和region4.3 …
文章目录目录1.HBase概述1.1BigTable1.2 HBase简介1.3 HBase和传统的关系型数据库之间的区别2.HBase访问接口3.HBase数据模型3.1 数据模型概述3.2 数据模型相关概念3.3 数据坐标3.4 概念视图3.5 物理视图3.6 面向列的存储4.HBase的实现原理4.1 HBase功能组件4.2 表和region4.3 region的定位5.HBase运行机制5.1 HBase系统架构5.2 region服务器工作原理5.3 Store工作原理5.4 HLog工作原理6.HBase应用方案6.1 HBase实际应用过程中的性能优化方案6.2 HBase性能监测6.3 在HBase上构建SQL引擎6.4 构建HBase二级索引列的直接索引7.HBase编程实践7.1 HBase的安装和配置7.2 HBase常用的Shell命令7.3 HBase常用的JAVA API及应用8.总结目录
1.HBase概述
1.1BigTable 1.2 HBase简介 HBase是一个高可靠、高性能、面向列、可伸缩的分布式数据库是谷歌BigTable的开源实现主要用来存储非结构化和半结构化的松散数据。HBase的目标是处理非常庞大的表可以通过水平扩展的方式利用廉价计算机集群处理由超过10亿行数据和数百万列元素组成的数据表 1.3 HBase和传统的关系型数据库之间的区别 2.HBase访问接口 3.HBase数据模型
3.1 数据模型概述
HBase是一个稀疏、多维度、排序的映射表这张表的索引是行键、列族、列限定符列名和时间戳每个值是一个未经解释的字符串没有数据类型用户在表中存储数据每一行都有一个可排序的行键和任意多的列表在水平方向由一个或者多个列族组成一个列族中可以包含任意多个列同一个列族里面的数据存储在一起列族支持动态扩展可以很轻松地添加一个列族或列无需预先定义列的数量以及类型所有列均以字符串形式存储用户需要自行进行数据类型转换HBase中执行更新操作时并不会删除数据旧的版本而是生成一个新的版本旧有的版本仍然保留这是和HDFS只允许追加不允许修改的特性相关的
3.2 数据模型相关概念 3.3 数据坐标 3.4 概念视图 3.5 物理视图 从上面的概念师徒我们可以看到有很多行的记录在某些列簇的列上面时没有数据的如果直接按照概念视图进行存储则会造成很大的空间上的浪费所以物理视图中将概念视图中按照列簇进行拆分成多个表格然后对拆分后的表格进行存储。 3.6 面向列的存储 行式存储指的是将一条记录以行的方式进行存储列式存储指的是将一条记录按照列的方式进行存储。 列式存储相比于行式存储的优势
由于在实际的数据分析应用中我们常常感兴趣的是某一列的数据的一个分布情况所以按照列存储的话很方便的将数据按照属性列名提取出来。如果按照行存储则要遍历每一行然后将数据进行拼接效率低下。每条记录的相同列的数据的取值类型相近利于数据的存储可以动态的实现列的添加而不像传统的关系型数据库在确定表的结构后便无法进行修改。
4.HBase的实现原理
4.1 HBase功能组件 4.2 表和region 4.3 region的定位 元数据描述数据的数据 5.HBase运行机制
5.1 HBase系统架构 5.2 region服务器工作原理 5.3 Store工作原理 5.4 HLog工作原理 6.HBase应用方案
6.1 HBase实际应用过程中的性能优化方案 默认的HBase行健时按照升序存储的而实际应用中常常时查看最新的几条记录所以实际过程中会将HBase的存储修改为降序存储。 6.2 HBase性能监测
Master-status(自带) Ganglia OpenTSDB Ambari
6.3 在HBase上构建SQL引擎 6.4 构建HBase二级索引列的直接索引 7.HBase编程实践
参考网站
7.1 HBase的安装和配置 7.2 HBase常用的Shell命令 7.3 HBase常用的JAVA API及应用 8.总结