HBase特征

HBase在特征工程中的应用 目录 前言 应用场景介绍 Get 进阶-前缀匹配扫描-Scan 灵活的动态列 多版本 快照 总结 前言 HBase是一款分布式的NoSQL DB,可以轻松扩展存储和读写能力。 主要特性有: 按某精确的key获取对应的value(Get) 通过前缀匹配一段相邻的数据(Scan) 多版本 动态列 服务端协处理器(可以支持用户自定义) TTL:按时间自动过期 ... 阅读详情

Hbase是运行在Hadoop上的NoSQL数据库,它是一个分布式的和可扩展的大数据仓库,也就是说hbase能够利用HDFS的分布式处理模式,并从hadoop的MapReduce程序模型中获益。这意味着在一组商业硬件上存储许多具有数十亿行和上百万列的大表。除去Hadoop的优势,HBase本身就是十分强大的数据库,它能够融合key/value存储模式带来实时查询的能力,以及通过MapReduce进行离线处理或者批处理的能力。总的来说,Hbase能够让你在大量的数据中查询记录,也可以从中获得综合分析报告。

谷歌曾经面对过一个挑战的问题:如何能在整个互联网上提供实时的搜索结果?答案是它本质上需要将互联网缓存,并重新定义在这样庞大的缓存上快速查找的新方法。为了达到这个目的,定义如下技术:

  • 谷歌文件系统GFS:可扩展分布式文件系统,用于大型的、分布式的、数据密集型的应用程序。
  • BigTable:分布式存储系统,用于管理被设计成规模很大的结构化数据:来自数以千计商用服务器的PB级别的数据。
  • MapReduce:一个程序模型,用于处理和生成大数据集的相关实现。

在谷歌发布这些技术的文档之后, 不久以后我们就看到了它们的开源实现版本 ,就在2007年,Mike Cafarella发布了BigTable开源实现的代码,他称其为HBase,自此,HBase成为Apache的顶级项目,并运行在Facebook,Twitter,Adobe……仅举几个例子。

HBase不是一个关系型数据库,它需要不同的方法定义你的数据模型,HBase实际上定义了一个四维数据模型,下面就是每一维度的定义:

  • 行键:每行都有唯一的行键,行键没有数据类型,它内部被认为是一个字节数组。
  • 列簇:数据在行中被组织成列簇,每行有相同的列簇,但是在行之间,相同的列簇不需要有相同的列修饰符。在引擎中,HBase将列簇存储在它自己的数据文件中,所以,它们需要事先被定义,此外,改变列簇并不容易。
  • 列修饰符:列簇定义真实的列,被称之为列修饰符,你可以认为列修饰符就是列本身。
  • 版本:每列都可以有一个可配置的版本数量,你可以通过列修饰符的制定版本获取数据。

thhaines_hbase_1_1_01

Figure 1.  HBase Four-Dimensional Data Model

如图1中所示,通过行键获取一个指定的行,它由一个或多个列簇构成,每个列簇有一个或多个列修饰符(图1中称为列),每列又可以有一个或多个版本。为了获取指定数据,你需要知道它的行键、列簇、列修饰符以及版本。当设计HBase数据模型时,对考虑数据是如何被获取是十分有帮助的。你可以通过以下两种方式获得HBase数据:

  • 通过他们的行键,或者一系列行键的表扫描。
  • 使用map-reduce进行批操作

这种双重获取数据的方法使得HBase变得十分强大,典型地,在Hadoop中存储数据意味着它对离线或批处理方式分析是有益的(尤其是批处理分析),但是,对实时获取是不必要的。HBase通过key/value存储来支持实时分析,以及通过map-reduce支持批处理分析。让我们首先来看实时数据获取,作为key/value存储,key是行键,value是列簇的集合,如图2所示。

thhaines_hbase_1_1_02

Figure 2.  HBase as a Key/Value Store

如你在图2中看到的,key是我们所提到过的行键,value是列簇的集合。你可以通过key检索到value,或者换句话说,你可以通过行键“得到”行,或者你能通过给定起始和终止行键检索一系列行,这就是前面提到的表扫描。你不能实时的查询一个列的值,这就引出了一个重要的话题:行键的设计。

