【Hive】【HiveQL】【大数据技术基础】 实验四 HBase shell命令实验

实验四:熟悉常用的HBase操作

实验概览

        在本次实验中,我们将深入探索HBase在Hadoop生态系统中的角色,并熟练掌握常用的HBase Shell命令和Java API操作。通过这些实践,我们能够更好地理解HBase的工作原理以及如何在实际项目中应用。

实验目的

1. 理解HBase在Hadoop体系结构中的角色;

2. 熟练使用HBase操作常用的Shell命令;

3. 熟悉HBase操作常用的Java API。

实验平台

操作系统:Linux

Hadoop版本:1.2.1或以上版本

HBase版本:0.98.9

JDK版本:1.6或以上版本

Java IDE:Eclipse

实验内容和要求

用Hadoop提供的HBase Shell命令完成以下任务:

HBase Shell命令操作

  1. 列出所有表:使用list命令查看HBase中所有表的相关信息,如表名和表结构。

  2. 打印表记录:使用scan命令在终端打印指定表的所有记录数据。

  3. 添加和删除列族或列:使用put命令向已创建的表添加数据,以及删除指定的列族或列。

  4. 清空表记录:使用truncate命令清空指定表的所有记录数据。

  5. 统计表行数:使用count命令统计表的行数。

关系型数据库到HBase的数据迁移

        我们将关系型数据库中的表和数据转换为适合HBase存储的表,并插入数据。以下是涉及的表和数据:

学生表(Student)

学号(S_No)

姓名(S_Name)

性别(S_Sex)

年龄(S_Age)

2015001

Zhangsan

male

23

2015003

Mary

female

22

2015003

Lisi

male

24

课程表(Course)

课程号(C_No)

课程名(C_Name)

学分(C_Credit)

123001

Math

2.0

123002

Computer Science

5.0

123003

English

3.0

选课表(SC)

学号(SC_Sno)

课程号(SC_Cno)

成绩(SC_Score)

2015001

123001

86

2015001

123003

69

2015002

123002

77

2015002

123003

99

2015003

123001

98

2015003

123002

95

HBase表创建与数据操作

同时,请完成以下指定功能:

(1)创建以上表

create 'Student', 'info'

create 'Course', 'details'

create 'SC', 'record'

(2)在多个表添加3行(学生)

插入学生表数据:

put 'Student', '2015001', 'info:S_No', '2015001'

put 'Student', '2015001', 'info:S_Name', 'Zhangsan'

put 'Student', '2015001', 'info:S_Sex', 'male'

put 'Student', '2015001', 'info:S_Age', '23'

put 'Student', '2015002', 'info:S_No', '2015002'

put 'Student', '2015002', 'info:S_Name', 'Mary'

put 'Student', '2015002', 'info:S_Sex', 'female'

put 'Student', '2015002', 'info:S_Age', '22'

put 'Student', '2015003', 'info:S_No', '2015003'

put 'Student', '2015003', 'info:S_Name', 'Lisi'

put 'Student', '2015003', 'info:S_Sex', 'male'

put 'Student', '2015003', 'info:S_Age', '24'

插入课程表数据:

put 'Course', '123001', 'details:C_No', '123001'

put 'Course', '123001', 'details:C_Name', 'Math'

put 'Course', '123001', 'details:C_Credit', '2.0'

put 'Course', '123002', 'details:C_No', '123002'

put 'Course', '123002', 'details:C_Name', 'Computer Science'

put 'Course', '123002', 'details:C_Credit', '5.0'

put 'Course', '123003', 'details:C_No', '123003'

put 'Course', '123003', 'details:C_Name', 'English'

put 'Course', '123003', 'details:C_Credit', '3.0'

插入选课表数据:

put 'SC', '2015001123001', 'record:SC_Sno', '2015001'

put 'SC', '2015001123001', 'record:SC_Cno', '123001'

put 'SC', '2015001123001', 'record:SC_Score', '86'

