HBase篇--初始Hbase】的更多相关文章

一.前述 1.HBase,是一个高可靠性.高性能.面向列.可伸缩.实时读写的分布式数据库.2.利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase中的海量数据,利用Zookeeper作为其分布式协同服务. 3.主要用来存储非结构化和半结构化的松散数据(列存 NoSQL 数据库).二.Hbase数据模型 2.1 ROW  KEY(相当于关系型数据库中的ID)决定一行数据按照字典顺序排序的.Row key只能存储64k的字节数据 2.2 Column F…
一.前述. 完全分布式基于hadoop集群和Zookeeper集群.所以在搭建之前保证hadoop集群和Zookeeper集群可用.可参考本人博客地址 https://www.cnblogs.com/LHWorldBlog/p/8232935.html搭建hadoop集群 二.集群规划. 说明:因为HMaster主节点和从节点不会自动切换,所以需要互相配置免密,并且配置从主节点到从节点的免密,备节点到从节点的免密. 推荐使用ssh-copy-id 主机名称 即从当前节点免密到其他节点.当不能用时…
一.前述 今天分享一篇关于HBase的一对多和多对多的案例的分析. 二.具体案例 案例一.多对多    人员-角色   人员有多个角色  角色优先级   角色有多个人员   人员 删除添加角色   角色 可以添加删除人员   人员 角色 删除添加   PS:说明,两张表User表和Role表, User表中定义两个列族,第一个列族是名字,第二个列族中  多个列定义为具体的角色,列的内容定义为具体的值,即优先级(这里利用了列也能存信息,所以把角色Id定义为具体的列,值越大代表优先级越高) 案例二.…
大数据篇:Hbase Hbase是什么 Hbase是一个分布式.可扩展.支持海量数据存储的NoSQL数据库,物理结构存储结构(K-V). 如果没有Hbase 如何在大数据场景中,做到上亿数据秒级返回.(有条件:单条数据,范围数据) hbase.apache.org 1 Hbase结构及数据类型 逻辑结构 物理结构 整张表会按照水平方向按照Row Key切割(Region).再按垂直方向按ColumnFamily切割(Store), Name Space:命名空间 类似于关系型数据库中的datab…
一.前述 HBase优化能够让我们对调优有一定的理解,当然企业并不是所有的优化全都用,优化还要根据业务具体实施. 二.具体优化 1.表的设计  1.1 预分区 默认情况下,在创建HBase表的时候会自动创建一个region分区,当导入数据的时候,所有的HBase客户端都向这一个region写数据,直到这个region足够大了才进行切分.一种可以加快批量写入速度的方法是通过预先创建一些空的regions,这样当数据写入HBase时,会按照region分区情况,在集群内做数据的负载均衡. publi…
前言: 作为Hadoop生态系统中重要的一员, HBase作为分布式列式存储, 在线实时处理的特性, 备受瞩目, 将来能在很多应用场景, 取代传统关系型数据库的江湖地位. 本篇博文重点讲解HBase的数据导入, 描述三种方式, Client API, Bulkload, 以及Hive Over HBase. *). Client API实现借助HBase的Client API来导入, 是最简易学的方式. Configuration config = HBaseConfiguration.crea…
  本博文的主要内容有    .hbase读取数据过程 .HBase表结构 .附带PPT http://hbase.apache.org/ 读写的时候,就需要用hbase了,换句话说,就是读写的时候.需要数据库. 在哪些领域,需要数据库? 只要做大量的数据存储,就需要用到数据库. 数据库比文件系统,提供了更好的功能:随机.实时的读写. 如果,在你业务场景里,对随机.实时的读写要求不高,可不可以用数据库呢?当然可以,但没这必要.就好像是大材小用. 对于随机.实时的读写要求高的场景,如实时在线读写的…
