HBase—列族数据库的术语
1. 列族数据库的基本组件
键空间,行键,列,列族
2. 什么是键空间 keyspace?
键空间 keyspace 是列族数据库的顶级数据结构,它在逻辑上能够容纳列族,行键以及与之相关的其他数据结构。
一般来说,每个数据库应用都会有自己的一套键空间。

键空间有些类似于关系型数据库的 schema
3. 什么是 row key ?
行键用来分辨列族数据库中各个数据行的身份,其用途与关系数据库的主键有些相似。
要想准确的定位某个数值,除了 row key,还需要用到列族的名称,列的名称,以及时间戳等版本排序机制。
row key 还可用来对数据进行分区和排序
HBase 中各个数据行是按照行键的字典顺序来保存的。
4. 什么是列?
列是数据库用来存放单个数值的数据结构。

HBase 只是把列值简单的表示成字节串,由于不需要验证数据类型,可以尽量降低数据库的开销。
5. 什么是列族?
列族是相关的列所构成的集合。
经常需要同时使用的列应该放在同一个列族之中,如客户的地址信息,诸如街道,城市,州,邮编
应该合在一起放在同一个列族里面。
列族数据库的各个数据行之间可以有所变化,而不需要像关系型数据库那样必须把每列都填满。
6. 列族数据库的列与关系数据库的列有何区别?
关系型数据库表格中的列没有列族数据库的列那样灵活。
1) 向关系数据库中添加新列必须修改 schema definition 纲要定义,而向列族数据库中添加新列则只需要在客户端程序里给出列名即可。
2) 列族数据库的各个数据行之间可以有所变化,而不需要向关系数据库那样必须把每列填满
3)关系型表格中所存放的数据不一定非要按照某种预先定义好的顺序来维护
7. 什么样的列应该归入同一个列族里面?
经常需要一起使用的那些列应该放到同一个列族里面,如客户的地址信息,街道、城市、州等就应该合在一起放在同一个列族里面
8. 分区在列族数据库中的用途是什么?
分区是数据库的一种逻辑子集。数据库通常会根据数据的某个属性来把一组数据存放在某个分区中。
列族数据库集群中的每个节点或服务器可以维护一个或者多个分区。
很多台服务器上面可能都分别存放着同一个分区的多份拷贝,这样能够提升读取和写入操作的成功率,即便在服务器出现故障时,
这些操作也依然可能成功。
HBase—列族数据库的术语的更多相关文章
- 数据源、数据集、同步任务、数据仓库、元数据、数据目录、主题、来源系统、标签、增量识别字段、修改同步、ES索引、HBase列族、元数据同步、
数据源.数据集.同步任务.数据仓库.元数据.数据目录.主题.来源系统.标签. 增量识别字段.修改同步.ES索引.HBase列族.元数据同步.DS.ODS.DW.DM.zk集群地址 == 数据源 数据源 ...
- HBase列族高级配置
转自:http://blog.sina.com.cn/s/blog_ae33b83901018euz.html ------------------ HBase有几个高级特性,在你设计表时可以使用.这 ...
- HBASE列族不能太多的真相 (一个table有几个列族就有几个 Store)
HRegionServer内部管理了一系列HRegion对象,每个HRegion对 应了table中的一个region,HRegion中由多 个HStore组成.每个HStore对应了Table中的一 ...
- 从HBase底层原理解析HBASE列族不能设计太多的原因?
在之前的文章<深入探讨HBASE>中,笔者详细介绍了: HBase基础知识(包括简介.表结构).系统架构.数据存储 WAL log和HBase中LSM树的应用 HBase寻址机制 mino ...
- HBase 列族数量为什么越少越好
http://blog.csdn.net/r1soft/article/details/63253985 http://www.cnblogs.com/nucdy/p/5965113.html
- NoSQL 列族数据库
- Hbase之必要时取出请求的行(列族所有数据)
import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.CellScanner; import org. ...
- Hbase与Oracle比较(列式数据库与行式数据库)
Hbase与Oracle比较(列式数据库与行式数据库) 1 主要区别 Hbase适合大量插入同时又有读的情况 Hbase的瓶颈是硬盘传输速度,Oracle的瓶颈是硬盘寻道时间. Hbase本质上只 ...
- hbase源码系列(四)数据模型-表定义和列族定义的具体含义
hbase是一个KeyValue型的数据库,在<hbase实战>描述它的逻辑模型[行键,列族,列限定符,时间版本],物理模型是基于列族的.但实际情况是啥?还是上点代码吧. HTableDe ...
随机推荐
- 洛谷P4250 [SCOI2015]小凸想跑步(半平面交)
题面 传送门 题解 设\(p\)点坐标为\(x_p,y_p\),那么根据叉积可以算出它与\((i,i+1)\)构成的三角形的面积 为了保证\(p\)与\((0,1)\)构成的面积最小,就相当于它比其它 ...
- 自定义JSON返回字段
今天看到一篇文章,里面介绍了如何自定义返回json字段,感觉挺好用的,这里学习一下. 实现工具类: /** * @author fengzp * @date 17/2/20上午10:34 * @ema ...
- mycat引起的insert后马上select不到数据的故障分析
由于有2个task表t_task和e_task,代码中Insert了t_task后马上select t_task然后把结果Insert到e_task,结果发现经常e_task会没有任何数据. 原因分析 ...
- Markdown入门简介
参考 http://sspai.com/25137 作者: Te_Lee 文章来源: 少数派 Markdown入门简介(使用工具Haroopad) 一.使用的工具----haroopad(http:/ ...
- jmeter - jp@gc - Active Threads Over Time(多台负载用户)
问题: 线程数设置:30,远程启动2台机子 查看 jp@gc - Active Threads Over Time图,发现只统计了1台机子的线程数,线程数并不是60: 解决办法: 官方文档中提到: 1 ...
- JSP页面开发知识点整理
刚学JSP页面开发,把知识点整理一下. ----------------------------------------------------------------------- JSP语法htt ...
- Maven 依赖管理问题小计
刚学Maven,遇到点小问题,记录一下.https://maven.apache.org/ 问题的起因是项目中使用了 Hibernate Validator ,但是运行起来后总是不能按照设置的注解校验 ...
- 简单创建一个完整的struts2框架小程序
要完成一个struts2框架的搭建, 1.首先应该从官网上下载最新的jar包,网络连接:http://struts.apache.org/download.cgi#struts2514.1,选择下载F ...
- (转)mysql数据库高可用高扩展性架构方案实施
http://shanhu.blog.51cto.com/1293405/1212605-----mysql数据库高可用高扩展性架构方案实施
- eclipse中怎样添加项目至SVN资源库
转自:https://jingyan.baidu.com/article/642c9d341caac0644a46f73e.html 这是一个SVN最基本的一个使用方法,转一篇别人写的,方便日后查询. ...