2. HBase中文学习手册之如何运行一个单机版的HBase?

HBase中文学习手册之如何运行一个单机版的HBase?

    • 1.1 介绍
    • 1.2 快速开始
      • 1.2.1 安装 Open JDK 8
      • 1.2.2 启动 HBase
      • 1.2.3 Shell 练习
      • 1.2.4 运行停止脚本来停止HBase

1.1 介绍

上篇博文HBase中文学习手册之揭开Hbase的神秘面纱分享了 HBase 的一些理论基础知识的介绍。

本文将会继续分享如何运行一个单机版的 HBase,我们将会通过shell创建一个表,插入一行,然后删除它,最后停止HBase。

1.2 快速开始

值得注意的是 HBase 不支持 Windows, 因此请使用 Centos7 或 Mac 来安装执行 HBase.

1.2.1 安装 Open JDK 8

执行如下命令安装 open jdk 8

su -c "yum install java-1.8.0-openjdk-devel.x86_64" 

查看 jdk安装路径

which java

执行成功如下所示:

[root@iZ8vbcspjfrjvp5tqam9c6Z opt]# which java
/usr/bin/java
[root@iZ8vbcspjfrjvp5tqam9c6Z opt]#

值得注意的是这里的/usr/bin/java中的java是一个快捷方式,并不是一个文件夹
因此输入如下命令查看这个快捷方式指向的实际路径

ls -lrt /usr/bin/java

输出内容如下:

lrwxrwxrwx. 1 root root 22 Aug 23 00:11 /usr/bin/java -> /etc/alternatives/java

这个路径还是一个快捷方式,我们继续查看实际指向路径

ls -lrt /etc/alternatives/java

输出内容如下:

lrwxrwxrwx. 1 root root 73 Aug 23 00:11 /etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.382.b05-1.el7_9.x86_64/jre/bin/java

因此 Java HOME 实际路径是:

/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.382.b05-1.el7_9.x86_64

打开环境变量配置文件并进行编辑,输入如下命令

vi /etc/profile

然后进入文件编辑模式输入如下命令:

i

然后移动光标到文件的最后面添加如下内容:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.382.b05-1.el7_9.x86_64
export CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar
export PATH=$PATH:$JAVA_HOME/bin

然后按下电脑上的ESC, 输入如下命令保存并退出

:wq

然后还需要将环境变量编译生效

source /etc/profile

1.2.2 启动 HBase

启动 Hbase输入如下内容:

./bin/start-hbase.sh

1.2.3 Shell 练习

  • 用shell连接你的HBase

输入如下命令,可以进入 HBase 控制台:

./bin/hbase shell
  • 创建一个名为 test 的表,这个表只有一个 列族 为 cf。
create 'test', 'cf'

创建成功执行如下所示:
在这里插入图片描述

  • 可以列出所有的表来检查创建情况,然后插入些值。
list 'table'

执行结果如下:
在这里插入图片描述

  • 插入一些测试数据
put 'test', 'row1', 'cf:a', 'value1'

执行成功如下所示:
在这里插入图片描述
再插入两条:

put 'test', 'row2', 'cf:b', 'value2'
put 'test', 'row3', 'cf:c', 'value3'

执行成功如下所示:
在这里插入图片描述

  • 以上我们分别插入了3行。第一个行key为row1, 列为 cf:a, 值是 value1。
  • HBase中的列是由列族前缀和列的名字组成的,以冒号间隔。

例如这一行的列名就是a.

  • 检查插入情况.

Scan这个表,操作如下

scan 'test'

执行成功如下所示:
在这里插入图片描述

  • Get一行,操作如下
get 'test', 'row1'

执行成功如下所示:
在这里插入图片描述

  • disable 再 drop 这张表,可以清除你刚刚的操作
disable 'test'

执行成功如下所示:
在这里插入图片描述

  • 删除刚才的操作
drop 'test'

执行成功如下所示:
在这里插入图片描述

  • 关闭shell
exit

执行成功如下所示:
在这里插入图片描述

1.2.4 运行停止脚本来停止HBase

停止脚本来停止 HBase执行如下命令:

./bin/stop-hbase.sh

执行成功如下所示:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/92084.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Spring boot(一)

Spring Boot是一个构建在Spring框架顶部的项目。它提供了一种简便,快捷的方式来设置,配置和运行基于Web的简单应用程序。 它是一个Spring模块,提供了 RAD(快速应用程序开发)功能。它用于创建独立的基于Spring的应用程序,因为它需…

mysql 字符集、比较规则, 比较规则底层逻辑

字符集的级别 show variables like ‘%charecter%’; character_set_server 服务器级别 一般在 5.7: C:\ProgramData\MySQL\MySQL Server 5.7\my.ini 8.0: C:\ProgramData\MySQL\MySQL Server 5.7\my.ini Linux 系列 vim /etc/my.cnf chara…

深入探讨C存储类和存储期——Storage Duration

🔗 《C语言趣味教程》👈 猛戳订阅!!! ​—— 热门专栏《维生素C语言》的重制版 —— 💭 写在前面:这是一套 C 语言趣味教学专栏,目前正在火热连载中,欢迎猛戳订阅&#…

MySQL—MySQL的NULL值是怎么存放的

一、引言 1、MySQL数据存放在哪个文件? 创建一个数据库会产生三种格式的文件,分别是.opt格式、.frm格式、.ibd格式。 opt格式:用来存储当前数据库的默认字符集和字符校验规则。 frm格式:该文件是用来保存每个表的元数据信息的&…

0基础入门C++之类和对象下篇

