21-学习笔记尚硅谷数仓搭建-数据仓库模拟数据生成

目录

一、模拟数据说明及前期准备

二、生成模拟数据

三、数据同步到HDFS

四、查看表数据


备注:没有特别说明就在atguigu执行下面命令

一、模拟数据说明及前期准备

1.模拟数据说明:数据仓库上线时间假定为2022-06-08,为了符合真实的业务情况,所以要保证模拟数据包括2022-06-04、2022-06-05、2022-06-06、2022-06-07的历史数据(历史数据不含日志数据只有业务数据)和2022-06-08的全量数据(因为是从这天开始的所以要将这天的日志数据和业务数据都上传到HDFS),所以整个模拟数据包括2022-06-04、2022-06-05、2022-06-06、2022-06-07、2022-06-08的业务数据和2022-06-08的日志数据,且在HDFS上/origin_data/gmall/db路径下的所有增量表和全量表记录的2022-06-04、2022-06-05、2022-06-06、2022-06-07、2022-06-08的业务数据且都归为2022-06-08这一天的数据。

2.启动HDFS服务,删除以前采集项目时的遗留数据(在hadoop102执行下面命令)

复制代码
hdp.sh start

访问http://hadoop102:9870,删除下图框选的文件origin_data

3.启动采集项目服务,并关闭Maxwell服务,因为我们后面要生成的模拟数据要先将全量数据同步到HDFS(就是HDFS以full结尾的表------全量表),然后再开启Maxwell就行首日增量全量同步(就是HDFS以inc结尾的表------增量表),先关闭Maxwell避免全是增量表没有全量表了。(在hadoop102执行下面命令)

复制代码
cluster.sh start
mxw.sh stop

服务启动后保证只有下面的进程

二、生成模拟数据

1.更改后续需要修改文件的权限(在hadoop102执行下面命令)

复制代码
su root
chmod 777 application.yml
su - atguigu

2.修改hadoop102节点的/opt/module/applog/application.yml文件(在hadoop102执行下面命令)

复制代码
cd /opt/module/applog
vim application.yml

将5个参数修改为图中的值

生成2022-06-04的数据,输入下面命令(在hadoop102执行下面命令)

复制代码
lg.sh

去navicat查看是否正确生成了对应日期的数据

去HDFS看是否有对应日期的日志数据(后面会删,下面哪个8号的不用管)

同理修改配置生成5号的数据(在hadoop102执行下面命令)

复制代码
cd /opt/module/applog
vim application.yml

参数如图

生成5号数据(在hadoop102执行下面命令)

复制代码
lg.sh

去navicat查看,往下滑就找到5号的数据。

同理生成6、7号数据(在hadoop102执行下面命令)

复制代码
cd /opt/module/applog
vim application.yml

生成6号数据(在hadoop102执行下面命令)

复制代码
lg.sh

生成7号数据(在hadoop102执行下面命令)

复制代码
lg.sh

!!!生成数据完成后还是要去navicat和HDFS查看数据是否成功生成

因为lg.sh脚本生成数据默认会生成日志数据,所以生成数据完成后就需要将4、5、6、7号的日志数据删除,前面说了它们不需要日志数据,找到如图的路径删除topic_log

同理生成数仓搭建开始日期的数据(在hadoop102执行下面命令)

复制代码
cd /opt/module/applog
vim application.yml

生成8号数据(在hadoop102执行下面命令)

复制代码
lg.sh

去HDFS查看保证只有8号的日志数据

三、数据同步到HDFS

1.执行全量表同步脚本(在hadoop102执行下面命令)

复制代码
mysql_to_hdfs_full.sh all 2022-06-08

同步完成查看可以发现有17张full结尾的表

2.清除Maxwell断点记录

由于Maxwell支持断点续传,而上述重新生成业务数据的过程,会产生大量的binlog操作日志,这些日志我们并不需要。故此处需清除Maxwell的断点记录,令其从binlog最新的位置开始采集。

在navicat执行下面的查询语句,注意数据库是maxwell

sql 复制代码
drop table maxwell.bootstrap;
drop table maxwell.columns;
drop table maxwell.databases;
drop table maxwell.heartbeats;
drop table maxwell.positions;
drop table maxwell.schemas;
drop table maxwell.tables;

3.启动Maxwell服务(在hadoop102执行下面命令)

sql 复制代码
mxw.sh start

4.执行增量表首日全量同步脚本(在hadoop102执行下面命令)

sql 复制代码
mysql_to_kafka_inc_init.sh all

同步完成查看可以发现有17张full结尾的全量表,13张inc结尾的增量表,一共30张

四、查看表数据

1.查看全量表数据(随便选一个查看)(在hadoop102执行下面命令)

sql 复制代码
 hadoop fs -cat /origin_data/gmall/db/cart_info_full/2022-06-08/* | zcat

2.查看增量表数据(随便选一个查看)(在hadoop102执行下面命令)

sql 复制代码
 hadoop fs -cat /origin_data/gmall/db/cart_info_inc/2022-06-08/* | zcat
相关推荐
red_redemption24 分钟前
自由学习记录(210)
学习
MartinYeung51 小时前
[论文学习]PACT:溯源感知能力合约——面向智能体安全的参数级溯源
人工智能·学习·安全
阿米亚波1 小时前
【C++ STL】std::unordered_multiset
开发语言·数据结构·c++·笔记·stl
AnsonNie1 小时前
Ubuntu系统安装裕太微YT6801网卡驱动【笔记】
笔记·ubuntu
小O的算法实验室2 小时前
AAAI-26,全局相关性学习:通过谱图神经网络增强进化算法
神经网络·学习·算法
宁风NF2 小时前
JavaScript:网络请求与前端通信
开发语言·前端·javascript·网络·学习·ecmascript
xqqxqxxq3 小时前
DML 表数据:插入、删除、修改
笔记·mysql
不会代码的小猴3 小时前
Linux note2
linux·笔记
神神道呵he3 小时前
[深度学习] 大模型学习-RAG技术全景解析
人工智能·深度学习·学习
MartinYeung54 小时前
[论文学习]AgentSafetyBench:大语言模型智能体安全评估基准深度分析
学习·安全·语言模型