【大数据存储与处理】实验一 HBase 的基本操作

这篇具有很好参考价值的文章主要介绍了【大数据存储与处理】实验一 HBase 的基本操作。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、实验目的:

1. 掌握 Hbase 创建数据库表及删除数据库表 

2. 掌握 Hbase 对数据库表数据的增、删、改、查。

二、实验内容:

1、题目 0:进入 hbase shell 

2题目 1:Hbase 创建数据库表 创建数据库表的命令:create '表名', '列族名 1','列族名 2','列族名 N'

3、题目二:HBase 数据库表数据的增、删、改、查 Hbase 增加数据的语法格式如下: 通过命令 put‘表名’, ‘rowKey’, ‘列族 : 列’ , '值' 例:

put 'user', '0001', 'info1:name','jack' put 'user', '0001', 'info2:age','18' put 'user', '0002', 'info1:name','tom' Hbase 查询数据的语法格式如下: 通过命令:scan‘表名’来查看表的所有记录

4、题目三:Hbase 删除数据库表 Hbase 删除数据库的语法格式如下(drop '表名'): 在删除表时,先要屏蔽该表,才能对该表进行删除 第一步: disable ‘表名’,第二步 :drop '表名' Disable 表后可以通过命令:is_enabled '表名',查看当前表是否可用 通过 drop 命令对表进行删除 最后用 list 命令查看 user 是否已被成功删除。 

5题目四 HBase python 基本编程 查看 StudentInfo 表中行键为“001”、列族为“StuInfo”、时间戳为 1 和 2 的版本数据。 

6题目五 HBase python 基本编程 (1) 查询 HBase 中所有数据库表

题目 0:进入 hbase shell

【大数据存储与处理】实验一 HBase 的基本操作,大数据,oracle,数据库,hbase,大数据,linux,服务器,分布式

题目一:Hbase 创建数据库表 

创建数据库表的命令:create '表名', '列族名 1','列族名 2','列族名 N' 

例如: 

以下示例创建了数据库表 user: 

如果想查看所有数据库表,可以使用 list 命令。 

可以看到,刚创建的数据库表 user 已经在数据库表的列表中,如果要看 user 表的结构, 

create 'user', 'info1', 'info2'
 

可以用命令:describeuser’,如下截图所示 

【大数据存储与处理】实验一 HBase 的基本操作,大数据,oracle,数据库,hbase,大数据,linux,服务器,分布式

通过命令:count '表名来查看表中的所有记录的数量(根据 rowKey 来计算

【大数据存储与处理】实验一 HBase 的基本操作,大数据,oracle,数据库,hbase,大数据,linux,服务器,分布式

题目二:HBase 数据库表数据的增、删、改、查 

Hbase 增加数据的语法格式如下

通过命令 put‘表名’rowKey‘列族 ’ , '

put 'user', '0001', 'info1:name', 'jack'
put 'user', '0001', 'info2:age', '18'
put 'user', '0002', 'info1:name', 'tom'

 

通过命令:scan‘表名’来查看表的所有记录

scan 'user'

通过命令:get '表名' , 'rowKey' 来查看某个 rowKey 下的所有记录。

get 'user', '0001'

通过命令:count '表名' 来查看表中的所有记录的数量(根据 rowKey 来计算)

count 'user'

通过命令:get '表名','rowkey','列族' 来查看某个 rowKey 列族的记录

get 'user', '0001', 'info1'

通过命令:get '表名','rowkey','列族:列来查看 rowKey 列族的某个列记

get 'user', '0001', 'info1:name'

Hbase 删除数据的语法格式如下:

通过命令:delete‘表名’,‘行名’,‘列族:列' 来删除某个记录

delete 'user', '0001', 'info1:name'

通过命令:get 来查询删除的记录是否删除成功:

例:get 'user','0001','info1:name'

通过命令:deleteall '表名','rowkey' 来删除整行记录

deleteall 'user', '0001'

通过命令:scan 来查看整个表的记录来看是否删除成功:

scan 'user'

通过命令:truncate '表名' 来清空表所有的记录。

truncate 'user'

Hbase 更新数据的语法格式如下:

通过命令:put 就是重写一遍,进行覆盖,hbase 没有修改,都是追加

即对相同 rowKey、列族和时间戳的数据再次添加即为数据的更新

比如:put 'user', '0001', 'info1:name','zhangsan'

再次追加:put 'user', '0001', 'info1:name','zhangsan2'

通过 scan 命令可以查看到 rowKey=0001 的列族 info 的栏位 name 的值被成功改为

zhangsan2

put 'user', '0001', 'info1:name','zhangsan2'

scan 'user'

题目三:Hbase 删除数据库表

Hbase 删除数据库的语法格式如下(drop '表名'):

