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—列族数据库的术语的更多相关文章

  1. 数据源、数据集、同步任务、数据仓库、元数据、数据目录、主题、来源系统、标签、增量识别字段、修改同步、ES索引、HBase列族、元数据同步、

    数据源.数据集.同步任务.数据仓库.元数据.数据目录.主题.来源系统.标签. 增量识别字段.修改同步.ES索引.HBase列族.元数据同步.DS.ODS.DW.DM.zk集群地址 == 数据源 数据源 ...

  2. HBase列族高级配置

    转自:http://blog.sina.com.cn/s/blog_ae33b83901018euz.html ------------------ HBase有几个高级特性,在你设计表时可以使用.这 ...

  3. HBASE列族不能太多的真相 (一个table有几个列族就有几个 Store)

    HRegionServer内部管理了一系列HRegion对象,每个HRegion对 应了table中的一个region,HRegion中由多 个HStore组成.每个HStore对应了Table中的一 ...

  4. 从HBase底层原理解析HBASE列族不能设计太多的原因?

    在之前的文章<深入探讨HBASE>中,笔者详细介绍了: HBase基础知识(包括简介.表结构).系统架构.数据存储 WAL log和HBase中LSM树的应用 HBase寻址机制 mino ...

  5. HBase 列族数量为什么越少越好

    http://blog.csdn.net/r1soft/article/details/63253985 http://www.cnblogs.com/nucdy/p/5965113.html

  6. NoSQL 列族数据库

  7. Hbase之必要时取出请求的行(列族所有数据)

    import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.CellScanner; import org. ...

  8. Hbase与Oracle比较(列式数据库与行式数据库)

    Hbase与Oracle比较(列式数据库与行式数据库) 1 主要区别 Hbase适合大量插入同时又有读的情况 Hbase的瓶颈是硬盘传输速度,Oracle的瓶颈是硬盘寻道时间.   Hbase本质上只 ...

  9. hbase源码系列(四)数据模型-表定义和列族定义的具体含义

    hbase是一个KeyValue型的数据库,在<hbase实战>描述它的逻辑模型[行键,列族,列限定符,时间版本],物理模型是基于列族的.但实际情况是啥?还是上点代码吧. HTableDe ...

随机推荐

  1. 【git】——简单用法

    git 更新远程代码到本地 git fetch origin master git merge origin/master 冲突: Your local changes to the followin ...

  2. mxonline实战7,模板继承和模板标签

        对应github地址:https://github.com/pshyms/django/tree/master/mxonline/7_day     一. 定制不同页面中样式相同,内容不同的模 ...

  3. Mutation Observer

    MutationEvent Mutation Observer 变动观察器, 等待所有脚本任务完成后,才会运行(即异步触发方式) 把DOM变动记录封装成一个数组进行处理,而不是一条条个别处理DOM变动 ...

  4. iOS学习笔记(8)——GCD初探

    1. AppDelegate.m #import "AppDelegate.h" #import "ViewController.h" @interface A ...

  5. Protocol Buffers介绍及例子

    Protocol Buffers介绍及例子 Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序列化.它很适合做数据存储或数据交换格式.可用于通讯协 ...

  6. leetcode-55-跳跃游戏

    题目描述: 给定一个非负整数数组,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度. 判断你是否能够到达最后一个位置. 示例 1: 输入: [2,3,1,1,4] 输出: ...

  7. leetcode-867-Transpose Matrix(矩阵由按行存储变成按列存储)

    题目描述: Given a matrix A, return the transpose of A. The transpose of a matrix is the matrix flipped o ...

  8. commonjs, nodejs, npm, browserify, watchify

    CommonJS CommonJS是一套规范,定义了javascript API.其中为了解决javascript模块化的问题,引入require和export NodeJS nodeJS是服务器端j ...

  9. Spring Boot 笔记汇总

    使用IDEA搭建Spring Boot入门项目 从零开始完整搭建 Spring-Boot 项目开发框架的教程 IDEA通过Maven WebApp archetype 创建Spring boot项目骨 ...

  10. shell-005:备份。

    #  这个案例感觉有点绕,如果是本地机器备份完全没必要.下面带颜色的写法值得我们借鉴,所以还是做下笔记吧 #!/bin/bash # 找出//目录下所有txt结尾的文件,且形成一个列表清单的文件 fi ...