1、Hbase表结构:

  可以看成map映射,里面有行键,行键是按照字母顺序排序。行键下面是列族,每个列族可以有不同数量的列甚至是没有列。每个列里面包含着不同时间版本的列的值。

  行键:是按照字母的顺序排序的,这样做的好处就是在扫描表的时候感兴趣的项,是在相邻的。给定的行可以在每个列族中有任意数量的列,或者根本没有列,不能用二维表的思想去想象。

列族:以把它想象成map的map。一个列族可以有任意数量的列。

      最后一个维度是时间。所有数据都使用整数时间戳(从epoch开始的秒数)或您选择的另一个整数进行版本控制。客户端可以在插入数据时指定时间戳。

{
// ...
"aaaaa" : {
"A" : {
"foo" : "y",
"bar" : "d"
},
"B" : {
"" : "w"
}
},
"aaaab" : {
"A" : {
"foo" : "world",
"bar" : "domination"
},
"B" : {
"" : "ocean"
}
},
// ...
}

  在大多数情况下,每个列族可能有自己的规则来决定一个给定单元格要保留多少个版本(一个单元格由它的rowkey/列对标识),应用程序将简单地请求给定单元格的数据,而不指定时间戳。在这种情况下,Hbase/BigTable将返回最新的版本(具有最高时间戳的版本),因为它按时间倒序存储它们。

  如果应用程序在给定的时间戳上请求给定的行,Hbase将返回时间戳小于或等于所提供的单元格数据。

  使用我们假想的Hbase表,查询“aaaaa”/“A:foo”的行/列将返回“y”,而查询“aaaaa”/“A:foo”/10的行/列/时间戳将返回“m”。查询“aaaaa”/“a:foo”/2的行/列/时间戳将返回空结果。

{
// ...
"aaaaa" : {
"A" : {
"foo" : {
: "y",
: "m"
},
"bar" : {
: "d",
}
},
"B" : {
"" : {
: "w"
: "o"
: "w"
}
}
},
// ...
}

https://dzone.com/articles/understanding-hbase-and-bigtab

2、hbase shell语句

启动shell:

进入到Hmaster的bin目录下:./hbase shell

建表语句:指定表名、列族  create ‘score’,'grade','cource'

Hbase表结构的更多相关文章

  1. 4 hbase表结构 + hbase集群架构及表存储机制

      本博文的主要内容有    .hbase读取数据过程 .HBase表结构 .附带PPT http://hbase.apache.org/ 读写的时候,就需要用hbase了,换句话说,就是读写的时候. ...

  2. hbase表结构 + hbase集群架构及表存储机制

    本博文的主要内容有    .hbase读取数据过程 .HBase表结构 .附带PPT http://hbase.apache.org/ 读写的时候,就需要用hbase了,换句话说,就是读写的时候.需要 ...

  3. HBase 的表结构

    HBase 的表结构 2016-10-13 杜亦舒 HBase 是一个NoSQL数据库,用于处理海量数据,可以支持10亿行百万列的大表,下面就了解一下数据是如何存放在HBase表中的 关系型数据库的表 ...

  4. Hbase之修改表结构

    import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.HBaseConfiguration; impo ...

  5. HBase -ROOT-和.META.表结构

    在HBase中,大部分的操作都是在RegionServer完成的,Client端想要插入,删除,查询数据都需要先找到相应的RegionServer.什么叫相应的RegionServer?就是管理你要操 ...

  6. HBase -ROOT-和.META.表结构(region定位原理)

    在HBase中,大部分的操作都是在RegionServer完成的,Client端想要插入,删除,查询数据都需要先找到相应的RegionServer.什么叫相应的RegionServer?就是管理你要操 ...

  7. hbase操作(shell 命令,如建表,清空表,增删改查)以及 hbase表存储结构和原理

    两篇讲的不错文章 http://www.cnblogs.com/nexiyi/p/hbase_shell.html http://blog.csdn.net/u010967382/article/de ...

  8. HBase表的基本结构和常用命令行操作

    一.HBase表的基本结构 1.概述: 平时常见的MySQL.Oracle数据库都是传统型关系数据库,它们都是按行查询.按行存储:而HBase为非关系型数据库,它是按列存储的的. 在HBase插入数据 ...

  9. Hbase:简单介绍一下Hbase表的结构

    HBase 是一个NoSQL数据库,用于处理海量数据,可以支持10亿行百万列的大表,下面我就和大家分享一下数据是如何存放在HBase表中的 为了更好的理解HBase表的思路,先回顾一下关系数据库中表的 ...

随机推荐

  1. ERP解析外围系统json数据格式

    外围系统调用ERP的WebService接口,将数据以json格式传到ERP,ERP解析json 1.创建java source jsp,提供java方法解析json数据 create or repl ...

  2. Java开发笔记(一百二十九)Swing的输入框

    Swing的输入框仍然分成两类:单行输入框和多行输入框,但与AWT的同类控件相比,它们在若干细节上有所调整.首先说单行输入框,AWT的单行输入框名叫TextField,平时输入什么字符它便显示什么字符 ...

  3. C++ 读写 Excel 文件

    //Microsoft Visual Studio 2015 Enterprise #include <fstream> #include <string> #include ...

  4. Python基础 — eval 函数的作用

    eval函数就是实现list.dict.tuple与str之间的相互转化str函数把list,dict,tuple转为为字符串 # 字符串转换成列表a = "[[1,2], [3,4], [ ...

  5. python基础_mysql建表、编辑、删除、查询、更新

    1.建一张学生表 包含(id,name,age,sex)2.增加四条数据3.查询表中sex为男的数据4.删除id =3的数据,5.将sex为女的,修改为男 create: CREATE TABLE d ...

  6. Spark 系列(六)—— 累加器与广播变量

    一.简介 在 Spark 中,提供了两种类型的共享变量:累加器 (accumulator) 与广播变量 (broadcast variable): 累加器:用来对信息进行聚合,主要用于累计计数等场景: ...

  7. Cookie中的HttpOnly

    1.什么是HttpOnly? 如果您在cookie中设置了HttpOnly属性,那么通过js脚本将无法读取到cookie信息,这样能有效的防止XSS攻击,具体一点的介绍请google进行搜索 2.ja ...

  8. angularjs 文件下载 并 从response header中获取文件名

    最近在做一个下载文件的功能,后台接口给的是二进制流的方式,那么前端要把二进制流下载下来. 这个过程使用$http的get请求,使用Blob接收,倒是没有难度,主要是遇到了,后台的文件名拿不到 的问题. ...

  9. Windows10如何卸载OneDrive

    Windows10如何卸载OneDrive 来源 https://zhuanlan.zhihu.com/p/23985905 1) 禁止onedrive自启动简单的就是在任务管理器的启动中禁用oned ...

  10. VBA文本文件(二十)

    还可以读取Excel文件,并使用VBA将单元格的内容写入文本文件.VBA允许用户使用两种方法处理文本文件 - 文件系统对象(FSO) 使用Write命令 文件系统对象(FSO) 顾名思义,FSO对象帮 ...