Docker下HBase学习,三部曲之一:极速体验

温馨提醒:有兴趣随本文一起实战的读者,请您先在电脑上安装运行Docker服务。

HBase是一个分布式的、面向列的开源数据库,很多应用都会用到,从本章开始我们一同实战HBase,在docker环境下从搭建到java开发都体验一遍。

首先让我们快速体验一下HBase吧:

下载并运行镜像

我已经备好集成了HBase单机版的镜像,可以执行以下命令下载到本地:

docker pull bolingcavalry/centos7-hbase126-standalone:0.0.1

运行容器

执行以下命令可以用刚刚下载的镜像创建一个容器,容器名称hbase001,60010端口映射到本机:

docker run --name=hbase001 -p 60010:60010 -idt bolingcavalry/centos7-hbase126-standalone:0.0.1

进入容器

执行以下命令,可以进入hbase001容器:

docker exec -it hbase001 /bin/bash

启动HBase服务

进入hbase001容器后,输入以下命令就能启动hbase服务:

/usr/local/work/hbase/bin/start-hbase.sh

可以看到hbase启动的输出信息如下图:

进入HBase命令行,体验HBase

执行以下命令,可以进入HBase的命令行模式:

hbase shell

见到的如下图所示:

终于可以开始体验HBase了,在命令行模式下,我们先创建个表试试,输入以下命令创建student表,行键是id,一个列族info:

create 'student','id','info'

提示如下:

输入list就能列出新增的student表,输入scan ‘student’可以列出student表的内容,此时还是个空表,如下图:

执行以下命令在student表新增一条记录,id为1001,名称为Tom:

put 'student','1001','info:name','Tom'

再给这条记录增加年龄属性:

put 'student','1001','info:age','16'

执行查询命令试试,根据行键1001查询记录:

get 'student','1001'

结果如下图,该记录被查到:

也可以使用scan ‘student’可以列出student表的内容,如下图:

现在我们打开浏览器,输入http://localhost:60010可以看到HBase的基本情况,其中“User Tables“这一部分中已经可以看到student表的信息了,如下图:

最后,回到HBase的命令行控制台,依次输入disable ‘student’和drop ‘student’两个命令,可以将student表删除,此时再执行list命令就看不到student表的信息了,执行scan ‘student’命令也会提示错误,如下图:

至此我们已对HBase有了最初的印象,体验完成,接下来的章节我们继续了解HBase环境的搭建,以及java应用如何调用HBase的服务。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏陈仁松博客

ASP.NET Core 'Microsoft.Win32.Registry' 错误修复

今天在发布Asp.net Core应用到Azure的时候出现错误InvalidOperationException: Cannot find compilati...

5198
来自专栏一个会写诗的程序员的博客

Spring Reactor 项目核心库Reactor Core

Non-Blocking Reactive Streams Foundation for the JVM both implementing a Reactiv...

2722
来自专栏C#

DotNet加密方式解析--非对称加密

    新年新气象,也希望新年可以挣大钱。不管今年年底会不会跟去年一样,满怀抱负却又壮志未酬。(不过没事,我已为各位卜上一卦,卦象显示各位都能挣钱...)...

5798
来自专栏我和未来有约会

Kit 3D 更新

Kit3D is a 3D graphics engine written for Microsoft Silverlight. Kit3D was inita...

2886
来自专栏java 成神之路

使用 NIO 实现 echo 服务器

5487
来自专栏转载gongluck的CSDN博客

cocos2dx 打灰机

#include "GamePlane.h" #include "PlaneSprite.h" #include "BulletNode.h" #include...

6866
来自专栏跟着阿笨一起玩NET

c#实现打印功能

3562
来自专栏Golang语言社区

【Golang语言社区】GO1.9 map并发安全测试

var m sync.Map //全局 func maintest() { // 第一个 YongHuomap := make(map[st...

5388
来自专栏落花落雨不落叶

canvas画简单电路图

81011
来自专栏pangguoming

Spring Boot集成JasperReports生成PDF文档

由于工作需要,要实现后端根据模板动态填充数据生成PDF文档,通过技术选型,使用Ireport5.6来设计模板,结合JasperReports5.6工具库来调用渲...

1.4K7

扫码关注云+社区