官方帮助文档:http://hbase.apache.org/book.html  PDF:http://hbase.apache.org/apache_hbase_reference_guide.pdf 1.安装前准备 – Hadoop集群要启动正常 – Zookeeper集群启动正常 HBase 分布式存储的运行依托于Zookeeper和HDFS所以必须有一个完整的Hadoop分布式运行环境和Zookeeper运行环境: Hadoop高可用安装参见:http://www.cnblogs.co…
近几年来,人工智能逐渐火热起来,特别是和大数据一起结合使用.人工智能的主要场景又包括图像能力.语音能力.自然语言处理能力和用户画像能力等等.这些场景我们都需要处理海量的数据,处理完的数据一般都需要存储起来,这些数据的特点主要有如下几点: 大:数据量越大,对我们后面建模越会有好处: 稀疏:每行数据可能拥有不同的属性,比如用户画像数据,每个人拥有属性相差很大,可能用户A拥有这个属性,但是用户B没有这个属性:那么我们希望存储的系统能够处理这种情况,没有的属性在底层不占用空间,这样可以节约大量的空间使用…
转自:http://blog.csdn.net/zhongwen7710/article/details/39577431 本blog的内容包含: 第一部分:Hbase框架原理理解 第二部分:Hbase调用MapReduce函数使用理解 第三部分:Hbase调用Java API使用理解 第四部分:Hbase Shell操作 第五部分:Hbase建表.读写操作方式性能优化总结   第一部分:Hbase框架原理理解   概述 HBase是一个构建在HDFS上的分布式列存储系统:HBase是基于Goo…
最近在狂啃hadoop的书籍,这部<hbase:权威指南>就进入我的视野里面了,啃吧,因为是英文的书籍,有些个人理解不对的地方,欢迎各位拍砖. HDFS和Hbase配置同步 hbase的配置中有一些和hdfs关联的配置,当hdfs中修改了,但是hbase中修改了,hbase中是不会知道的,比如dfs.replication,有时候我们想增加备份的数量,在hdfs中设置为5了,但是hbase中默认为3,这样hbase还是只保存3份. 那么有什么方法可以使他们的配置文件同步,有三种方法: (1)在…
Hbase提供了hbck命令来检查各种不一致问题.hbck的名字仿效了HDFS的fsck命令,后者是一个用于检查HDFS中不一致问题的工具.下面这段非常易懂的介绍出自于hbck的源程序. 检查数据在Master及RegionServer的内存中状态与数据在HDFS中的状态之间的一致性. HBase的hbck不仅能够检查不一致问题,而且还能够修复不一致问题. 在生产环境中,应当经常运行hbck,以便及早发现不一致问题并更容易地解决问题. 一.问题 首先,在HBase上创建一张表usertable.…
第1章 HBase 简介1.1 什么是 HBase1.2 HBase 特点1.3 HBase 架构1.3 HBase 中的角色1.3.1 HMaster1.3.2 RegionServer1.3.3 其他组件第2章 HBase 安装2.1 Zookeeper 正常部署2.2 Hadoop 正常部署2.3 HBase 的解压2.4 HBase 的配置文件2.5 HBase 远程发送到其他集群2.6 HBase 服务的启动2.7 查看 HBase 页面第3章 HBase Shell 操作3.1 基本…
HBase1.2.2伪分布式安装(HDFS)+ZooKeeper-3.4.8安装配置+HBase表和数据操作+HBase的架构体系+单例安装,记录了在Ubuntu下对HBase1.2.2的实践操作,HBase的安装到数据库表的操作.包含内容1.HBase单例安装2.HBase伪分布式安装(基于Hadoop的HDFS)过程,3.HBase的shell编程,对HBase表的创建,删除等的命令,HBase对数据的增删查等操作.4.简单概述了Hbase的架构体系.5.zookeeper的单例安装和常用操…
出处:http://www.taobaotest.com/blogs/1604 业务开发测试HBase之旅二:通过HBase Shell与HBase交互 yedu 发表于:2011-10-11 浏览:9029次 评论:1次 所属分类: 分布式系统测试 引言 HBase提供了丰富的访问接口. • HBase Shell • Java clietn API • Jython.Groovy DSL.Scala • REST • Thrift(Ruby.Python.Perl.C++-) • MapRe…
HBase 为用户提供了一个非常方便的使用方式, 我们称之为“HBase Shell”.HBase Shell 提供了大多数的 HBase 命令, 通过 HBase Shell 用户可以方便地创建.删除及修改表, 还可以向表中添加数据.列出表中的相关信息等. 删除键问题: 一.Xshell:写错HBase Shell 命令时用键盘上的“Delete”进行删除,“Backspace”不起作用.---------像我的xshell5中“delete”.“Backspace”都不起作用时,设置方法如下…
本博文的主要内容有    .hbase读取数据过程 .HBase表结构 .附带PPT http://hbase.apache.org/ 读写的时候,就需要用hbase了,换句话说,就是读写的时候.需要数据库. 在哪些领域,需要数据库? 只要做大量的数据存储,就需要用到数据库. 数据库比文件系统,提供了更好的功能:随机.实时的读写. 如果,在你业务场景里,对随机.实时的读写要求不高,可不可以用数据库呢?当然可以,但没这必要.就好像是大材小用. 对于随机.实时的读写要求高的场景,如实时在线读写的场景…
HBase之五:hbase的region分区 https://www.cnblogs.com/duanxz/p/3154487.html 一.Region 概念 Region是表获取和分布的基本元素,由每个列族的一个Store组成.对象层级图如下: Table (HBase table) Region (Regions for the table) Store (Store per ColumnFamily for each Region for the table) MemStore (Mem…
查看hbase服务状态报错:   hbase(main)::> status ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing         at org.apache.hadoop.hbase.master.HMaster.checkInitialized(HMaster.java:2293)         at org.apache.hadoop.hbase.master.MasterRp…
[每日五分钟搞定大数据]系列,HBase第五篇.上一篇我们落下了Bloom Filter,这次我们来聊聊这个东西. Bloom Filter 是什么? 先简单的介绍下Bloom Filter(布隆过滤器)是1970年由布隆提出的.它实际上是一个很长的二进制向量和一系列随机映射函数.布隆过滤器可以用于检索一个元素是否在一个集合中.它的优点是空间效率和查询时间都远远超过一般的算法,缺点是有一定的误识别率和删除困难. 在计算机科学中,我们常常会碰到时间换空间或者空间换时间的情况,即为了达到某一个方面的…
[每日五分钟搞定大数据]系列,HBase第四篇 这一篇你可以知道, HFile的内部结构? HBase读文件细粒度的过程? HBase随机读写快除了MemStore之外的原因? 上一篇中提到了Hbase的数据以HFile的形式存在HDFS, 物理存储路径是: NameSpace->Table->Region->CF->HFile 这一篇我们来说下这个HFile,把路径从HFile开始再补充一下 HFile->Block->KeyValue. 顺便科普一下,HFile具体…
[每日五分钟搞定大数据]系列,HBase第三篇 聊完场景和数据模型我们来说下HBase的架构,在网上找了张比较清晰的图,我觉得这张图能说明很多问题,那这一篇我们就重点来解析下这张图 角色与职责 先介绍下上图中的几个角色和Ta们的职责: 1.HMaster 为Region server分配region; 负责Region server的负载均衡; 发现失效的Region server并重新分配其上的region; 处理schema更新请求 2.Client Client包含访问HBase的接口,并…
[每日五分钟搞定大数据]系列,HBase第一篇 结束了Zookeeper篇, 接下来我们来说下Google三驾马车之一BigTable的开源实现:HBase,要讲的内容暂定如下: 这是第一篇我们先不聊技术实现,只讨论特性和场景 hbase的特点 千万级高并发 PB级存储 非结构化存储 动态列,稀疏列 支持二级索引 强一致性,可靠性,扩展性(CP系统,可用性做了一点让步) 场景 1. 写密集型应用,每天写入量巨大,而相对读数量较小的应用 2. 不需要复杂查询条件来查询数据的应用 使用rowkey,…
一.前述 Mapreduce可以自定义Inputforma对象和OutPutformat对象,所以原理上Mapreduce可以和任意输入源结合. 二.步骤 将结果写会到hbase中去.  2.1 Main函数 import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.Path; import org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil; impor…
一.前述. Hbase shell启动命令窗口,然后再Hbase shell中对应的api命令如下. 二.说明 Hbase shell中删除键是空格+Ctrl键. 三.代码 1.封装所有的API package com.sxt.hbase; import java.io.IOException; import java.util.ArrayList; import java.util.List; import org.apache.hadoop.conf.Configuration; impor…
HBase其实就是一个数据库,无非就是存储和增删改查,那我们先从数据模型说起把 这里有一张表,是用关系型数据库的思维画出来的表,这样比较易于理解: 概念 Table(表格) 没啥说的,和关系型数据库一样,由多行组成 Row(行) 包含一个key和一个或者多个列.行按照RowKey字典序存储在表格中. Column Family(列族) 可以理解为一组列的集合,HBase官方建议尽量的减少ColumnFamily的数量. Column Qualifier(列) 一个 Column Family 下…
Hbase 定义 HBase是一个开源的非关系型分布式数据库(NoSQL),它参考了谷歌的BigTable建模,实现 的编程语言为 Java. 是Apache软件基金会的Hadoop项目的一部分,运行于HDFS文件系统之上,因此可以容错地存 储海量稀疏的数据 特点 高可靠 高并发读写 面向列 可伸缩 易构建 行存储 优点:写入一次性完成,保持数据完整性 缺点:数据读取过程中产生冗余数据,若有少量数据可以忽略 列存储 优点:读取过程,不会产生冗余数据,特别适合对数据完整性要求不高的大数据领域 缺点…
使用Java API与HBase集群交互时,需要构建HTable对象,使用该对象提供的方法来进行插入/删除/查询等操作.要创建HTable对象,首先要创建一个带有HBase集群信息的配置对象Configuration conf,其一般创建方法如下: Configuration conf = HBaseConfiguration.create(); //设置HBase集群的IP和端口 conf.set("hbase.zookeeper.quorum", "XX.XXX.X.XX…
HBase是谷歌BigTble的开源实现.谷歌的三篇论文拉开了大数据江湖的序幕,铸就了现在以Hadoop为主的大数据技术生态圈.而HBase是开源的大数据数据库,和传统的行式数据库不同的是,HBase是列式数据库.列式数据的特点是开源横向扩展,将一张表的数据存储在hadoop集群的不同datanode中,一张表的存储量可以达到T级别.这是行式关系型数据库无法实现的.本文主要讲解HBase的基本概念,只有概念清楚了才能更好的在我们的系统中使用HBase. 核心组件介绍 Table:可理解为传统数据…
先给结论吧:HBase利用compaction机制,通过大量的读延迟毛刺和一定的写阻塞,来换取整体上的读取延迟的平稳. 1.为什么要compaction 在上一篇 HBase读写 中我们提到了,HBase在读取过程中,会创建多个scanner去抓去数据. 其中,会创建多个storefilescanner去load HFile中的指定data block.所以,我们很容易就想到,如果说HFile太多的话,那么就会涉及到很多磁盘IO,这个就是常说的“读放大”现象. 因此,就有了今天的主题,HBase…