热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

HBASE特点及概述

HbaseHdfs缺点不能并发写入不能随机读写不能随机删除高延迟不适合存储大量小的文件RDBMS缺点分区加上主从复制,方案比较复杂分区不支持动态扩展依赖于IBM,E

HBASE特点及概述

Hbase
Hdfs缺点
 不能并发写入
 不能随机读写
 不能随机删除
 高延迟
 不适合存储大量小的文件
RDBMS缺点
 分区加上主从复制,方案比较复杂
 分区不支持动态扩展
 依赖于IBM,EMC等公司设备,造价高
 容错性低,查询重启
基于上述原因,出现了HBase

Hadoop存在两种数据存储的方式
 Hdfs的文件存储方式
 Hbase分布式数据库存储的方式

HBASE支持实时读写大数据,它是一个高可靠性,高性能,可伸缩的分布式存储系统
 HBase是一个构建在HDFS上的分布式noSQL数据库
 HBase是基于google bigtable模型开发,典型的key/value系统
 具有松散的表结构,原生海量数据分布式存储;支持随机查询,范围查询
 高吞吐,低延迟
 列存储,多版本,增量导入,多维删除

Hbase与关系型数据库不同在于

  1. 允许数据冗余
  2. 允许列动态增加

HDFS vs HBASE
 HBase上数据是以storeFile(HFile)二进制流的形式存储在HDFS上block块中
 HDFS并不知道hbase存的是什么,它只把存储文件视为二进制文件,即hbase存储数据对于HDFS文件系统是透明的
HBASE特点及概述
HBASE特点及概述

HBASE特性
 大:一个表可有数十亿行,上百万列
 无模式:每行都有一个可排序的主键和任意多的列,列可根据需要动态的增加,同一张表中不同的行可有截然不同的列
 面向列:面向列(族)的存储和权限控制,列(族)独立检索
 稀疏,多维,排序的map:空(null)列不占用存储空间,表可以设计的非常稀疏;每个单元中数据可有多个版本,默认下版本号自动分配,是单元格插入时的时间戳
 数据类型单一:HBASE数据都是字符串,没有类型
 强一致性读写:HBASE不是最终一致性数据存储,它适合高速技术聚合类任务
 自动分片:HBASE表通过region分布在集群中,数据增长时,region会自动分割并重新分布
 RegionServer自动故障转移和负载均衡
 MapReduce: HBASE通过mapreduce支持大并发处理

 实时,随机地大数据访问;HBASE内部使用LSM-tree作为数据存储架构,LSM-tree周期性合并小文件到较大文件,来减少硬盘寻址
 Java客户端API:HBASE支持易于使用地java API进行编程访问
 Thrift/RESET API:HBASE也支持Thrift和REST作为非java前端的访问
 Block Cache和bloom filter:对于大容量查询优化,HBASE支持block cache和bloom filter
 快照支持

HBASE特性
 数据自动分区
