当前位置: 首页 > 编程日记 > 正文

HBase安装与命令行操作

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

HBase简介

基于Hadoop的NoSql数据库,适合存储半结构化、非结构化的稀疏数据,提供增删改查能力。因为其底层是hdfs,所以具有存储海量数据,高容错,高可用等特点,可以达到关系型数据库(市面上分布式关系型数据库除外)无法企及的上亿记录毫秒级查询能力。

具备行级别的事务能力。

利用hdfs存储数据,mr处理数据,zk作为协调工具

安装与配置

单机模式

解压:

tar -zxvf xxxxx.tar.gz

修改conf/hbase-site.xml

配置hbase使用的数据文件的位置,默认在/tmp/hbase-[username],此目录是linux的临时目录,可能会被系统清空,所以最好修改一下

        <property>      <name>hbase.rootdir</name>  <value>file:///<path>/hbase</value></property>

这种模式几乎不采用,建议学习使用伪分布模式

伪分布模式

解压:

tar -zxvf xxxxx.tar.gz

修改conf/hbase-env.sh

找到JAVA_HOME,将java的安装目录配置进去

修改hbase-site.xml

            <property><name>hbase.rootdir</name><value>hdfs://hadoop00:9000/hbase</value></property><property><name>dfs.replication</name><value>1</value></property>

hbase.rootdir:hbase文件存放的目录,hadoop00是hostname(该值需先在/etc/hosts中配置)

dfs.replication:文件备份数,此配置需与hdfs中保持一致

启动:

进入到hbase的安装目录\bin

./start-hbase.sh

233632_uJId_3049601.png

进入hbase操作界面:

./hbase shell

233639_azC7_3049601.png

完全分布模式

解压:

tar -zxvf xxxxx.tar.gz

修改conf/hbase-env.sh

找到JAVA_HOME,将java的安装目录配置进去

export JAVA_HOME=/home/jionsvolk/proc/jdk1.8.0_65
#如果设置为TRUE会管理配置的ZK集群,这样会导致ZK集群管理的其他分布式组件失效,所以设置为FALSE
export HBASE_MANAGES_ZK false

修改conf/hbase-site.xml

                <property><name>hbase.rootdir</name><value>hdfs://hadoop00:9000/hbase</value></property><!-- 副本数一定要和使用的HDFS副本数配置一致,否则可能导致一些不可预料的问题 --><property><name>dfs.replication</name><value>1</value></property><property><name>hbase.cluster.distributed</name><value>true</value></property><property><name>hbase.zookeeper.quorum</name><value>hadoop01:2181,hadoop02:2181,hadoop03:2181</value></property>

修改conf/regionservers文件

此文件中配置所有的regionserver的列表

    hadoop01
    hadoop02
    hadoop03

启动集群:

在启动hbase之前,先要启动zookeeper集群和hadoop集群(或者hadoop的伪分布式模式)

./zkServer.sh ##在zk每个机器上启动zk

./start-all.sh ##在hadoop每个机器上启动hadoop伪分布式模式

./start-hbase.sh ##启动hbase集群,该命令会启动其他机器上的所有regionserver和某一台机器上的HMaster。

233656_lHH3_3049601.png

可以使用jps查看启动的进程,三台主机中只有一台有HMaster进程

233709_ewqR_3049601.png

如果要设置HMaster的高可用,需要启动它的备用节点,需在非HMaster机器上的执行

./hbase-daemon.sh start master

关闭集群 stop-hbase.sh

