Hbase表结构
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表结构的更多相关文章
- 4 hbase表结构 + hbase集群架构及表存储机制
本博文的主要内容有 .hbase读取数据过程 .HBase表结构 .附带PPT http://hbase.apache.org/ 读写的时候,就需要用hbase了,换句话说,就是读写的时候. ...
- hbase表结构 + hbase集群架构及表存储机制
本博文的主要内容有 .hbase读取数据过程 .HBase表结构 .附带PPT http://hbase.apache.org/ 读写的时候,就需要用hbase了,换句话说,就是读写的时候.需要 ...
- HBase 的表结构
HBase 的表结构 2016-10-13 杜亦舒 HBase 是一个NoSQL数据库,用于处理海量数据,可以支持10亿行百万列的大表,下面就了解一下数据是如何存放在HBase表中的 关系型数据库的表 ...
- Hbase之修改表结构
import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.HBaseConfiguration; impo ...
- HBase -ROOT-和.META.表结构
在HBase中,大部分的操作都是在RegionServer完成的,Client端想要插入,删除,查询数据都需要先找到相应的RegionServer.什么叫相应的RegionServer?就是管理你要操 ...
- HBase -ROOT-和.META.表结构(region定位原理)
在HBase中,大部分的操作都是在RegionServer完成的,Client端想要插入,删除,查询数据都需要先找到相应的RegionServer.什么叫相应的RegionServer?就是管理你要操 ...
- hbase操作(shell 命令,如建表,清空表,增删改查)以及 hbase表存储结构和原理
两篇讲的不错文章 http://www.cnblogs.com/nexiyi/p/hbase_shell.html http://blog.csdn.net/u010967382/article/de ...
- HBase表的基本结构和常用命令行操作
一.HBase表的基本结构 1.概述: 平时常见的MySQL.Oracle数据库都是传统型关系数据库,它们都是按行查询.按行存储:而HBase为非关系型数据库,它是按列存储的的. 在HBase插入数据 ...
- Hbase:简单介绍一下Hbase表的结构
HBase 是一个NoSQL数据库,用于处理海量数据,可以支持10亿行百万列的大表,下面我就和大家分享一下数据是如何存放在HBase表中的 为了更好的理解HBase表的思路,先回顾一下关系数据库中表的 ...
随机推荐
- nRF24L01/nRF24L01+应用总结
nRF24L01+是nRF24L01的升级款,比较显眼的区别是nRF24L01+比nRF24L01多了一个250Kbps传输速率.其它的还有接收模式官方给的耗电量是不一样的.个别寄存器名字不一样. 接 ...
- spring session cpu占用过高
集成spring session很简单,只需几行代码即可. @Configuration @EnableRedisHttpSession public class SessionConfig { ...
- prometheus grafana graylog 钉钉告警 短信告警 电话告警系统 PrometheusAlert
PrometheusAlert 简介 PrometheusAlert是开源的运维告警中心消息转发系统,支持主流的监控系统Prometheus,日志系统Graylog和数据可视化系统Grafana发出的 ...
- Numpy学习笔记(下篇)
目录 Numpy学习笔记(下篇) 一.Numpy数组的合并与分割操作 1.合并操作 2.分割操作 二.Numpy中的矩阵运算 1.Universal Function 2.矩阵运算 3.向量和矩阵运算 ...
- Failed to transfer file: http://repo.maven.apache.org/maven2/xpp3/xpp3_min/1.1.4c/xpp3_min-1.1.4c.jar
解决办法:maven的配置文件settings.xml中添加mirror地址 <mirror> <id>alimaven</id> < ...
- dubbo线程池的拒绝策略
jdk自带的原生的拒绝策略抛出的异常信息不够详细,而dubbo对拒绝策略进行了改写,抛出的信息更具有参考价值,值得我们借鉴. jdk自带的原生拒绝策略抛出的信息: // ThreadPoolExecu ...
- WPF 不要给 Window 类设置变换矩阵(分析篇):System.InvalidOperationException: 转换不可逆。
原文:WPF 不要给 Window 类设置变换矩阵(分析篇):System.InvalidOperationException: 转换不可逆. 最近总是收到一个异常 "System.Inva ...
- 爬虫 HttpHelper
/// <summary> /// 类说明:HttpHelper类,用来实现Http访问,Post或者Get方式的,直接访问,带Cookie的,带证书的等方式,可以设置代理 /// 重要提 ...
- ADO.NET 一(概述)
在 C# 语言中 ADO.NET 是在 ADO 的基础上发展起来的,ADO (Active Data Object) 是一个 COM 组件类库,用于访问数据库,而 ADO.NET 是在 .NET 平台 ...
- iOS - 静态库的导入和头文件路径的设置
开发过程中,免不了要用到一些第三方或者是别人写好的一些Demo,这时就经常会用到别人写的一些静态库(.a文件)和n多个头文件(.h文件),这些文件不是简单地把它们拉到自己的工程里面就行的,还要设置一些 ...