有两个原因令行键的设计十分重要:

  • 表扫描是对行键的操作,所以,行键的设计控制着你能够通过HBase执行的实时/直接获取量。
  • 当在生产环境中运行HBase时,它在HDFS上部运行,数据基于行键通过HDFS,如果你所有的行键都是以user-开头,那么很有可能你大部分数据都被分配一个节点上(违背了分布式数据的初衷),因此,你的行键应该是有足够的差异性以便分布式地通过整个部署。

你定义行键的方式取决于你想怎样存取那些行。如果你想以用户为基础存储数据,那么一个策略是利用字节队列在HBase中存储行键,所以我们可以创建一个用户ID的哈希(例如MD5或SHA-1),然后在哈希后面附上时间(long类型)。使用哈希有两个重点:(1)是它能够将value分散开,数据能够分布式地通过簇,(2)是它确保key的长度是一致的,以更加容易在表扫描中使用。

转载出处:http://blog.jobbole.com/83614/

Hbase核心原理及优劣分析 这部分数据在HBase的region server启动时,需要加载到内存中。因为hbase更新元数据是通过新增高版数据记录,不删除老版本实现的,时间长了经过多次数据平衡分配,meta中会有大量历史版本数据,元数据管理器负责清理这些元数据。Hbase数据物理上是按照RowKey(行键)的字典顺序存储的,并且查询数据时只能根据 RowKey进行检索,所以 RowKey 的设计十分重要。查找出对应Hfile,将Hfile中按列存储的多个读取出来,合并拼接成Row(行) 返回的。 阅读详情

相关推荐

hbase-packet-inspector:分析HBase RegionServers的网络流量

hbase-packet-inspector hbase-packet-inspector (HPI)是用于分析HBase RegionServers网络流量的命令行工具。 HPI读取tcpdump文件或捕获网络接口的实时数据包流,以提取有关客户端请求和响应的信息。 您可以对其进行配置,以将获得的信息加载到其内存数据库中,该数据库可以通过命令行和基于WebSQL界面进行访问,也可以加载到远程Kafka群集中。 用法 Usage: hbase-packet-inspector [OPTIONS] [-i INTERFACE] hbase-packet-inspector [OPTIONS] FILES... Options: -h --help Show this message -i --interface=INTERFACE Net

hbase优点和缺点及部分优化

HBase是一个建立在HDFS之上的分布式,提供高可靠性,高性能,列存储,可伸缩,实时读写NoSQL的数据库系统。 HBase优点 支持大数据:一个表可以有上十亿行,上百万列 列式存储:面向列(簇)的存储和权限控制,列(簇)独立检索 记录稀疏:对于为空(null)的列并不占用内存空间,因此,表可以设计的非常稀疏,节省空间 支持多版本:每个单元中的数据可以有多个版本,默认情况下版本号自动分配,是单元格插入时的时间戳 半结构化或非结构化数据:对于数据结构字段不够确定或杂乱无章非常难按一个概念去进行抽

L13763338360的博客 4894

Android 10 根文件系统和编译系统(十):Android.mk编译动态库

配套系列教学视频链接: Android 10.0 AOSP源码编译: 2-AOSP源码开发环境搭建 Android 10.0 根文件系统和编译系统: 3-Android根文件系统和编译系统 说明 系统:AOSP Android10.0 设备:Android模拟器 前言 本文章重点讲解Android.mk如何控制编译源码编译成动态库 ...

ldswfun的专栏 932

HBase的特征和优点

Hbase是运行在Hadoop上的NoSQL数据库,它是一个分布式的和可扩展的大数据仓库,也就是说HBase能够利用HDFS的分布式处理模式,并从Hadoop的MapReduce程序模型中获益。这意味着在一组商业硬件上存储许多具有数十亿行和上百万列的大表。除去Hadoop的优势,HBase本身就是十分强大的数据库,它能够融合key/value存储模式带来实时查询的能力,以及通过MapReduce进行

ykp的专栏 1283

STM32实战:5分钟搞定MXL90614红外测温模块的I2C驱动(附完整代码)