在删除表时,先要屏蔽该表,才能对该表进行删除

第一步: disable ‘表名’,第二步 :drop '表名'

Disable 表后可以通过命令:is_enabled '表名',查看当前表是否可用

通过 drop 命令对表进行删除

 最后用 list 命令查看 user 是否已被成功删除。

【大数据存储与处理】实验一 HBase 的基本操作,大数据,oracle,数据库,hbase,大数据,linux,服务器,分布式

题目四 HBase python 基本编程

查看 StudentInfo 表中行键为“001”、列族为“StuInfo”、时间戳为 1 和 2 的版本数据。。

【大数据存储与处理】实验一 HBase 的基本操作,大数据,oracle,数据库,hbase,大数据,linux,服务器,分布式

题目五 HBase python 基本编程

1) 查询 HBase 中所有数据库表

步骤一:master 主节点打开 HBase 集群上的 thrift 服务。打开新终端输入命令;

hbase thrift start

【大数据存储与处理】实验一 HBase 的基本操作,大数据,oracle,数据库,hbase,大数据,linux,服务器,分布式

步骤二:打开新终端输入命令:spyder,打开 python 编程环境

程序运行结果:

【大数据存储与处理】实验一 HBase 的基本操作,大数据,oracle,数据库,hbase,大数据,linux,服务器,分布式

2) user 表插入行键“0003“、姓名 name 为“lisi”的一行数据,user 表列族为 info1。

from thrift import Thrift
from thrift.tranaport import TSocket

from thrift.transport import TTransport
from thrift.protocol import TBinaryProtocol

from hbase import Hbase
from hbase.ttypes import *

transport = TSocket.Tsocket('192.168.226.132', 9090)

transport = TTransport.TBufferedTransport(transport)

protocol = TBinaryProtoco1.TBinaryProtocol(transport)

client = Hbase.client(protocol)
transport.open()
row = '0003'
mutations = [Mutation(column="info1 : name ", value='lisi')]

client.mutateRow('user3', row, mutations)

程序运行结果:
 

【大数据存储与处理】实验一 HBase 的基本操作,大数据,oracle,数据库,hbase,大数据,linux,服务器,分布式

HBase shell 输入命令:scan ‘user’

思考题:HBase 的分布式架构中有哪些组件?分别完成什么功能? 

答:

HBase是基于Hadoop的一个分布式列存储系统,其分布式架构主要包括以下组件:

1. RegionServer:RegionServer是HBase的关键组件之一,它运行在集群中的每个节点上,并负责管理和存储一个或多个表中的数据。RegionServer通过维护HBase表的多个Region来实现水平扩展,每个Region都是表的一个子集。RegionServer还负责处理客户端请求并执行基本的IO操作,例如读取、写入和删除数据。

2. HMaster:HMaster是HBase的另一个关键组件,它负责管理整个HBase集群的元数据信息,如表的结构、Region的分配和负载均衡等。HMaster还处理客户端请求,例如创建或删除表、修改表结构等。

3. ZooKeeper:ZooKeeper是一个开源的分布式协调服务,用于管理HBase集群中的配置和状态信息。在HBase集群中,ZooKeeper用于协调所有RegionServer和HMaster之间的通信。

4. HDFS:HDFS是Hadoop分布式文件系统,HBase使用HDFS来存储数据。HBase将数据分成多个HFile,然后将这些文件存储在HDFS上。HDFS提供了高可靠性和高可扩展性,使HBase能够轻松地进行水平扩展。

5. MemStore:MemStore是HBase内存中的数据缓存区,它存储了当前正在写入的数据。当达到一定大小时,MemStore将数据写入磁盘上的HFile中。MemStore在RegionServer级别上工作,即每个RegionServer都有自己的MemStore。

6. HFile:HFile是HBase中的底层存储格式,用于持久化存储HBase表的数据。HFile是一种高效的二进制文件格式,支持快速随机访问和值范围查找。每个Region都被划分为多个HFile,这些文件会被存储在HDFS上。

7. WAL:WAL(Write-Ahead Log)是HBase中的一种日志,用于记录对HBase表的所有写操作,包括插入、更新和删除。WAL可以防止数据丢失和损坏,当RegionServer或HBase集群出现故障时,WAL可以帮助恢复丢失的数据。

这些组件共同构成了HBase的分布式架构,实现了高可靠性、高可用性和高可扩展性。

小结

本实验介绍了 Hbase 的使用环境,要求掌握 Hbase 创建数据库表及删除数据库表,掌

 Hbase 对数据库表数据的增、删、改、查。注意区分 hbase shell 命令和 linux 命令。文章来源地址https://www.toymoban.com/news/detail-774561.html

