【云计算】HBase表操作

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


前言

HBase是一个分布式、可扩展的、非关系型的NoSQL数据库。它是建立在Hadoop HDFS上的一个开源的数据库管理系统。HBase的设计目标是提供高可靠性、高可扩展性、高性能、高延迟、高容错性和高可用性。

HBase是一种面向列的数据库,可以处理海量的结构化和半结构化数据。它可以存储大量的数据,并能够快速索引和检索数据,适用于需要高速在线访问大量数据的应用程序。

在HBase中,数据按照表格的形式进行存储,类似于关系型数据库中的表。每个表格都具有一个行键和多个列族。行键是一个唯一标识符,用于在表格中定位一行数据。列族是相关列的集合,每个列族都由一个标识符和多个列组成。

HBase具有众多的特性,包括高可用性、自动分片、支持多版本数据、支持复杂的数据类型、支持MapReduce计算等。它还具有良好的扩展性,可以根据需要添加新的节点来扩展集群的规模,以满足更高的数据处理需求。

总的来说,HBase是一个高性能、高可扩展性的NoSQL数据库,适用于需要处理大量结构化和半结构化数据的分布式应用程序。它可以通过灵活的数据模型和支持复杂数据类型的功能,帮助开发人员快速构建可扩展的应用程序。

一、shell创建

Hbase命令:

进入shell:
hbase shell

【云计算】HBase表操作

使用help "COMMAND"命令获取特定命令的帮助信息,例如help "get"将显示关于get命令的帮助信息(注意需要使用引号)。

命令分组:命令被分组管理。使用help "COMMAND_GROUP"命令获取特定命令组的帮助信息,例如help "general"将显示关于general命令组的帮助信息。

常见的命令组包括:general、ddl、namespace、dml、tools、replication、snapshots、configuration、quotas、security、procedures、visibility labels、rsgroup和storefiletracker。

你可以执行各种命令来进行表的操作、数据的增删改查、配置管理、权限管理等。
HBase Shell提供了一些常用命令示例:
create:创建表。
disable:禁用表。
enable:启用表。
describe:显示表的结构和属性。
get:获取指定行的数据。
put:插入或更新数据。
scan:扫描表中的数据。
delete:删除指定行或列的数据。
list:列出所有表或命名空间。
alter:修改表的结构或属性。
count:统计表中的行数。

二、操作

创建命名空间类似于Mysql中的数据库:create_namespace

创建ns1,ns2命名空间
hbase:005:0> create_namespace 'ns1'
Took 0.2768 seconds                                                                                                                                                 
hbase:006:0> create_namespace 'ns2'
Took 0.1402 seconds  

【云计算】HBase表操作
查看一下创建的命令空间列表:list_namespace
这里的default,hbase是hbase自带的命名空间

hbase:008:0> list_namespace
NAMESPACE                                                                                                                                                           
default                                                                                                                                                             
hbase                                                                                                                                                               
ns1                                                                                                                                                                 
ns2                                                                                                                                                                 
4 row(s)
Took 0.0132 seconds                                                                                                                                                 
#正则方式查看以ns开头命名空间
hbase:009:0> list_namespace "ns*"
NAMESPACE                                                                                                                                                           
ns1                                                                                                                                                                 
ns2                                                                                                                                                                 
2 row(s)
Took 0.0156 seconds   

【云计算】HBase表操作
查看命名空间属性:describe_namespace
因为没有设置这里没有,需要在创建命名空间时设置

hbase:010:0> describe_namespace 'ns1'
DESCRIPTION                                                                                                                                                         
{NAME => 'ns1'}                                                                                                                                                     
Quota is disabled
Took 0.1844 seconds 

【云计算】HBase表操作
创建一个表t1包含三列f1,f2,f3:create

hbase:011:0> create 't1','f1','f2','f3'
Created table t1
Took 1.2317 seconds                                                 
=> Hbase::Table - t1 