本文提供了一份快速集成MLX90614红外测温模块的STM32实战指南。通过详细的软件I2C驱动代码,重点解析了SMBus通信协议、CRC校验及温度数据转换,帮助开发者避开常见陷阱,实现5分钟内完成模块驱动并读取准确温度值。

wasm7browser的博客 353

北京联通IPTV组播实战:OpenWRT软路由配置全解析

本文详细解析了在北京联通IPTV环境下,利用OpenWRT软路由和udpxy工具实现组播转单播的实战配置。内容涵盖网络接口设置、防火墙规则、udpxy安装配置、直播源M3U文件处理以及全平台播放指南,帮助用户无需机顶盒即可在家庭局域网内任何设备上流畅观看电视直播。

weixin_29313547的博客 1405

HBase

HBase: HBase是一个建立在HDFS之上的分布式,提供高可靠性,高性能,列存储,可伸缩,实时读写NoSQL的数据库系统。 优点:  (1)大:一个表可以有上十亿行,上百万列。 (2)面向列:面向列(簇)的存储和权限控制,列(簇)独立检索。 (3)稀疏:对于为空(null)的列并不占用内存空间,因此,表可以设计的非常稀疏。 (4)多版本:每个单元中的数据可以有多个版本,默认...

Sweeneyzuo的博客 782

【AutoDL】使用云服务器跑深度学习代码

1.算力市场 租用服务器,选择自己心仪的服务器2.镜像可以选择一些基础的镜像,社区镜像里是git上有的环境。3.上传文件在文件存储中,选择上传的区,在右边点击上传,选择自己的文件上传到云服务器中。

weixin_45768644的博客 3701

hbase filter原理_HBase在特征工程中的应用

前言HBase是一款分布式的NoSQL DB,可以轻松扩展存储和读写能力。 主要特性有:按某精确的key获取对应的value(Get)通过前缀匹配一段相邻的数据(Scan)多版本动态列服务端协处理器(可以支持用户自定义)TTL:按时间自动过期 今天我们来聊一聊HBase以上特性在特征工程中的应用,先从最简单的获取一条数据说起:应用场景介绍Get这是HBase中最简单的一个查询操作,根据id读某一个...

weixin_39907850的博客 196

Oracle EBS Tax 四国实现详解:印度、巴西、美国、阿根廷

印度:务必启用India Localization模块,不要尝试用标准EBTax模拟GST逻辑 巴西:必须配置NF-e接口,建议聘请本地税务顾问设置CFOP和NCM代码映射 美国:跨州业务强烈建议购买Vertex或Avalara服务,自建税率表维护成本极高 阿根廷:注意1:1:1架构限制,提前规划Legal Entity和OU结构

金牌架构师 260

【数字孪生与仿真技术】06:航天器系统建模与验证全流程实战:从多学科建模到数字孪生(附完整代码与工业案例)

摘要:航天器系统开发面临多学科耦合强、验证流程复杂、可靠性要求极高的挑战。本文基于MATLAB/Simulink平台,系统阐述航天器从多域建模、动力系统开发到任务验证的全流程技术框架。内容涵盖Modelica统一建模规范、光伏-电池联合供电系统仿真、基于模型的需求追溯方法、蒙特卡洛可靠性分析及硬件在环测试等核心技术,并结合James Webb太空望远镜电力系统案例,展示工业级应用实践。文中提供完整的Simulink模型代码、仿真结果及流程图,最后探讨数字孪生与AI增强技术在航天器在轨运维中的未来应用。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 1373

hbase python 列范围查找_HBase在特征工程中的应用

前言HBase是一款分布式的NoSQL DB,可以轻松扩展存储和读写能力。 主要特性有:按某精确的key获取对应的value(Get)通过前缀匹配一段相邻的数据(Scan)多版本动态列服务端协处理器(可以支持用户自定义)TTL:按时间自动过期 今天我们来聊一聊HBase以上特性在特征工程中的应用,先从最简单的获取一条数据说起:应用场景介绍Get这是HBase中最简单的一个查询操作,根据id读某一个...

weixin_30995429的博客 296

Sigrity Power Tree如何生成电源树操作指导

