Hbase表的结构

Hbase(四)基本概念 以列作为存储单位进行数据存储,表现就是:一个列为一个存储单元,比如一个列就是一个文件逻辑结构。 阅读详情

转至:http://hi.baidu.com/kayin521/blog/item/7c276207b5c029613812bb44.html


逻辑视图


HBase以表的形式存储数据。表有行和列组成。列划分为若干个列族(row family)

Row Keycolumn-family1column-family2column-family3
column1column1column1column2column3column1
key1t1:abc
t2:gdxdf
t4:dfads
t3:hello
t2:world
key2t3:abc
t1:gdxdf
t4:dfads
t3:hello
t2:dfdsfa
t3:dfdf
key3t2:dfadfasd
t1:dfdasddsf
t2:dfxxdfasd

t1:taobao.com

 

Row Key

与nosql数据库们一样,row key是用来检索记录的主键。访问hbase table中的行,只有三种方式:

1 通过单个row key访问

2 通过row key的range

3 全表扫描

Row key行键 (Row key)可以是任意字符串(最大长度是 64KB,实际应用中长度一般为 10-100bytes),在hbase内部,row key保存为字节数组。

存储时,数据按照Row key的字典序(byte order)排序存储。设计key时,要充分排序存储这个特性,将经常一起读取的行存储放到一起。(位置相关性)

注意:

字典序对int排序的结果是1,10,100,11,12,13,14,15,16,17,18,19,2,20,21,…,9,91,92,93,94,95,96,97,98,99。要保持整形的自然序,行键必须用0作左填充。

行的一次读写是原子操作 (不论一次读写多少列)。这个设计决策能够使用户很容易的理解程序在对同一个行进行并发更新操作时的行为。

HBase不支持条件查询和Order by等查询,读取记录只能按Row key(及其range)或全表扫描,因此Row key需要根据业务来设计以利用其存储排序特性(Table按Row key字典序排序如1,10,100,11,2)提高性能。

列族

hbase表中的每个列,都归属与某个列族。列族是表的chema的一部分(而列不是),必须在使用表之前定义。列名都以列族作为前缀。例如courses:history , courses:math 都属于 courses 这个列族。

访问控制、磁盘和内存的使用统计都是在列族层面进行的。实际应用中,列族上的控制权限能帮助我们管理不同类型的应用:我们允许一些应用可以添加新的基本数据、一些应用可以读取基本数据并创建继承的列族、一些应用则只允许浏览数据(甚至可能因为隐私的原因不能浏览所有数据)。

 

时间戳

HBase中通过row和columns确定的为一个存贮单元称为cell。每个 cell都保存着同一份数据的多个版本。版本通过时间戳来索引。时间戳的类型是 64位整型。时间戳可以由hbase(在数据写入时自动 )赋值,此时时间戳是精确到毫秒的当前系统时间。时间戳也可以由客户显式赋值。如果应用程序要避免数据版本冲突,就必须自己生成具有唯一性的时间戳。每个 cell中,不同版本的数据按照时间倒序排序,即最新的数据排在最前面。

为了避免数据存在过多版本造成的的管理 (包括存贮和索引)负担,hbase提供了两种数据版本回收方式。一是保存数据的最后n个版本,二是保存最近一段时间内的版本(比如最近七天)。用户可以针对每个列族进行设置。

 

Cell

由{row key, column( =<family> + <label>), version} 唯一确定的单元。cell中的数据是没有类型的,全部是字节码形式存贮。


http://hi.baidu.com/kayin521/blog


聊聊HBase-1 细节???? 概述 HBase是一种分布式、可扩展、支持海量数据存储的NoSQL数据库。 NoSQL:非关系型数据库 MySQL:关系型数据库 MySQL: 优点:读写速度比较快 缺点:数据量大之后,读写速度下降 HDFS: 优点:海量存储 缺点:不能修改、删除某条数据,写入读取速度相对比较慢 实时数据处理: Hbase:优点:海量数据存储、分布式、读取写入速度比较快 redis、mongdb等也是 逻辑上,HBase的数据模型同关系型数据库很类似,数据存储在一张表中,有行有列。但从HBase的底层物理存储 阅读详情

相关推荐

HBase中的列族概念

作者:禅与计算机程序设计艺术 1.背景介绍 Apache HBase是一个开源的分布式 NoSQL 数据库,它是 Hadoop 的子项目。HBase 是 Apache Hadoop 中用于存储非结构化数据(即 NoSQL)的一种行列式存储数据库。其核心功能包括:海量数据的存储、高性能查询、实时写入和

AI天才研究院 2249