基本操作

	#帮助hbase>help#创建表,指定表名、列族,列不属于表的元数据,在添加数据的时候指定即可#test--表名;'colfam1','colfam2'--两个列族hbase>create 'test','colfam1','colfam2'#查看table列表hbase>list#查看表结构hbase>describe 'test'#插入数据#myrow-1 是行键;#q1 q2 q3就是列名;#value-1 value-2 value-3就是列对应的值hbase>put 'test','myrow-1','colfam1:q1','value-1'hbase>put 'test','myrow-2','colfam1:q2','value-2'hbase>put 'test','myrow-2','colfam1:q3','value-3'#查看表的数据hbase>scan 'test'#更新test表myrow-2行的colfam1:q3列对应的数据put 'test','myrow-2','colfam1:q3','value-33'#再次查看表的数据hbase>scan 'test'#根据行键查询数据,与scan的区别是可以查看列的所有版本数据hbase>get 'test','myrow-2'#删除列数据hbase>delete 'test','myrow-2','colfam1:q2'#查看表的数据hbase>scan 'test'#删除表全量数据hbase>truncate 'test'#使表失效hbase>disable 'test'#删除表、会将表结构一起删除hbase>drop 'test'#建表时可以指定VERSIONS,配置的是当前列族在持久化到文件系统中时,要保留几个最新的版本数据,这并不影响内存中的历史数据版本hbase>create 'test',{NAME=>'colfam1',VERSIONS=>3},{NAME=>'colfam2',VERSIONS=>1}hbase>put 'test','myrow-1','colfam1:q1','value-1'#直接使用scan而不加RAW=>true只能查询到最新版本的数据hbase>scan 'test'hbase>put 'test','myrow-1','colfam1:q1','value-2'hbase>scan 'test'hbase>put 'test','myrow-1','colfam1:q1','value-3'hbase>scan 'test'#可以在查询时加上RAW=>true来开启对历史版本数据的查询,VERSIONS=>3指定查询最新的几个版本的数据hbase>scan 'test',{RAW=>true,VERSIONS=>3}hbase>put 'test','myrow-1','colfam1:q1','value-4'hbase>scan 'test'hbase>scan 'test',{RAW=>true,VERSIONS=>3}hbase>put 'test','myrow-1','colfam2:x1','value-1'hbase>scan 'test'hbase>put 'test','myrow-1','colfam2:x1','value-2'hbase>scan 'test'hbase>scan 'test',{RAW=>true,VERSIONS=>3}

转载于:https://my.oschina.net/u/3049601/blog/1820242

相关文章:

zip/unzip 命令

zip 命令 功能说明&#xff1a;压缩文件。语 法&#xff1a;zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工作目录>][-ll][-n <字尾字符串>][-t <日期时间>][-<压缩效率>][压缩文件][文件...][-i <范本样式>][-x <范本样式>]补充说明&#xf…

《App架构师实践指南》:移动开发的进阶指南

文章主要内容&#xff1a;什么是 app 架构师这本书主要内容读完感受什么是 App 架构师成为“架构师”是许多程序员的梦想&#xff0c;当然也包括我&#xff0c;在工作的几年里&#xff0c;我见过很多架构师&#xff0c;他们在设计某个大型系统时具备很大的话语权&#xff0c;可…

FoveaBox:目标检测新纪元,无Anchor时代来临 | 技术头条

作者 | CV君转载自我爱计算机视觉&#xff08;ID:aicvml&#xff09;目标检测的任务是“分类”并从图像中“定位”出物体&#xff0c;但长久以来&#xff0c;该领域的工作大多是这样&#xff1a;生成可能包含目标的区域&#xff0c;然后在该区域提取特征并分类。显然&#xff0…

【Ubuntu】安装中文输入法、终端不支持中文的解决方法

一、中文输入法安装 1、安装汉语语言包 sudo apt install fcitx sudo apt install language-pack-zh-hans2、安装google拼音输入法 sudo apt install fcitx-googlepinyin安装完毕后&#xff0c;重启或者退出登陆 3、安装sun-pinyin输入法 sudo apt install fcitx-sunpinyi…

CCNA 第一章 网际互联

第一章 网际互联 路由器知识点&#xff1a; 1、默认时&#xff0c;路由器不转发任何广播包和组播包。 2、路由器使用逻辑地址&#xff0c;逻辑地址在网络层的包头中&#xff0c;用来决定将包转发到的下一跳路由器。 3、路由器可以使用管理员创建的访问表来控制被允许进入或流出…

【Cmake】执行cmake命令时报错:No XSLT processor found

一、问题描述 在ubuntu中&#xff0c;在生成Doc(文档)中&#xff0c;执行cmake命令时报错&#xff1a;No XSLT processor found 二、原因查找 google该错误信息&#xff0c;原因是确实ubuntu中没有安装 xsltproc 三、解决方法 安装 xsltproc sudo apt install xsltproc四…

一张“黑洞”需要拍两年?有了它或许就不会让大家等那么久了

只闻其名&#xff0c;不见其形&#xff0c;从小听到大的”黑洞“&#xff0c;终于让我们在有生之年见到了它的真容&#xff0c;只能说幽暗的宇宙美丽也调皮&#xff0c;长久以来人类关于黑洞的探索&#xff0c;在这一刻终于得到影像印证。相信很多人心中都有一个疑惑&#xff0…

如何在一场面试中展现你对Python的coding能力?| 技术头条

点击上方↑↑↑蓝字关注我们~作者 | wLsq 来源 | Python数据科学&#xff08;ID:PyDataScience&#xff09;如果你已经通过了招聘人员的电话面试&#xff0c;那么下面正是该展现你代码能力的时候了。无论是练习&#xff0c;作业&#xff0c;还是现场白板面试&#xff0c;这都是…