到了这里,关于【大数据存储与处理】实验一 HBase 的基本操作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 3、HBase的java API基本操作(创建、删除表以及对数据的添加、删除、查询以及多条件查询)

    1、hbase-2.1.0介绍及分布式集群部署、HA集群部署、验证、硬件配置推荐 2、hbase-2.1.0 shell基本操作详解 3、HBase的java API基本操作(创建、删除表以及对数据的添加、删除、查询以及多条件查询) 4、HBase使用(namespace、数据分区、rowkey设计、原生api访问hbase) 5、Apache Phoenix(5.0.0-5.

    2024年02月08日
    浏览(59)
  • 大数据 | 实验一:大数据系统基本实验 | 熟悉常用的HDFS操作

    1 )理解 HDFS 在 Hadoop 体系结构中的角色。 2 )熟练使用 HDFS 操作常用的 shell 命令。 3 )熟悉 HDFS 操作常用的 Java API。 1 )操作系统:Linux; 2 )Hadoop 版本:3.2.2; 3 )JDK 版本:1.8; 4 )Java IDE:Eclipse。 编程实现 以下功能,并利用 Hadoop 提供的 Shell 命令 完成相同任务 1)向

    2024年02月02日
    浏览(40)
  • 数据结构实验4:二叉树的基本操作

    一、问题描述 运用二叉链表实现二叉树的基本操作,包括:创建二叉树的存储结构、复制已有的二叉树、计算已有的二叉树的深度、先根序序列、中根序序列、后根序序列等。 输入格式:AB#C##D## 二、实验目的 掌握二叉链表及二叉树的基本操作。 三、实验内容及要求 1、构造

    2024年01月23日
    浏览(41)
  • 【数据结构】二叉数的存储与基本操作的实现

    二叉树的存储结构分为: 顺序存储 和类似于 链表的链式存储 这里博主讲一下链式存储 二叉树的链式存储是通过一个一个的节点引用起来的,常见的表示方式有 二叉和三叉 表示方式 二叉表示: 三叉表示: 这里博主主要讲解一下孩子表示法 在学习二叉树的基本操作前,需

    2024年02月10日
    浏览(43)
  • 【数据结构】二叉树的存储与基本操作的实现

    二叉树的存储结构分为: 顺序存储 和类似于 链表的链式存储 这里博主讲一下链式存储 二叉树的链式存储是通过一个一个的节点引用起来的,常见的表示方式有 二叉和三叉 表示方式 二叉表示: 三叉表示: 这里博主主要讲解一下孩子表示法 在学习二叉树的基本操作前,需

    2024年02月04日
    浏览(45)
  • 数据结构教程实验一顺序表基本操作的实现

    1.掌握线性表的顺序存贮结构及基本操作,深入了解顺序表的基本特性,以便在实际问题背景下灵活运用它们。 2.深入理解和灵活掌握顺序表的插入、删除等操作。 1.硬件:每个学生需配备计算机一台。 2.软件:Windows操作系统+Visual C++。     1.将建表、遍历、插入、删除分别

    2024年02月07日
    浏览(43)
  • HBase Shell基本操作

    先在Linux Shell命令行终端执行 start-dfs.sh 脚本启动HDFS,再执行 start-hbase.sh 脚本启动HBase。如果Linux系统已配置HBase环境变量,可直接在任意目录下执行 hbase shell 脚本命令,就可进入HBase Shell的命令行终端环境, exit 可以退出HBase Shell(我安装的是伪分布式的HBase)。 (1) help帮

    2024年04月13日
    浏览(37)
  • HBase的基本命令操作

    所有命令来源帮助文档; processlist – 查看当前正在执行的任务 status – 查看服务器的状态信息 table_help – 查看表操作帮助信息。 version – 显示版本信息。 whoami – 用户信息。 create_namespace – 创建命名空间 describe_namespace – 显示指定命名空间的详细信息 alter_namespace – 修改命

    2024年04月14日
    浏览(37)
  • Hbase的基本操作(CURD)

    Hbase 仅供参考学习 Hbase是一个 分布式的 、 面向列 的开源数据库,且Hbase不同于一般的关系数据库,它是一个适用于 非结构化数据 存储的数据库,且是 基于列 的模式。它利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase中的海量数据,利用Zookeeper作为协同服务

    2023年04月08日
    浏览(34)
  • 数据结构实验报告,二叉树的基本操作(C语言)

    作者:命运之光 专栏:数据结构 实验六 二叉树的基本操作 实验环境:Visual C++或Dev C++ 实验目的: 1、掌握二叉树创建; 2、掌握二叉树的遍历及常用算法。 实验内容: 通过完全前序序列创建一棵二叉树,完成如下功能: 1)输出二叉树的前序遍历序列; 2)输出二叉树的中序遍

    2024年02月09日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包