资源规划
组件 | bigdata-node1 | bigdata-node2 | bigdata-node3 |
---|---|---|---|
OS | centos7.6 | centos7.6 | centos7.6 |
JDK | jvm | jvm | jvm |
HDFS | NameNode/SecondaryNameNode/DataNode | DataNode | DataNode |
YARN | ResourceManager/NodeManager | NodeManager | NodeManager |
Hive | HiveServer2/Metastore/CLI/Beeline | CLI/Beeline | CLI/Beeline |
MySQL | N.A | N.A | MySQL Server |
Maven | mvn | N.A | N.A |
Git | git | N.A | N.A |
TPC-DS | flink-sql-benchmark | N.A | N.A |
安装介质
下载:https://github.com/ververica/flink-sql-benchmark
环境准备
安装Hadoop
Hadoop 2.2或更高版本,参考:《CentOS7.6-安装Hadoop-2.7.2》
安装MySQL
安装Hive
安装Maven
安装Git
参考:《CentOS7.6-安装Git》
TPC-DS准备
# 在节点bigdata-node1上获取源码并编译
cd ~/modules/
git clone https://github.com/ververica/flink-sql-benchmark
修改pom.xml文件,更新flink、hive版本信息:
vi ~/modules/flink-sql-benchmark/pom.xml
配置如下:
<properties>
<flink.version>1.10.0</flink.version>
<hive.version>2.3.4</hive.version>
</properties>
编译:
cd ~/modules/flink-sql-benchmark
mvn clean install -DskipTests -Dfast
数据准备
确保gcc和Maven已经安装。
-- 查看gcc版本
gcc -v
-- 如果没有安装gcc请先安装
yum install gcc
编译数据生成器。
cd ~/modules/flink-sql-benchmark/hive-tpcds-setup
sudo yum install -y unzip zip
sudo yum -y install patch
./tpcds-build.sh
产生TPC-DS数据集。
cd ~/modules/flink-sql-benchmark/hive-tpcds-setup
# 参数是指定需要产生数据的大小(大于1即可),单位为G
./tpcds-setup.sh 2
验证数据。
cd ~/modules/apache-hive-2.3.4-bin
# 启动CLI,将自动开启Metastore服务
bin/hive
# 查看数据库
$hive>> show databases;
# 注意:数据库后缀数字和上面产生数据集的参数相关
$hive>> use tpcds_bin_orc_2;
# 查看表
$hive>> show tables;
# 总计:24张表,7张事实表,17张维表
基准测试
//TODO
参考
【基于Flink 1.10版本的SQL演练】https://blog.csdn.net/qq_31866793/article/details/104422036
【3.13 【1.10特别篇】Demo: 基于 Flink SQL 构建离线应用】https://www.bilibili.com/video/av90320234