Hadoop HBase概念学习系列之列、列簇(十二)

      列在列簇中依照字典排序。例如,列簇是基础信息或公司域名或水果类。列是基础信息:面貌、基础信息:年龄、公司域名:org、公司域名:edu、水果类:苹果、水果类:香蕉。 列 = 列簇:列修饰符      列根据列簇分组。  列簇的特点: 1、一张表通常有一单独的列簇,而且一张表中的列簇不会超过5个。 2、列簇必须在创建表的时候定义。 3、表的列簇无...

weixin_30752699的博客 405

QGroundControl实现多机控制

前言 作为西安电子科技大学的本科生一名,目前在研究关于无人机导航规划与轨迹控制方面。 目前在跟导师做关于雷达无人机的一个项目,在这里记录一下关于QGC地面站实现多机控制的一些方法。 某些地方写的可能不是很完善,欢迎大家补充。 目前该文章还未写完,后期本人会继续编写 多机控制原理 多机地面站支持TCP,UDP和串口等三种连接方式,首先我们需要对这两种连接方式抽象出一个基类LinkInterface,提供两个虚函数分别对应于数据接受和发送处理,针对于不同的连接方式实现TCP,UDP和串口连接相对应的子类TCPL

Phillweston的博客 8429

深入理解HBASE(2)列簇与Qualifier

什么是列簇(Family)? 列簇的特点: 1、一张表通常有一单独的列簇,而且一张表中的列簇不会超过5个。 2、列簇必须在创建表的时候定义。 3、表的列簇无法改变。 4、每个列簇中的列数是没有限制的。 5、同一列簇下的所有列会保存在一起。 6、列在列簇中是有序的。 7、列在运行时创建。 8、列只有插入后才会存在,空值并不保存。 列簇的作用 权限控制、存储以及调优都是在列族层面进行的 实际应...

weixin_42782897的博客 5614

恶意代码实验3:Word宏病毒实验

只要下次打开这个word文档,就会执行以上代码,并将自身复制到Normal.dot(word文档的公共模板)和当前文档的ThisDocument中,同时改变函数名(模板中为Document_Close,当前文档为Document_Open),此时所有的word文档打开和关闭时,都将运行以上的病毒代码,可以加入适当的恶意代码,影响word的正常使用,本例中只是简单的跳出一个提示框。回答不正确三次,即可自动跳出病毒程序,但那时已经出现几十个文档。1、打开的宏编辑器如图所示,即可编写病毒代码。

qq_63949327的博客 6505

PyFluent进阶实战:自动化密闭几何(Watertight)网格生成

本文深入探讨了如何利用PyFluent实现自动化密闭几何(Watertight)网格生成。通过Python脚本控制Fluent Meshing工作流,工程师可以高效、一致地完成从几何导入、局部尺寸定义、面网格生成到边界层设置和体网格输出的全过程,从而将复杂的CFD前处理工作转化为可重复、可集成的自动化流程,极大提升仿真效率和知识复用性。

t8u9v0w1x的博客 578

HBase表在HDFS上的目录结构

进程按角色分为Master和RegionServer,其中Master负责DDL操作,比如建表、删表,而RegionServer负责DML操作,比如数据的读写操作等。从数据视图上讲,HBase中的Table会按Range切分为多个Region,然后由不同的RegionServer来负责对外提供服务。 RegionServer的内部则主要有BlockCache,MemStore和WAL等几部分组成...

zhanggf的博客 2042

论文阅读--射频电源在半导体领域的应用

射频电源(RF Power Supply)是能够输出300kHz~300GHz正弦波电压的高频交流电源,在半导体制造领域,射频电源的典型工作频率范围为400kHz∼60 MHz,主要由射频发生器(功率源)、匹配器及配套控制电路组件构成,其关键组件包括变压器与电抗器、晶闸管、绝缘栅双极型晶体管(IGBT)、钣金件、铜材及各种电子元器件。射频电源是刻蚀和薄膜沉积工艺的核心,主要用于产生等离子体,以增强气体反应活性,其性能直接影响反应腔体内等离子体的浓度、均匀性和稳定性。

伊丽莎白的学习之路 2337

hbase 修改表名_Hbase之修改表结构

import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache.hadoop.hbase.HColumnDescriptor;import org.apache.hadoop.hbase.HTableDescriptor;import or...

weixin_42715608的博客 577

5G 模组 FM650 USB模式查询及网络配置

完成以上配置后,5G模组可进行搜网,入网成功后,上位机获取 5G IP。

十年通信老兵的技术修炼之路——从3G到5G,从地面基站到卫星通信。 1323

【MODBUS】Java实现的Modbus协议类库——推荐j2mod库

Jamod是另一个开源的Modbus Java库。这个库的设计是完全面向对象的,基于抽象,应该支持易于理解、可重用性和可扩展性。它支持Modbus RTU和Modbus TCP,并且提供了主站和从站的功能。这是jamod Modbus库的一个分支,取自1.2.1版本,根据Apache 2许可证发布,包含在该项目的SVN存储库中。j2mod项目的目标是基于Java编程语言生成一个功能更全面的Modbus(tm)通信库。这是一个积极开发的项目,接受具有Modbus主站和从站开发经验的专业软件工程师提交的文件。