HBASE特点及概述

 HBASE使用LSM树(log structured merge tree)
 随机写->顺序写 (HBASE写起来特别快
HBASE特点及概述

 HBASE生态
HBASE特点及概述

  • Kylin是一个多维的数据仓库,先对hbase进行建模并存在hbase中,之后从kylin来查询写好的模型

HBASE是面向列的存储
HBASE特点及概述

HBASE应用场景
 数据量较大,而且增长量无法预估的应用
 写密集型应用
 查询场景简单,检索条件较少,不需要复杂查询条件来查询数据应用
 对性能和可靠性要求非常高的应用,由于hbase本身没有单点故障,可用性非常高

HBASE基本解决三大类场景
 平台类:作为平台的底层存储使用,如kylin,阿里内部的日志同步工具TT,图组件Titan
 用户行为类:主要是面向各个业务系统,如淘宝收藏夹,交易数据,旺旺聊天
 报表展示类:实时响应,如报表,大屏等
HBASE特点及概述
HBASE特点及概述
HBASE特点及概述

HBASE逻辑模型
 数据存储在表中,表具有行和列
 Rowkey: 行键,唯一地标识一行记录,且自动进行排序
 按字典排序地升序索引

HBASE特点及概述

 定位单元格:rowKey->columnName->version
HBASE特点及概述
HBASE特点及概述

HBASE表和分区
 表由任意数量地分区组成
 分区由其startKey和endKey组成

  • 空表:(table, null, null)
  • 两个分区地表:(table,null,’M’)和(table,’M’,NULL)
     每个分区有可能驻留在不同节点,由多个HDFS文件和块组成
    HBASE特点及概述

HBASE中,记录以key-value对的形式存储在HFILE中,HFile再以block块的形式存到HDFS中
 HFILE是作为二进制文件存储
 当MemStore中的数据被flush到磁盘中时,就创建了HFile
HBASE特点及概述

HBASE的核心数据结构就是map
 简单说,map就是key-value对集合
 HBASE中map是按照row key以字母顺序排序
 可将hbase中的表视为key-value表
HBASE特点及概述


推荐阅读
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • 本文介绍了OpenStack的逻辑概念以及其构成简介,包括了软件开源项目、基础设施资源管理平台、三大核心组件等内容。同时还介绍了Horizon(UI模块)等相关信息。 ... [详细]
  • Sleuth+zipkin链路追踪SpringCloud微服务的解决方案
    在庞大的微服务群中,随着业务扩展,微服务个数增多,系统调用链路复杂化。Sleuth+zipkin是解决SpringCloud微服务定位和追踪的方案。通过TraceId将不同服务调用的日志串联起来,实现请求链路跟踪。通过Feign调用和Request传递TraceId,将整个调用链路的服务日志归组合并,提供定位和追踪的功能。 ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • Google Play推出全新的应用内评价API,帮助开发者获取更多优质用户反馈。用户每天在Google Play上发表数百万条评论,这有助于开发者了解用户喜好和改进需求。开发者可以选择在适当的时间请求用户撰写评论,以获得全面而有用的反馈。全新应用内评价功能让用户无需返回应用详情页面即可发表评论,提升用户体验。 ... [详细]
  • Oracle优化新常态的五大禁止及其性能隐患
    本文介绍了Oracle优化新常态中的五大禁止措施,包括禁止外键、禁止视图、禁止触发器、禁止存储过程和禁止JOB,并分析了这些禁止措施可能带来的性能隐患。文章还讨论了这些禁止措施在C/S架构和B/S架构中的不同应用情况,并提出了解决方案。 ... [详细]
  • Java和JavaScript是什么关系?java跟javaScript都是编程语言,只是java跟javaScript没有什么太大关系,一个是脚本语言(前端语言),一个是面向对象 ... [详细]
  • 本文讨论了在使用Git进行版本控制时,如何提供类似CVS中自动增加版本号的功能。作者介绍了Git中的其他版本表示方式,如git describe命令,并提供了使用这些表示方式来确定文件更新情况的示例。此外,文章还介绍了启用$Id:$功能的方法,并讨论了一些开发者在使用Git时的需求和使用场景。 ... [详细]
  • 云原生应用最佳开发实践之十二原则(12factor)
    目录简介一、基准代码二、依赖三、配置四、后端配置五、构建、发布、运行六、进程七、端口绑定八、并发九、易处理十、开发与线上环境等价十一、日志十二、进程管理当 ... [详细]
  • ejava,刘聪dejava
    本文目录一览:1、什么是Java?2、java ... [详细]
  • Hadoop2.6.0 + 云centos +伪分布式只谈部署
    3.0.3玩不好,现将2.6.0tar.gz上传到usr,chmod-Rhadoop:hadophadoop-2.6.0,rm掉3.0.32.在etcp ... [详细]
  • 基于分布式锁的防止重复请求解决方案
    一、前言关于重复请求,指的是我们服务端接收到很短的时间内的多个相同内容的重复请求。而这样的重复请求如果是幂等的(每次请求的结果都相同,如查 ... [详细]
  • 一句话解决高并发的核心原则
    本文介绍了解决高并发的核心原则,即将用户访问请求尽量往前推,避免访问CDN、静态服务器、动态服务器、数据库和存储,从而实现高性能、高并发、高可扩展的网站架构。同时提到了Google的成功案例,以及适用于千万级别PV站和亿级PV网站的架构层次。 ... [详细]
author-avatar
尛妙苗_549
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有