Sigrity Power Tree可以方便地生成电源树,仅需要网表文件就能将系统的电源树直观的显示出来,生成的电源树文件可以用Power DC,optimizePI进行直流和交流仿真,下面介绍如何生成电源树。Base on [Device_TYPE and VALUE]就是识别网表中器件的Device_TYPE作为power tree中的模型的名字。Allegro layout netlist file,就是从Allegro layout文件中输出的netlist第三方网表文件。如何生成电源树操作指导。

weixin_54787054的博客 1532

HBase特征简要

HBase特征简要1)海量存储2)列式存储3)极易扩展4)高并发5)稀疏 1)海量存储 Hbase适合存储PB级别的海量数据,在PB级别的数据以及采用廉价PC存储的情况下,能在几十到百毫秒内返回数据。这与Hbase的极易扩展性息息相关。正式因为Hbase良好的扩展性,才为海量数据的存储提供了便利。 2)列式存储 这里的列式存储其实说的是列族存储,Hbase是根据列族来存储数据的。列族下面可以有非常...

weixin_45492179的博客 3347

Open3D 点云重叠区域检测【2025最新版】

本文介绍了一种基于八叉树和KD树的点云重叠区域检测方法。算法提供两种检测模式:八叉树(快速)和KD树(精确),支持可视化显示和详细统计信息输出。实现功能包括边界扩展、索引去重、精度调节等,可通过max_depth参数控制八叉树细分程度,distance_threshold调整检测精度。代码使用Open3D库,能自动计算并显示各点云的重叠比例和点数统计,最终结果以不同颜色区分重叠与非重叠区域。该方案适用于三维点云数据处理中的重叠分析任务。

点云侠的博客 598

Statistics and Machine Learning Toolbox

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

hive建立内部表映射hbase_快手 HBase 在千亿级用户特征数据分析中的应用与实践...

分享嘉宾:陈杨 快手编辑整理:Hoh Xil内容来源:BigData NoSQL 12th Meetup出品社区:DataFun注:欢迎转载,转载请注明出处。快手建设 HBase 差不多有2年时间,在公司里面有比较丰富的应用场景:如短视频的存储、IM、直播里评论 feed 流等场景。本次只分享其中的一个应用场景:快手 HBase 在千亿级用户特征数据分析中的应用与实践。为什么分享这个 Topic?...

weixin_29164081的博客 200

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Hbase特征简要说明

1、 海量存储 Hbase适合存储PB级别的海量数据,在几十到百毫秒内返回数据。 2、列式存储 这里的列式存储其实说的是列族存储 列族理论上可以很多,但实际上建议不要超过6个 3、 极易扩展 处理能力(RegionServer)的扩展,一个是基于存储的扩展(HDFS) hbase在最初设计的时候就考虑了扩展性。 4、高并发 这里说的高并发,主要是在并发的情况下,Hbase的单个IO延迟下降并不多...

最慢的步伐不是跬步,而是徘徊;最快的脚步不是冲刺,而是坚持 7713

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

快手 HBase 在千亿级用户特征数据分析中的应用与实践

分享嘉宾:陈杨 快手编辑整理:Hoh Xil内容来源:BigData NoSQL 12th Meetup出品社区:DataFun注:欢迎转载,转载请注明出处。快手建设 H...

大数据星球-浪尖 390

快手HBase在千亿级用户特征数据分析中的应用与实践

声明:本文的原文是来自Hbase技术社区的一个PPT分享,个人做了整理和提炼。大家注意哈,这种会议PPT类的东西能学习到的更多的是技术方案和他人在实践过程中的经验。希望对大家有帮助。 背景 快手每天产生数百亿用户特征数据,分析师需要在跨30-90天的数千亿特征数据中,任意选择多维度组合(如:城市=北京&性别=男),秒级分析用户行为。针对这一需求, 快手基于HBase自主研发了支持bitmap转化、...

微信搜:import_bigdata,大数据领域硬核原创作者 1264
上一篇: HBase数据库检索性能优化策略
下一篇: HDU 5536 Chip Factory
左眼皮跳跳~
博客等级 码龄13年 17粉丝 400原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值