矿大京-大数据技术实验课-Hadoop集群下的数据库操作

本文详细描述了在UbuntuLinux+Hadoop环境下,通过HBase、Redis、MongoDB和Hive进行数据新增、查询及实验步骤,包括创建表、数据结构、插入个人信息和成绩,以及相应的脚本和错误处理策略。
摘要由CSDN通过智能技术生成

实验内容与步骤

在给定的Ubuntu Linux+hadoop3.1.3环境上,分别用hbase、redis、mongodb、hive(redis、mongodb、hive需自行安装,无版本要求)所属的shell命令,建立相应数据结构,并增加本人的学号、姓名、性别、数据库课程成绩,再将此信息取出。(注:个人信息为真实信息,成绩为本人的真实数据库成绩。因有的软件默认不支持汉字显示,故录入数据为拼音和英文)

  1. hbase的信息新增与查询截图;
  2. redis的信息新增与查询截图;
  3. mongodb的信息新增与查询截图;
  4. hive的信息新增与查询截图;

编者声明

本文基于赵志明老师的中国矿业大学(北京)的大数据技术基础课程,针对各上机实验记录一些自己的思路以及过程,总体来说写着玩的,别当真,反正就这样吧,管他呢。

实验思路

  1. HBase Script:

    1. 创建一个表和列簇。
    2. 使用 put 命令插入学号、姓名、性别、成绩。
    3. 执行查询操作,以验证数据的正确插入。
  2. Redis Script:

    • 创建一个散列数据结构来存储信息。
    • 使用 hset 命令来存储学号、姓名、性别、成绩。
    • 使用 hgethgetall 命令来检索数据。
  3. MongoDB Script:

    • 创建一个集合并定义数据结构。
    • 使用 insertOne 命令来插入学生信息。
    • 使用 find 命令来查询数据。
  4. Hive Script:

    • 创建一个表并定义列结构。
    • 使用 INSERT INTO 语句来插入数据。
    • 使用 SELECT 语句来查询数据。
  5. 数据格式和表示:

    • 确保在所有数据库中数据格式的一致性。
    • 考虑将数据(如姓名)转换为拼音或英文,以适应编码限制。
  6. 错误处理和异常管理:

    • 在每个脚本中加入错误处理逻辑。
    • 提供清晰的错误消息和异常处理机制。
  7. 脚本测试和优化:

    • 在不同的数据负载和环境下测试脚本。
    • 对脚本进行性能测试,确保高效的数据处理

具体实现步骤与代码

自行下载并调试对应软件--下载有问题私信处留言

建议不要自己安装,跟着林子雨老师的博客下载安装,非常轻松省事儿

1.hbase的信息新增与查询截图

        首先,我们将展示 HBase Script。这个脚本将负责在HBase中创建表和列簇,插入学号、姓名、性别、成绩,以及执行查询操作以验证数据的正确插入。

# HBase Script

start-hbase.sh

# 创建HBase表和列簇
create 'student_info', 'personal_details'

# 插入数据
put 'student_info', '2110150426', 'personal_details:name', 'wangxin'
put 'student_info', '2110150426', 'personal_details:gender', 'nan'
put 'student_info', '2110150426', 'personal_details:grade', '89'

# 查询并验证插入的数据
scan 'student_info', {COLUMNS => ['personal_details']}

2.redis的信息新增与查询截图

redis-server

# 使用 HSET 存储学生信息
HSET student:2110150426 name "wangxin"
HSET student:2110150426 gender "nan"
HSET student:2110150426 grade 89

# 检索并验证数据
HGETALL student:2110150426

3.mongodb的信息新增与查询截图

#启动MongoDB Shell
mongo

#使用 use 命令来创建一个新的数据库
use mydb

#创建一个新集合并插入数据
db.students.insert({
  student_id: "2110150426",
  name: "wangxin",
  gender: "nan",
  grade: 89
})

#查询数据
db.students.find({})

4.hive的信息新增与查询截图

hive

-- 创建Hive表
CREATE TABLE IF NOT EXISTS student_info (
    student_id STRING, 
    name STRING, 
    gender STRING, 
    grade INT
);

-- 插入数据
INSERT INTO student_info (student_id, name, gender, grade) 
VALUES ('2110150426', 'wangxin', 'nan', 89);

-- 查询并验证插入的数据
SELECT * FROM student_info;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值