put 'SC', '2015001123003', 'record:SC_Sno', '2015001'

put 'SC', '2015001123003', 'record:SC_Cno', '123003'

put 'SC', '2015001123003', 'record:SC_Score', '69'

put 'SC', '2015002123002', 'record:SC_Sno', '2015002'

put 'SC', '2015002123002', 'record:SC_Cno', '123002'

put 'SC', '2015002123002', 'record:SC_Score', '77'

进行部分结果展示:

(3)在多个表中修改指定的行指定列的数据

put 'Student', '2015001', 'info:S_Age', '24'

(4)在多个表删除表指定的行的记录

删除学生表中的一行数据:

deleteall 'Student', '2015001'

删除选课表中的一个单元格数据:

delete 'SC', '2015001123001', 'record:SC_Score'

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

解决渠道问题的高效控价方法

当品牌销售渠道增多、涉及销售店铺量上升且品牌期望持续稳定发展时,就应着手处理控价事宜。控价有助于稳定品牌价值、吸引经销商加入以及利于品牌口碑传播。 控价应包含的渠道 随着电商平台发展,品牌销售渠道日益丰富,除线下传播渠道外&…

随机数

目录 一、传统方式:std::rand 和 std::srand 使用方法: 优缺点: 二、现代方式: 库(推荐) 1. 随机整数 2. 随机浮点数 3. 布尔值 4. 字符 5. 正态分布(高斯分布) 6. 离散分…

生物信息入门软件安装(保姆级教程)

写在开头 大四期间,选修了一门智慧医疗的课程,期末考核为25分钟有关智慧医疗方面的汇报。一次偶然的课程汇报让我接触到了生物信息,也产生了浓厚的兴趣,同时加入了老师的研究生小组,开启了这段生物信息学习的旅途。至此…

数据智能新纪元:向量数据库驱动AI大模型创新

数据智能新纪元:向量数据库驱动AI大模型创新 前言向量数据库与AI大模型的关系以及发展现状向量数据库的技术创新与落地实践向量数据库的未来趋势与产业机遇 前言 最近和一位搞AI创业的朋友聊天,他说了句意味深长的话:“当所有人都在谈论大模型…

2024 Visual Studio Code的下载与安装

目录 一、Windows系统下载与安装二、macOS系统下载与安装三、Linux系统下载与安装四、启动与配置VS Code 以下是2024年Visual Studio Code(简称VS Code)的下载与安装步骤,适用于Windows、macOS和Linux系统: 一、Windows系统下载与…

利用TinyML和IoT技术预测沙漠地区光伏电站清洁方法

论文标题 英文标题:Predictive method for cleaning photovoltaic plants in desert areas using TinyML and IoT technique 作者信息 A. Mellit, M. Chourouk:Faculty of Science and Technology, Renewable Energy laboratory, University of Jijel…

P3372 【模板】线段树 1

luoguP3372 【模板】线段树 1 题目描述 如题,已知一个数列,你需要进行下面两种操作: 将某区间每一个数加上 k k k。求出某区间每一个数的和。 输入格式 第一行包含两个整数 n , m n, m n,m,分别表示该数列数字的个数和操作…

Enigma Virtual Box封装客户端

1.输入可执行程序,另外命名输出可执行程序的输出程序。如图: 2.添加附带文件 这些文件包括可执行程序的库、文件、插件等。 如图:(这里包括文件或者文件夹) 3.点击process生成可执行文件 生成的执行文件可以放在桌面上单独运行。

Unity自动LOD工具AutoLOD Mesh Decimator的使用

最近在研究大批量物体生成,由于我们没有专业美术,在模型减面工作上没有人手,所以准备用插件来实现LOD功能,所以找到了AutoLOD Mesh Decimator这个插件。 1,导入插件后,我们拿个实验的僵尸狗来做实验。 空…

VMware彻底官宣免费!杀疯了!

