IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Flink sql-client.sh使用 -> 正文阅读

[大数据]Flink sql-client.sh使用

SQL Client旨在提供一种简单的方式来编写、调试表程序,并向Flink集群提交表程序,而不需要一行Java或Scala代码。SQL Client CLI允许在命令行上检索和可视化运行的分布式应用程序的实时结果。

1. 简单使用

使用简单,即在里面直接写sql即可,比如:

./bin/sql-client.sh 启动client,然后就可以进行sql的编写了,如下:

--实现MySQL?CDC写往另外一个MySQL表

CREATE TABLE a1 (
? ? ?aid INT,
? ? ?subid INT,
?? ? name STRING
? ? ?) WITH (
? ? ?'connector' = 'mysql-cdc',
? ? ?'hostname' = 'xxx',
? ? ?'port' = '3306',
? ? ?'username' = 'xxx',
? ? ?'password' = 'xxx',
? ? ?'database-name' = 'test',
? ? ?'table-name' = 'a1',
?? ? 'scan.incremental.snapshot.enabled' = 'false'
?? ? );
?? ??
CREATE TABLE a2 (
? ? ?aid INT,
? ? ?subid INT,
?? ? name STRING
? PRIMARY KEY (aid) NOT ENFORCED
) WITH (
? ?'connector' = 'jdbc',
? ?'url' = 'jdbc:mysql://xxx:3306/test',
? ?'table-name' = 'a2',
? ?'username' = 'xxx',
? ?'password' = 'xxx'
);

insert into a2 select * from a1;

对于配置可以使用set设置,即 SET 'key' = 'value';

2. 支持的参数

sql-client.sh 支持一些参数,可以使用 --help查看。这里讲解最重要的2个参数,即 -i 和 -f。

-i:后面接初始化文件,注释是 -- ,不是#。初始化文件里不要有查询和插入语句,支持下面的语句。

?-f:就是接sql文件。即不用进行交互式查询,可以接 -f xxx.sql 来执行xxx.sql文件。这里注意:xxx.sql文件里的提交语句会被分开成一个个job,如果想要在一个job里提交就要注意写法,即:

在1.15.0以前语法:
BEGIN STATEMENT SET;
? -- one or more INSERT INTO statements
? { INSERT INTO|OVERWRITE <select_statement>; }+
END;
在1.15.0之后语法:
EXECUTE STATEMENT SET?
BEGIN
? -- one or more INSERT INTO statements
? { INSERT INTO|OVERWRITE <select_statement>; }+
END;

3. 提交模式

默认sql-client.sh会提交到standalone集群,如果要提交到yarn,则可以配置初始化文件,比如init.sql,配置set 'execution.target' = 'yarn-per-job'; 然后执行 ./bin/sql-client.sh -i init.sql。则可以以yarn-per-job的方式提交到yarn上。不能设置yarn-application的方式,因为DefaultExecutorServiceLoader里没有相应的实现,SPI里只实现了YarnJobClusterExecutorFactory 和 YarnSessionClusterExecutorFactory。可以去查看,如图:

?

?

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章           查看所有文章
加:2022-06-25 18:11:43  更:2022-06-25 18:16:07 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 21:21:43-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码