开源物联网项目商业化作者 5639

hbase复制表的结构_HBase 的表结构

HBase 是一个NoSQL数据库,用于处理海量数据,可以支持10亿行百万列的大表,下面就了解一下数据是如何存放在HBase表中的关系型数据库的表结构为了更好的理解HBase表的思路,先回顾一下关系数据库中表的处理方式例如有一个用户表user_info,有字段:id、name、tel,表名和字段需要在建表时指定create table user_info ( id 类型, name 类...

weixin_35216188的博客 914

11、CUDA 内存优化:平铺矩阵乘法技术解析

本文深入解析了CUDA中的平铺矩阵乘法技术,重点介绍了如何利用共享内存和线程协作减少全局内存访问,提升计算效率。通过矩阵乘法实例,详细阐述了平铺算法的执行流程、内核代码实现及性能优化策略,包括平铺大小选择、线程同步机制和代码优化建议。文章还分析了该技术在深度学习、图像处理和科学计算等领域的应用价值,为CUDA程序的内存优化提供了系统性指导。

peace的博客 70

mysql结构改写为hbase表_根据mysql表中字段创建hbase表

小狼今天很郁闷,我想要mysql中表的字段同步到hbase列族上去,非得在那dos上写命令行,今天想了一个方法,用代码完成从mysql中获取字段名称public static String mysql(String biaoming){StringBuffer sb = new StringBuffer();try {new Dbtool();Connection conn = Dbtool.ge...

weixin_36041020的博客 255

133、神经渲染与AI RAW:从RAW域到sRGB的端到端学习

去年在调试某款旗舰手机的主摄时,遇到一个让人头疼的问题——夜景模式下,暗部细节虽然保留得不错,但色彩总是偏紫,而且高光边缘有诡异的“水彩感”。ISP的3A统计跑了几十版,降噪强度从0调到100,甚至把去马赛克算法换成了自适应方向插值,问题依旧。后来团队里一位做AI的同事说:“要不试试端到端?从RAW直接出sRGB。”当时我第一反应是“这玩意儿能稳定吗?”结果试了一版,偏紫消失了,高光边缘的伪影也没了。从那以后,我开始认真研究神经渲染与AI RAW这条路线。

sundong_81的博客 33

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

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

两篇讲的不错文章 http://www.cnblogs.com/nexiyi/p/hbase_shell.html http://blog.youkuaiyun.com/u010967382/article/details/37878701?utm_source=tuicool&utm_medium=referral hbase操做hbase web操作 hbase shell 基本操作 1建表 具体命令

longshenlmj的专栏 6万+

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

hbase 默认目录_查看HBase表在HDFS中的文件结构

在HBASE中建立一张表结构如下:{NAME=>'USER_TEST_TABLE',MEMSTORE_FLUSHSIZE=>'67108864',MAX_FILESIZE=>'1073741824',FAMILIES=>[{NAME=>'info',BLOOMFILTER=>'NONE',REPLICATION_SCOPE=>'0',C...

weixin_39869378的博客 2899

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

查看HBase表在HDFS中的文件结构

查看HBase表在HDFS中的文件结构

wxq的博客 3495

mysql结构改写为hbase表_Hbase之修改表结构

import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache.hadoop.hbase.HColumnDescriptor;import org.apache.hadoop.hbase.HTableDescriptor;import or...

weixin_39556064的博客 164

hbase meta表的结构

下面看下hbase:meta 表的结构,hbase:meta表中,保存了每个表的region地址,还有一些其他信息,例如region的名字,HRegionInfo,服务器的信息。hbase:meta表中每一行对应一个单一的region。例如我们现在创建一个表名叫"t"。hbase:meta中对应的行会像下面这个样子。 Row Column Family ...

weixin_34067980的博客 321

hbase创建表_结构化储存数据库——HBase

概述HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文"Bigtable:一个结构化数据的分布式存储系统"。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的...

weixin_39567222的博客 658

hbase存储结构及客户端访问hbase表的过程

要说明客户端访问/操作hbase表,先简要说明hbase表的存储结构。 Hbase最初有一个表,则一个表对应一个region,随着表增大,一个region会分为多个region,即一个表对应了多个region。Region是hbase存储的最小单位,不能分割,即一个region内的数据只能存在一个服务器,但是一个表的所有region可以分布在不同的server上(hregionserver)。如

2884

hbase 使用复制表,使用存在表的结构

hbase 表结构复制

m0_65850671的博客 300

HBase的表存储结构

命令 DDL DML

白茶 清欢的博客 902
上一篇: 维度表 事实表
下一篇: save
codestinity
博客等级 码龄16年 29粉丝 7原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值