话说最近这几个月,几家软件大佬这是怎么了,这怎么还开始卷免费了呢(手动doge)。 众所周知,就在上个月的时候,Jetbrains 刚官宣其旗下 WebStorm 和 Rider 两款软件开始对非商业用途全面免费,当时…

QML —— 拖拽测试 - 文本图片跑马灯Demo(附源码)

效果 说明 此代码可对文本及图片进行托转并放入被置方框内,在放置的文本框或图片框发生变化后,跑马灯也会在下一次运行时内容发生变化。 代码 main.qml import QtQuick 2.9 import QtQuick.Window 2.2 import QtQuick.Controls 2.0 import QtQuick.Layouts 1.14 import QtQu…

CDGA|企业数据治理:实务知识与理论思考的深度融合探索

在当今这个数据驱动的时代,企业数据已成为推动业务增长、优化决策制定和塑造竞争优势的关键因素。然而,随着数据量的爆炸性增长,如何有效管理和利用这些数据,确保数据的准确性、安全性与合规性,成为企业面临的一大挑战…

乐观锁和悲观锁的区别 使用 使用场景 | 图解

图解乐观锁和悲观锁的区别 & 实现 & 使用场景 文章目录 图解乐观锁和悲观锁的区别 & 实现 & 使用场景悲观锁synchronized 与 ReentrantLock 乐观锁CAS 机制版本号机制原子类 总结两种锁各自的使用场景 悲观锁 悲观主义者,认为这个资源不上锁&#x…

Linux初步引言(0)

文章目录 前言一、发展史UNIX发展史Linux发展史 二、开源精神三、Linux内核官网四、企业应用现状在服务器领域的发展在桌面领域的发展在移动嵌入式的发展Linux在云计算/大数据领域的发展 五、众多的发行版本DebianUbuntuCentOSKail Linux 六、何为操作系统?总结 前言…

Linux: C语言发起 DNS 查询报文

本文目录 使用 getaddrinfo()手动构造 DNS 查询报文DNS 查询部分(Question Section)QNAME (查询的域名)QTYPE (查询类型)QCLASS (查询类)Answer Section (答案部分) C语言代码发起 DNS 查询报文 使用 getaddrinfo() getaddrinfo() 是一个高层的接口&…

【Pytorch】神经网络介绍|激活函数|使用pytorch搭建方法

神经网络 神经网络介绍 概念 神经网络 人工神经网络ANN 也称神经网络NN 是一种模仿生物神经网络结构和功能的计算模型人脑可以看作是一个生物神经网络,由众多神经元连接而成,神经网络可以看作是模拟生物神经元的过程 输入层 input Layer: 输入x的那一层 输出层 output Laye…

【HarmonyOS NEXT】实战——登录页面

【HarmonyOS NEXT】实战——登录页面 在本文中,我们将深入探讨如何使用HarmonyOS NEXT来实现一个功能完备的登录页面。通过这个实战案例,你将结合页面布局、数据本地化存储、网络请求等多方面了解到HarmonyOS NEXT在构建现代应用时的强大能力和灵活性。…

iscc2023

iscc 还没想好名字的塔防游戏 就是那句话首字母,加上玩游戏通关后有提示就是后面的字母 Flask中的pin值计算 先f12,看到base64到路由/getusername 输入app.py,得到路由/crawler 进入后发现是一个计算,写一个python脚本 impor…

力扣-Mysql-3328-查找每个州的城市 II(中等)

一、题目来源 3328. 查找每个州的城市 II - 力扣(LeetCode) 二、数据表结构 表:cities ---------------------- | Column Name | Type | ---------------------- | state | varchar | | city | varchar | ----------------…

Vue2:组件

Vue2:组件 非单文件组件定义注册使用 单文件组件 组件是Vue中最核心的内容,在编写页面时,将整个页面视为一个个组件,再把组件拼接起来,这样每个组件之间相互独立,有自己的结构样式,使页面编写思…