【云计算】HBase表操作
查看我们创建的表:list
【云计算】HBase表操作
在我们的web端也是能够看到的:http://HbaseIP:16010/
【云计算】HBase表操作
现在我们做一个实例做一个学生表:
【云计算】HBase表操作
【云计算】HBase表操作

添加数据:put

put 't1', 'row1', 'f1:name', 'tom'
put 't1', 'row1', 'f1:age', 18
put 't1', 'row1', 'f1:height', 172
put 't1', 'row2', 'f1:name', 'jack'
put 't1', 'row2', 'f1:age', 19
put 't1', 'row2', 'f1:height', 180

【云计算】HBase表操作
查看插入的数据(用于数据量较少情况):scan ‘t1’
注意:数据量少情况不然卡死

scan 't1'

【云计算】HBase表操作
使用get命令获取某单元格数据:get

get 't1','row1','f1:name'
get 't1','row1','f1:age'
get 't1','row1','f1:height'
get 't1','row2','f1:name'
get 't1','row2','f1:age'
get 't1','row2','f1:height'

【云计算】HBase表操作
【云计算】HBase表操作
这样创建的表存在一个致命问题:版本只能存在一个,因为我们创建t1时并没有做属性
可以通过:alter ‘t1’,{NAME => ‘f1’,VERSIONS => 3}修改我们的表
我们这直接新建一个
【云计算】HBase表操作
我们重新创建一个可以保存多版本的表:create
创建一个可以保存三个版本的student表

create 'student',{NAME => 'f1',VERSIONS => 3}

【云计算】HBase表操作
再次写入数据到student表:

put 'student', 'row1', 'f1:name', 'tom'
put 'student', 'row1', 'f1:age', 18
put 'student', 'row1', 'f1:height', 172
put 'student', 'row2', 'f1:name', 'jack'
put 'student', 'row2', 'f1:age', 19
put 'student', 'row2', 'f1:height', 180

【云计算】HBase表操作
修改一个数据再次查看版本:

put 'student', 'row1', 'f1:name', 'julein'
get 'student','row1',{COLUMN => 'f1:name',VERSIONS => 2}

【云计算】HBase表操作
删除行数据:deleteall

删除行数据:deleteall 't1','row1'

只剩下row2数据
【云计算】HBase表操作
删除一个单元格数据:delete

delete 't1','row2','f1:name'

删除后:
【云计算】HBase表操作
删除表:disable+drop

disable 't1'
drop 't1'

t1被删除了
【云计算】HBase表操作
一个简单的shell操作完成。文章来源地址https://www.toymoban.com/news/detail-493551.html

