第七次作业
1.理解HBase表模型及四维坐标:行键、列族、列限定符和时间戳。
- 表格:数据以表格格式存储在 HBase 中。但这里的表格是面向列的格式。
- 行键:行键用于搜索记录,使搜索速度更快。你会很想知道怎么做吗?我将在本博客的架构部分进行解释。
- 列族:各种列组合在一个列族中。这些列族存储在一起,这使得搜索过程更快,因为可以在一次查找中一起访问属于同一列族的数据。
- 列限定符:每列的名称称为其列限定符。
- 单元格:数据存储在单元格中。数据被转储到由行键和列限定符专门标识的单元格中。
- 时间戳:时间戳是日期和时间的组合。无论何时存储数据,它都会与其时间戳一起存储。这使得搜索特定版本的数据变得容易。
用更简单易懂的方式,我们可以说 HBase 包括:
- 一组表
- 每个表都有列族和行
- 行键在 HBase 中充当主键。
- 对 HBase 表的任何访问都使用此主键
- HBase 中存在的每个列限定符表示与驻留在单元格中的对象相对应的属性。
2.启动HDFS,启动HBase,进入HBaseShell命令行。
3.列出HBase中所有的表信息list
4.创建表create
5.查看表详情desc
6.插入数据put
7.查看表数据scan
8.多版本实验:修改列族版本数,插入多版本数据,查看多版本数据
9.对比HBase列式表与MySQL的行式表
- 在HBase中创建学生课程分数表student并查看表结构。create,describe
- 在mysql中创建学生表student, 课程表 course, 分数表score并查看表结构。
- 分别插入几行数据,几个版本。put/insert
- 查看数据及版本。get,scan/select
-
- 在mysql中创建学生表student, 课程表 course, 分数表score并查看表结构。
-
建立student表
属性有:编号:id (主键,自动增长),姓名:sname,出生年月:sage,性别:ssex(枚举)
create table student(sid int primary key auto_increment,
sname varchar(20),
sage date,
ssex enum(‘男’,‘女’)); - 建立成绩表
create table sc(sid int,
kemu varchar(20),
score int; - 给student表插入数据
insert into student values(1,'小红','2001-01-01','女'),
- 给sc表插入数据
insert into sc values(1,'DB',85),
(2,'DB',90),