Django web : CSRF verification failed. Request aborted.

错误标题&#xff1a;CSRF verification failed. Request aborted. 错误描述&#xff1a; HelpReason given for failure:CSRF cookie not set.In general, this can occur when there is a genuine Cross Site Request Forgery, or when Djangos CSRF mechanism has not been …

分享一个PC端六格密码输入框写法

如图。我们一般做商城类的项目不免会用到支付密码输入框&#xff0c;我研究了下并决定发上来&#xff0c;也当作是自己成长路上的一点小小的记录。本次介绍的是基于vue的项目 html&#xff1a; <template><div classam_payPwd :id"ids_${id}"><input …

【数据库】sqlite中PRAGMA命令说明

关于sqlite中PRAGMA的说明网上已经有很多了&#xff0c;这里不再复制粘贴&#xff0c;只把内容最全的网址连接记录一下&#xff1a; 官网说明&#xff08;英文&#xff09;&#xff1a;https://sqlite.org/pragma.html 中文翻译&#xff0c;参见博客&#xff1a;https://www.i…

思科交换机各类型中字母的意思?

24TC-L中各字母的意思分别指? 24TT-L中第二个T的意思? 2960和2960G的区别&#xff1f;基中G是什麽意思? F0/1和G0/1区别&#xff1f; 24代表是24个网络接口 第一个T表示TX&#xff0c;也就是所谓RJ-45的类型&#xff08;指这个24个接口都是RJ-45&#xff0c;若是P的话&#…

医生还未失业,IBM Watson已跌入深渊 | 极客头条

点击上方↑↑↑蓝字关注我们~作者 | Eliza Strickland译者 | Major编辑 | 琥珀出品 | AI 科技大本营&#xff08;公众号ID&#xff1a;rgznai100&#xff09;导语&#xff1a;2011 年&#xff0c;Jeopardy! 挑战赛的成功&#xff0c;让外界看到 IBM 的人工智能给医学带来的革命…

【Qt】Qt容器总结

目录 一、容器类1、顺序容器2、关联容器二、Qt容器特点三、迭代器1、Jave样式的迭代器(效率略低)2、SLT样式的迭代器注意: 由于Qt的容器是写时复制的,因此非const访问器从本质上讲更加昂贵, 因为它们必须首先检查是否需要复制基础数据(并在必要时进行复制)。 因此,在Qt…

Java5线程并发库之保障变量的原子性操作

为什么80%的码农都做不了架构师&#xff1f;>>> java.util.concurrent.atomic 首先我们看java.util.concurrent.atomic包&#xff0c;它主要是提供一些为各种数据类型变量提供原子性操作的类。 AtomicInteger 比如我们来看AtomicInteger类&#xff0c;大家在写程序…

EIGRP OSFP 利用NULL0接口防止路由环路 Loopback Null0接口揭秘

在EIGRP中&#xff0c;只要发生总结就会在路由表中自动产生一条指向NULL0的路由条目&#xff0c;这条路由的直接意思是&#xff1a;匹配这条路由的数据包会被路由器丢掉。它的目的是为了避免在某些情况下产生路由环路。 以第三四学期的中文书P86中的图4-15为例做个说明&#xf…

【C++】C++11 STL算法(一):非修改序列操作(Non-modifying sequence operations)

目录一、all_of、any_of、none_of&#xff1a;1、官方说明2、谓词3、STL算法对谓词的说明4、谓词的五种模式5、all_of &#xff08;C 11&#xff09;6、any_of &#xff08;C 11&#xff09;7、none_of&#xff08;C 11&#xff09;8、官方demo&#xff1a;二、for_each1、原型…

Python openpyxl 之 Excel 文档简单操作

背景&#xff1a;生活中常常因日常工作&#xff0c;在记录统计方面需频繁处理较多 Excel 表格&#xff0c;这部分工作虽可由人工完成&#xff0c;但这样会显得有些繁琐且可能存在偏差&#xff0c;遂闲时查阅了是否有相关基于python处理Excel表格的学习文档&#xff0c;后获知这…

售价910元!周志华等人英文新书《演化学习》出炉!

点击上方↑↑↑蓝字关注我们~整理 | 琥珀出品 | AI 科技大本营&#xff08;公众号ID&#xff1a;rgznai100&#xff09;关于人工智能教育&#xff0c;从学生培养方案&#xff0c;到课程设置、教材&#xff0c;甚至是授课老师&#xff0c;全国各大高校正探索一条新道路。先是从去…

