文档章节

Hadoop HBase

manonline
 manonline
发布于 2017/07/25 00:27
字数 385
阅读 4
收藏 0

Comparison

RDBMS

HBase

Overview

Master

HBase Master Node orchestrates a cluster of one or more Region Servers

  • Bootstrap a virgin install
  • Assign regions to Region Servers
  • Recover Region Server failure

Region Server

  • Carry regions
  • Respond to client read/write requests
  • Inform Master Node the new region

Zookeeper

The authority on cluster state. The Zookeeper ensemble hosts vital:

  • Location of the hbase:meta table
  • Address of Master
  • Host the assignment transaction state (for recovery purpose)

Client

When bootstrapping a client connection to HBase cluster, the client must be passed the location of Zookeeper ensemble. Thereafter, client navigates the ZooKeeper hierarchy to learn about cluster attributes  

hbase:meta

HBase keep a special catalog table named hbase:meta, within which it maintains the current list, state and locations of all user-space regions afloat on the cluster. Entries in hbase:meta are keyed by region name, which is 

  • table_name,start_row,creation_time.MD5(table_namestart_rowcreation_time).

Fresh clients connect to the ZooKeeper cluster first to learn the location of hbase:meta. The client then does a lookup against the appropriate hbase:meta region to figure out the hosting user-space region and its location. Thereafter, the client interacts directly with the hosting region server.

As region transitions - split, disabled, enabled, deleted or redeployed, the catalog table is updated.

HBase Commands

By default, HBase writes to /${java.io.tmpdir}/hbase-${user.name}.${java.io.tmpdir} usually maps to /tmp, but you should configure HBase to use a more permanent location by setting hbase.tmp.dir in hbase-site.xml. In standalone mode, the HBase master, the regionserver, and a Zookeeper instance are all run in the same JVM.

  • HBase Shell
%hbase shell

# Create a table with one column family (with default column family attributes)
hbase(main):001:0>create 'table_name', 'column_family_name'

# Display tables 
hbase(main):002:0>list

# Insert some data
hbase(main):003:0>put 'table_name' 'row1', 'column_family_name:column_name', 'value1'
hbase(main):004:0>put 'table_name' 'row2', 'column_family_name:column_name', 'value2'
hbase(main):005:0>put 'table_name' 'row3', 'column_family_name:column_name', 'value3'

# Get a particular row with the row key
hbase(main):006:0>get 'table_name' 'row1'

# List the table content
hbase(main):007:0>scan 'table_name'

Client

Java Client, REST, Thrift and MapReduce API.

Load Data

For a large dataset, first, copy the raw file into HDFS, and then run a MapReduce job that can read the input and write to HBase.

 

© 著作权归作者所有

共有 人打赏支持
上一篇: Hadoop Spark
下一篇: Hadoop Flume&Sqoop
manonline
粉丝 0
博文 73
码字总数 66740
作品 0
私信 提问
Sqoop数据导入到HBase遇上的问题及解决方法

  【IT168 技术】运行bin/sqoop import --connect jdbc:mysql://ip:port/database --username * --password **--hbase-bulkload --hbase-create-table --column-family info --hbase-row-k......

中国大数据
05/31
0
0
hadoop hive hbase 入门学习 (二)

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// hadoop 自学系列 hado......

curiousby
2015/03/08
0
0
HBase 常用Shell命令

1.进入hbase shell console $HBASE_HOME/bin/hbase shell 如果有kerberos认证,需要事先使用相应的keytab进行一下认证(使用kinit命令),认证成功之后再使用hbase shell进入可以使用whoami命...

zlfwmm
06/26
0
0
Apache HBase 1.2.7 发布,分布式数据库

Apache HBase 1.2.7 发布了,HBase 1.2.7 是 HBase 1.2 系列中的最新维护版本,继续以向 Hadoop 和 NoSQL 社区提供稳定、可靠的数据库为目标。此版本包括 250 多个自 1.2.6 以来的错误修复。...

局长
09/27
1K
1
2018-08-16期 HBase全分布模式集群及HMaster HA安装部署

一、安装介质 http://archive.apache.org/dist/hbase hbase-0.96.2-hadoop2-bin.tar.gz 二、安装JDK: [root@hadoop-server01 bin]# mkdir -p /usr/local/apps [root@hadoop-server01 bin]#......

JackmaSong
08/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

学习LinkedBlockingDeque源码

之前已经看了实现deque接口的ArrayDeque, ConcurrentLinkedDeque, LinkedList,也不能落下ConcurrentLinkedDeque,但是好像没在项目中用过。 这里看到实现的接口还有BlockingDeque<E>, Block...

woshixin
29分钟前
1
0
实战:用Python实现随机森林

摘要: 随机森林如何实现?为什么要用随机森林?看这篇足够了! 因为有Scikit-Learn这样的库,现在用Python实现任何机器学习算法都非常容易。实际上,我们现在不需要任何潜在的知识来了解模型...

阿里云官方博客
32分钟前
1
0
进程管理利器Supervisor--centos7下安装与卸载

目录 概述 环境准备 检查python环境 在线安装 配置Supervisor 启动并验证 概述 Supervisor的安装可以有在线安装和离线安装两种方式。安装方式取决于服务器是否联网,联网的话可采用在线安装,...

java_龙
39分钟前
4
0
spring系列汇总

spring spring-基于可扩展Schema的特性自定义标签 springmvc-同一个访问资源,多种视图解析方式 spring cache 配置使用aspectj模式织入 基于注解的spring缓存,轻松无侵入解决cache问题 spri...

细肉云吞
40分钟前
4
0
vsftpd搭建ftp

12月10日任务 14.4 exportfs命令 14.5 NFS客户端问题 15.1 FTP介绍 15.2/15.3 使用vsftpd搭建ftp exportfs命令 在nfs运行后的一段时间内,如果需要添加共享目录,这时需要修改exports文件,并...

robertt15
42分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部