眼见为实
目前我们概要了解了Blink的强大与宏伟目标(世界一流),但我们相信任何事物的发展都要符合自然规律,一颗小树要长成参天大树要上百年,我们的马老师今天能为亿万人民创造工作,经历近20年,Blink也一样其宏伟目标的实现,需要时间的沉淀,智慧的积累。 用户在给予Blink成长时间的同时也应该体会到Blink亲民的点滴,本篇以HelloWorld为例,带新用户走进Blink。
IDE 写SQL
本篇要写一个最简单的Blink SQL,核心功能是一个同步数据的功能,就是将数据表Source的数据插入到结果表Sink。
![1522976750742-45d19259-2fb2-4f18-8af5-18](https://i-blog.csdnimg.cn/blog_migrate/5bebb98b5de778e7b1c17da3127b0228.png)
-
创建
![1522977107896-b5da08a4-7675-43c6-b21c-57](https://i-blog.csdnimg.cn/blog_migrate/6f25b066652ceb6a1e0f5163f65955dc.png)
![51233de81180b6fb5adb3321c80777db.png](https://i-blog.csdnimg.cn/blog_migrate/de03d617aa261268c91458154e41453a.png)
-
编写SQL上一步我们在book目录下面,创建了一job名为book_helloworld,作业类型为BLINK-SQL,运行在blink-1.6.0版本。打开Job开始编写sql,如下:
--Blink SQL --********************************************************************-- --Author: --CreateTime: 2018-04-06 08:51:33 --Comment: 请输入业务注释信息 --********************************************************************-- CREATE TABLE helloWorld_source( col_boolean BOOLEAN, col_tinyint TINYINT, col_smallint SMALLINT, col_int INT, col_bigint BIGINT, col_float FLOAT, col_double DOUBLE, col_decimal DECIMAL, col_date DATE, col_time TIME, col_timestamp TIMESTAMP, col_varchar VARCHAR, col_varbinary VARBINARY )WITH( type='random' ) ; CREATE TABLE helloWorld_sink( col_boolean BOOLEAN, col_tinyint TINYINT, col_smallint SMALLINT, col_int INT, col_bigint BIGINT, col_float FLOAT, col_double DOUBLE, col_decimal DECIMAL, col_date DATE, col_time TIME, col_timestamp TIMESTAMP, col_varchar VARCHAR, col_varbinary VARBINARY )WITH( type = 'print' ) ; INSERT INTO helloWorld_sink SELECT col_boolean , col_tinyint , col_smallint , col_int , col_bigint , col_float , col_double , col_decimal , col_date , col_time , col_timestamp , col_varchar , col_varbinary FROM helloWorld_source;
完成上面的书写,我们可以点击【上线】进行资源配置,如下图:
![1531103993044-e936b825-d832-4ced-9c7e-cb](https://i-blog.csdnimg.cn/blog_migrate/107121bdd7efef81e2ffaa0b23b8fa4a.png)
-
启动job经过上面步骤,我们可以点击 【运维】启动job了,如下步骤:
![569b9d71f5e99738775377e47ab394ce.png](https://i-blog.csdnimg.cn/blog_migrate/c273ee985dc48a991e8c413e05a90ffa.png)
container log可以看到我们上面的print输出
![6a5618e5aa8d8d7dd601bc212fb96735.png](https://i-blog.csdnimg.cn/blog_migrate/1c23a977db9fc37e2b3a64e0d0a09fa2.png)
-
We did it.
虽然上面截图花费了一些时间,但是若您按照步骤操作,其实3分钟应该能体验上面全部流程,至此Helloword的Blink sql体验结束.
小结
本篇一个简单HelloWorld将新用户带入了Blink的使用中,虽然是最简单的示例,但体现了Blink IDE中60%的操作,并且我们的sql定义中使用了Blink支持的除了Any之外的所有数据类型。同时用户初步看到了blink sql的基础结构 source -> query -> sink. 也就是我们围绕这ANSI-SQL的DDL和DML就可以完成我们的业务job了。