linux 查看 文档 不显示注释 命令

原文&#xff1a;http://www.weiruoyu.cn/?p661 最近发现一个很好的命令&#xff0c;就是linux 查看 文档 不显示注释 的命令[rootlocalhost ha.d]# cat ha.cf |grep -v ^# logfile /var/log/ha-log 转载于:https://blog.51cto.com/weiruoyu/705840

【C++】C++11 STL算法(二):修改序列的操作(Modifying sequence operations)

目录一、copy、copy_if1、原型&#xff1a;2、说明&#xff1a;3、官方demo二、copy_n1、原型&#xff1a;2、说明&#xff1a;3、官方demo三、copy_backward1、原型&#xff1a;1、说明&#xff1a;1、官方demo四、move1、原型&#xff1a;2、说明&#xff1a;3、官方demo五、…

ECharts测量图,功率图

/*** 测量图&#xff0c;功率图1&#xff0c;仪表盘*/ mainpage.prototype.initEcharsGLT1 function(oneJZ){ //if(myChartGLT1 null && myChartGLT1 ! "" && myChartGLT1 ! undefined) {myChartGLT1.dispose(); //每次加载之前清除之前的echar…

北京智源人工智能研究院启动“智源学者计划”,与旷视发布首个智源联合实验室

4月16日&#xff0c;北京智源人工智能研究院与中国人工智能领军企业旷视召开“智源学者计划暨联合实验室发布会”。北京市科委副主任张光连&#xff0c;海淀区委常委、副区长李俊杰&#xff0c;以及来自科技部、北京市科委、海淀区人民政府、朝阳区人民政府、中关村管委会&…

配置隧道模式的IPSec.×××

一、拓扑及IP配置 二、配置清单 R1#show run Building configuration... Current configuration : 1449 bytes ! upgrade fpd auto version 12.4 service timestamps debug datetime msec service timestamps log datetime msec no service password-encryption ! hostname R1 …

【C++】C++11 STL算法(三):分隔操作(Partitioning operations)、排序操作(Sorting operations)

目录分隔操作&#xff08;Partitioning operations&#xff09;一、is_partitioned1、原型&#xff1a;2、说明&#xff1a;3、官网demo二、partition1、原型&#xff1a;2、说明&#xff1a;3、官方demo三、partition_copy1、原型&#xff1a;2、说明&#xff1a;3、官方demo四…

浪潮发布重磅产品“元脑”,专注AI全栈能力输出

整理 | 一一出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;4月16日&#xff0c;以“智慧凝聚”为题的IPF2019浪潮云数据中心合作伙伴大会在上海举办。大会重点聚焦浪潮“智慧计算”战略&#xff0c;以AI计算力和创新力&#xff0c;联接、承载、赋能合作伙伴。为了布…

React+Redux+中间件

MVVM是Model-View-ViewModel的缩写。mvvm是一种设计思想。Model 层代表数据模型&#xff0c;也可以在Model中定义数据修改和操作的业务逻辑&#xff1b;View 代表UI 组件&#xff0c;它负责将数据模型转化成UI 展现出来&#xff0c;ViewModel 是一个同步View 和 Model的对象。在…

ピエタ~幸せの青い鳥~相关

先打全所有升级补丁 不然没有end4 补丁下载页 4个end出现方法 只看律视角 选项任意→end1 只看愛视角 选项任意→end2 检查一下 这两个流程的CG是否收全了 开启唯视角以后有些CG是找不回的 只看唯视角 选项任意→end3 只看唯视角 最后一个选项选“唯” 此后只要律或愛的视角开…

【C++】C++11 STL算法(四):二分查找法(Binary search operations)、合并操作

目录一、lower_bound1、原型&#xff1a;2、说明&#xff1a;3、官方demo二、upper_bound1、原型&#xff1a;2、说明&#xff1a;3、官方demo三、binary_search1、原型&#xff1a;2、说明&#xff1a;3、官方demo四、equal_range1、原型&#xff1a;2、说明&#xff1a;3、官…

腾讯开源分布式NoSQL存储系统DCache | 技术头条

作者 | 山宝银&#xff0c;腾讯后台高级工程师&#xff0c;专注于分布式 NoSQL 存储领域的技术研发工作&#xff0c;参与腾讯多个自研存储系统的开发&#xff0c;在分布式系统、高可用与高性能服务等领域有较丰富的经验。来源 | 腾讯技术博客当你在电商平台秒杀商品或者在社交网…