怎样将关系型数据表转换至hbase数据表
首先须要把关系型数据库的数据表的数据添加由
“纵向延伸”,转变为HBase数据表的“横向延伸”
一、Hbase的存储结构
a)
HBase以表(HTable)的形式存储数据
b)
HTable包含非常多行,每行通过RowKey唯一标记,行依照RowKey的字典序排列。表在行的方向上切割为多个HRegion
c)
每行包含一个RowKey和多个Column
Family,数据依照Column Family进行物理分割。即不同Column
Family的数据放在不同的Store中。一个Column
Family放在一个Strore中
d)
HRegion由多个Store组成。一个Store由物理上存在的一个MemStrore(内存中)和多个StoreFile(HFile)中
二、设计原则:
(1)rowkey
a)
rowkey是hbase的key-value存储中的key。通常使用用户要查询的字段作为rowkey
,查询结果作为value
。HBase中RowKey是依照字典序排列的
(2)Column Family的设计需遵循:
a)
不同Column Family的数据,在物理上是分开的,尽量避免一次请求须要拿到的Column分布在不同的Column Family中;
b)
CF的数量尽量要少。原因是过多的columnfamily之间会互相影响
(3) column
对于column须要扩展的应用。column可以按普通的方式设计,可是对于列相对固定的应用,最好採用将一行记录封装到一个column中的方式。这样可以节省存储空间。封装的方式推荐protocolbuffer。
三、參考样例:
(1)
Oracle关系数据表有100亿车联网监控数据
<car_id,x,y,create_at,org_id,type>当中x表示经度,y表示纬度,creat_at:创建时间。type:1表示报警点。2表示正常点,org_id:组织机构id
须要支持:a、查询指定天指定车辆的轨迹。b、下载指定天指定单位全部报警点,
给出一种hbase的表结构
|
rowkey |
ColumnFamily |
|||
|
car_id+create_at+org_id+type |
地点1(x,y) |
地点2(x,y) |
||
http://blog.csdn.net/kirayuan/article/details/7441111
http://wwwcomy.iteye.com/blog/1771285
http://www.open-open.com/lib/view/open1417612091323.html
怎样将关系型数据表转换至hbase数据表的更多相关文章
- 大数据-05-Spark之读写HBase数据
本文主要来自于 http://dblab.xmu.edu.cn/blog/1316-2/ 谢谢原作者 准备工作一:创建一个HBase表 这里依然是以student表为例进行演示.这里假设你已经成功安装 ...
- java中object数据怎么转换成json数据
可以通过这个(json-lib-2.3-jdk15.jar)jar里的方法转换 JSONObject json = JSONObject.fromObject(Object); 如果对象数组 JSON ...
- MapReduce和Spark写入Hbase多表总结
作者:Syn良子 出处:http://www.cnblogs.com/cssdongl 转载请注明出处 大家都知道用mapreduce或者spark写入已知的hbase中的表时,直接在mapreduc ...
- HBase 数据读写流程
HBase 数据读写流程 2016-10-18 杜亦舒 读数据 HBase的表是按行拆分为一个个 region 块儿,这些块儿被放置在各个 regionserver 中 假设现在想在用户表中获取 ro ...
- 大数据时代数据库-云HBase架构&生态&实践
业务的挑战 存储量量/并发计算增大 现如今大量的中小型公司并没有大规模的数据,如果一家公司的数据量超过100T,且能通过数据产生新的价值,基本可以说是大数据公司了 .起初,一个创业公司的基本思路就是首 ...
- 获取minist数据并转换成lmdb
caffe本身是没有数据集的,但在data目录下有获取数据的一些脚本.MNIST,一个经典的手写数字库,包含60000个训练样本和10000个测试样本,每个样本为28*28大小的黑白图片,手写数字为0 ...
- HBase 学习之一 <<HBase使用客户端API动态创建Hbase数据表并在Hbase下导出执行>>
HBase使用客户端API动态创建Hbase数据表并在Hbase下导出执行 ----首先感谢网络能够给我提供一个开放的学习平台,如果没有网上的技术爱好者提供 ...
- 【原创】大叔经验分享(25)hive通过外部表读写hbase数据
在hive中创建外部表: CREATE EXTERNAL TABLE hive_hbase_table(key string, name string,desc string) STORED BY ' ...
- HBase读写数据的详细流程及ROOT表/META表介绍
一.HBase读数据流程 1.Client访问Zookeeper,从ZK获取-ROOT-表的位置信息,通过访问-ROOT-表获取.META.表的位置,然后确定数据所在的HRegion位置: 2.Cli ...
随机推荐
- Sqlserver2005手动备份远程数据库到本地数据库方法
1,在本地数据库中新建一个数据库名,如local 选中local,鼠标右键,任务,导入数据 2下一步: 注意:服务器名称写远程连接的主机的IP, 数据库选中你要备份的远程数据库. 3下一步: 注意:服 ...
- PHP后台传值
前台数据往后台传值,往往是新手最头痛的,最近在学习thinkPHP的时候,也遇到了这种问题,总结一下,往不足之处请大家指教. 一.前台界面代码,往后台传值有两种方式,一种是get,另一种是post,新 ...
- 关于#include后面<>和" "的区别
1.以尖括号制定头文件,如下所示: #include <stdio.h> 用尖括号来制定文件时,预处理器是以特定的方式来寻找文件,一般是环境中或编译器命令行指定的某种寻找路径.这种设置寻找 ...
- WebForm,Winfrom下拉框添加全部行
WebForm: dropPostalLineNo.DataSource = "数据源"; dropPostalLineNo.DataTextField = &quo ...
- ul ol 列表的样式的控制
ul( Unordered List)无序列表 ol(Ordered List)有序列表 列表的样式: 列表原有符号.自定义图形符号.符号显示位置. 1.列表符号 是显示于每一个列表项目前的符号标识. ...
- [jQuery编程挑战]003 克隆一个页面元素及其相关事件
挑战: a) 绑定一个点击方法到这个div,点击后此元素会淡出消失 b) 同时克隆一个新的div元素到页面,元素内容是前面div文字内容反向书写(即,sgatbg olleh),同样也具有上面的点击事 ...
- php 实用函数
第一次随笔,写一些自己工作当中比较实用的函数吧. 数组函数: 1 array_column --返回数组当中指定的一列 用法一:返回数组当中指定的一列 应用场景:取出全班同学的id,去其他表查询这些同 ...
- 表单数据校检方法 onsubmit()的使用?
在项目中为一个表单(from)编写onsubmit()脚本的时候,经常需要验证表单中数据的合法性 所以常会写道:<form action="/admin/addUser.do" ...
- 在sublimetext上打造一个兼容virtualenv的web&python开发环境
利用Sublimetext3&virtualenv 打造一个Web&Python IDE 注: 环境:window|python3;以下使用的sublimetext插件均用packag ...
- 第六周 G题
G - 数论,最大公约数 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Desc ...