目录 1.再谈构造函数1.1构造函数赋值1.2初始化列表1.3explicit关键字 2.static成员2.1概念2.1静态成员变量2.2静态成员函数2.3特性 3.匿名对象4.友元函数4.1友元函数4.2友元类 5.内部类6.再次理解类和对象 1.再谈构造函数 首先我们先来回忆一下构造函数: 构造函数是…

【Java 高阶】一文精通 Spring MVC - 数据验证(七)

👉博主介绍: 博主从事应用安全和大数据领域,有8年研发经验,5年面试官经验,Java技术专家,WEB架构师,阿里云专家博主,华为云云享专家,51CTO 专家博主 ⛪️ 个人社区&#x…

用AI + Milvus Cloud搭建着装搭配推荐系统

在上一篇文章中,我们学习了如何利用人工智能技术(例如开源 AI 向量数据库 Milvus Cloud 和 Hugging Face 模型)寻找与自己穿搭风格相似的明星。在这篇文章中,我们将进一步介绍如何通过对上篇文章中的项目代码稍作修改,获得更详细和准确的结果,文末附赠彩蛋。 注:试用此…

【头歌】构建哈夫曼树及编码

构建哈夫曼树及编码 第1关:构建哈夫曼树 任务描述 本关任务:构建哈夫曼树,从键盘读入字符个数n及这n个字符出现的频率即权值,构造带权路径最短的最优二叉树(哈夫曼树)。 相关知识 哈夫曼树的定义 设二叉树具有n个带权值的叶子结点{w1,w2,...,wn},从根结点到每个叶…

《Zookeeper》源码分析(二十三)之 客户端的命令处理过程

目录 客户端的命令处理过程1. ZooKeeper.create()2. ClientCnxn.submitRequest()3. SendThread.run()4. ClientCnxnSocket.doTransport()5. SendThread.readResponse() 客户端的命令处理过程 以创建节点命令为例,整个过程流程如下: CliCommand命令在抽…

uniapp国际化npm install vue-i18n报错

npm install vue-i18n //npmyarn add vue-i18n //yarn在vue2环境下,默认安装 npm install vue-i18n 的版本是 vue-i18n9.1.9,所以报错。 npm view vue-i18n versions --json 用以上命令查看版本: vue2建议5.0版本 npm install vue-i1…

Wireshark数据抓包分析之ARP协议

一、实验目的: 通过wireshark的数据抓包了解这个ARP协议的具体内容 二、预备知识: 1.Address Resolution Protocol协议,就是通过目标IP的值,获取到目标的mac地址的一个协议 2.ARP协议的详细工作过程,下面描述得非常清晰&#xff…

VScode使用SSH连接linux

1、官网下载和安装软件 https://code.visualstudio.com/Download 2、安装插件 单击左侧扩展选项,搜索插件安装 总共需要安装的插件如下所示 3、配置连接服务器的账号 安装完后会在左侧生成了远程连接的图标,单击此图标,然后选择设置图标…

[LitCTF 2023]Flag点击就送!

进入环境后是一个输入框,可以提交名字 然后就可以点击获取flag,结果回显提示,需要获取管理员 可以尝试将名字改为admin 触发报错,说明可能存在其他的验证是否为管理员的方式 通过抓包后,在cookie字段发现了 特殊的东西…

数据隐私与安全在大数据时代的挑战与应对

文章目录 数据隐私的挑战数据安全的挑战应对策略和方法1. 合规和监管2. 加密技术3. 匿名化和脱敏4. 安全意识培训5. 隐私保护技术 结论 🎈个人主页:程序员 小侯 🎐CSDN新晋作者 🎉欢迎 👍点赞✍评论⭐收藏 ✨收录专栏&…

spring框架:简介+依赖注入

目录 一、spring简介 二、创建项目 三、spring创建对象 四、SpringBean管理 1.注入实现-XML 2.注入实现-注解 一、spring简介 spring诞生与2003年,是一个轻量级的、IOC( Inversion Of Control 控制反转)和AOP(Aspect Oriented Programming 面向切面编程)的jav…

【rust/egui】(六)看看template的app.rs:TextEdit

说在前面 rust新手,egui没啥找到啥教程,这里自己记录下学习过程环境:windows11 22H2rust版本:rustc 1.71.1egui版本:0.22.0eframe版本:0.22.0上一篇:这里 TextEdit 文本编辑框 其定义为&#…

有限与无限游戏 | 真北荐书

2023佛山敏捷之旅暨DevOps Meetup志愿者为进行大会的组织与准备,每周三晚有一个例会。 例会前等人的时间,涌现出一个小的分享环节。今天分享这本书:《有限与无限游戏》。 大家选择成为志愿者,是一个无限游戏。而组织活动和完成各种…

uni-app里使用webscoket

实现思路和vue中是一样的。如果想看思路可以看这篇文章:websocket 直接上可以运行的代码: 一、后端nodeJS代码: 1、新建项目文件夹 2、初始化项目: npm init -y 3、项目里安装ws npm i ws --save 4、nodeJS代码&#xff1…

STL list基本用法

目录 list的使用构造函数和赋值重载迭代器(最重要)容量相关插入删除元素操作reversesortuniqueremovesplice list的底层实际是双向链表结构 list的使用 构造函数和赋值重载 构造函数说明list()无参构造list (size_type n, const value_type& val value_type())构造的li…

Python学习笔记_进阶篇(一)_浅析tornado web框架

tornado简介 1、tornado概述 Tornado就是我们在 FriendFeed 的 Web 服务器及其常用工具的开源版本。Tornado 和现在的主流 Web 服务器框架(包括大多数 Python 的框架)有着明显的区别:它是非阻塞式服务器,而且速度相当快。得利于…