Dinky的简介
Flink目前是一个使用广泛的基于流计算的流批一体的大数据计算框架,它关注的是流计算的底层实现、集群运行最优化、高效运行的设计等;
Dinky是基于Flink的一个应用平台:
目前最核心的功能,就是在Flink上扩展了主要基于Flink SQL的,连接OLTP、OLAP和数据湖等众多框架的一站式实时计算平台,
致力于流批一体和湖仓一体的建设与实践,方便直接在其上进行开发、联调。
环境及主要软件版本说明
flink-1.16.3
dinky-0.6.6
java1.8
mysql8.0
软件的部署安装
全部采用单机部署
Flink的部署
解压文件到指定目录:
tar -zxvf flink-1.16.3-bin-scala_2.12.tgz -C /路径
-- 修改配置文件
cd flink-1.14.6/conf/flink-conf.yaml 修改成本机的IP、位置
-- 修改如下内容
jobmanager.rpc.address: 192.168.xxx.xxx
taskmanager.host: 192.168.xxx.xxx
jobmanager.memory.process.size: 2048m
taskmanager.memory.process.size: 2048m
taskmanager.numberOfTaskSlots: 10
rest.port: 8888
rest.address: 0.0.0.0
web.tmpdir: /export/server/flink-1.16.3/tmp
akka.ask.timeout: 600s
-- 将所需要的jar包 放到flink-1.14.6/lib/ 下
-- 启动
./start-cluster.sh
数据库初始化
-- 部署dinky前的操作要求
-- 登录mysql
mysql -uroot -p123456
-- 创建数据库
mysql>
create database dinky;
-- 授权
mysql>
grant all privileges on dinky.* to 'dinky'@'%' identified by 'dinky@123' with grant option;
mysql>
flush privileges;
-- 此处用 dinky 用户登录
mysql -h fdw1 -udinky -pdinky@123
mysql>
use dinky;
-- sql文件在下载的压缩包中获取即可
mysql> source /export/server/dinky/sql/dinky.sql
Dinky的部署
-- 解压dinky文件到指定目录
tar -zxvf dlink-release-0.6.6.tar.gz
-- 切换目录,修改数据库配置及端口信息
cd /export/server/dinky/config/
vi application.yml
# -------------------------------------------------------------------------------
spring:
datasource:
url: jdbc:mysql://${MYSQL_ADDR:192.168.XXX.XXX:3306}/${MYSQL_DATABASE:dinky}?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull&serverTime
zone=Asia/Shanghai&allowPublicKeyRetrieval=true
username: ${MYSQL_USERNAME:dinky}
password: ${MYSQL_PASSWORD:dinky@123}
server:
port: 8899
# -------------------------------------------------------------------------------
-- 加载依赖
Dinky 需要具备自身的 Flink 环境,该 Flink 环境的实现需要用户自己在 Dinky 根目录下
plugins/flink${FLINK_VERSION} 文件夹并上传相关的 Flink 依赖如 flink-dist, flink-table 等
-- 拷贝flink lib下的jar包 到 plugins/flink1.14下
cp ${FLINK_HOME}/lib/flink-*.jar /export/server/dinky/plugins/flink1.14/
-- 包含如下的jar
flink-csv-1.14.6.jar
flink-dist_2.12-1.14.6.jar
flink-json-1.14.6.jar
flink-shaded-zookeeper-3.4.14.jar
flink-sql-connector-elasticsearch7_2.12-1.14.6.jar
flink-sql-connector-kafka_2.12-1.14.6.jar
flink-sql-connector-mysql-cdc-2.3.0.jar
-- 完成后启动
sh auto.sh start 1.16.3 -- 后面跟flink的版本
-- 停止
sh auto.sh stop 1.16.3