到了这里,关于【云计算】HBase表操作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 搭建HBase分布式集群

    0. Prerequisite There are 3 VMs - hadoop3/hadoop4/hadoop5 for fully-distributed HBase cluster, the setup plan looks like: hadoop3 hadoop4 hadoop5 Hadoop hdfs NameNode:8020 DateNode:50010 JobHistoryServer:19888 DataNode:50010 SecondaryNameNode:50090 DateNode:50010 Hadoop yarn NodeManger:8040 ResourceMananger:8088 NodeManger:8040 NodeManger:8040 Zookeeper Quor

    2024年02月08日
    浏览(15)
  • 分布式数据库HBase

    分布式数据库HBase

    HBase是一个高可靠、高性能、 面向列 、可伸缩的分布式数据库,是谷歌BigTable的开源实现,主要用来存储非结构化和把结构化的松散数据。 HBase的目标是处理非常庞大的表,可以通过水平扩展的方式,利用 廉价计算机集群 处理由超过10亿行数据和数百万列元素组成的数据表。

    2024年02月09日
    浏览(16)
  • HBase(单机)伪分布式安装

    HBase(单机)伪分布式安装

    准备工作:Hadoop已经安装、hbase-1.2.6-bin安装包。 1、上传hbase-1.2.6-bin.tar.gz压缩包到/home/hadoop目录下,并使用tar xvf 解压。 2、终端下输入:vim .bashrc,即用vim编辑器打开bashrc文件。 3、在bashrc文件的末尾设置如下Hbase的环境变量,要注意hbase解压后的文件名是hbase-1.2.6还是hbase-1

    2024年02月04日
    浏览(12)
  • 搭建HBase伪分布式集群

    1. Install zookeeper 1) download zookeeper from https://zookeeper.apache.org/releases.html#download 2) extract binary 3) configurate zoo.cfg 4) start zookeeper 5) try zookeeper Note: use following command to stop zookeeper 2. Install Hadoop 1) download Hadoop from https://hadoop.apache.org/releases.html 2) extract binary 3) configurate 4) format the filesyst

    2024年02月10日
    浏览(17)
  • Hbase 系列教程:HBase 分布式文件存储系统解析

    作者:禅与计算机程序设计艺术 : Hbase 是 Apache 的开源 NoSQL 数据库项目之一。它是一个分布式、可扩展的、高性能、面向列的非关系型数据库。作为 Hadoop 大数据生态的一部分,Hbase 以高可用性、可伸缩性和水平可扩展性著称。它提供了一个列族模型(Column Family Model),能

    2024年02月05日
    浏览(12)
  • HBase 伪分布式环境搭建 - 头歌

    HBase 伪分布式环境搭建 - 头歌

    mkdir /app cd /opt tar -zxvf hbase-2.1.1-bin.tar.gz -C /app cd /app cd hbase-2.1.1 cd conf echo $JAVA_HOME /usr/lib/jvm/jdk1.8.0_111 vim hbase-env.sh 进入文件,找到下图中红色框框内的路径,将#去掉,把=号后面的路径改成/usr/lib/jvm/jdk1.8.0_111。注意:记得先按A,才能改。 按esc键,输入  :wq  ,回车。 vim hb

    2024年04月28日
    浏览(8)
  • HBase伪分布式集群的复制

    0. prerequisite Suppose 2 hbase pseudo distributed clusters have both started as folowing relevant parameters in hbase-site.xml source destnation hbase.zookeeper.quorum    ubuntu centos2 hbase.zookeeper.property.clientPort 2181 2181 zookeeper.znode.parent /hbase /hbase 1. Create table for replication 1) start hbase shell on source cluster and create a tab

    2024年02月13日
    浏览(10)
  • ZooKeeper+HBase分布式集群环境搭建

    ZooKeeper+HBase分布式集群环境搭建

    安装版本:hadoop-2.10.1、zookeeper-3.4.12、hbase-2.3.1 一、zookeeper 集群搭建与配置 1. 下载zookeeper安装包 2. 解压移动zookeeper 3. 修改配置文件(创建文件夹) 4. 进入conf/ 5. 修改zoo.cfg文件 6. 进入/usr/local/zookeeper-3.4.12/zkdatas/这个路径下创建一个文件,文件名为myid ,文件内容为1 7. 拷贝到

    2024年02月08日
    浏览(18)
  • 【大数据】分布式数据库HBase

    【大数据】分布式数据库HBase

    目录 1.概述 1.1.前言 1.2.数据模型 1.3.列式存储的优势 2.实现原理 2.1.region 2.2.LSM树 2.3.完整读写过程 2.4.master的作用 本文式作者大数据系列专栏中的一篇文章,按照专栏来阅读,循序渐进能更好的理解,专栏地址: https://blog.csdn.net/joker_zjn/category_12631789.html?spm=1001.2014.3001.5482 当

    2024年04月27日
    浏览(15)
  • HDFS 分布式存储 spark storm HBase

    HDFS 分布式存储 spark storm HBase 分布式结构 master slave name node client 负责文件的拆分 128MB 3份 data node MapReduce 分布式计算 离线计算 2.X之前 速度比较慢 对比spark 编程思想 Map 分 Reduce 合 hadoop streaming Mrjob Yarn 资源管理 cpu 内存 MapReduce spark 分布式计算 RM NM AM 社区版 CDH 什么是Hive 基于

    2024年02月14日
    浏览(14)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包