Blink 漫谈系列 - HelloWorld

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介:

眼见为实

目前我们概要了解了Blink的强大与宏伟目标(世界一流),但我们相信任何事物的发展都要符合自然规律,一颗小树要长成参天大树要上百年,我们的马老师今天能为亿万人民创造工作,经历近20年,Blink也一样其宏伟目标的实现,需要时间的沉淀,智慧的积累。 用户在给予Blink成长时间的同时也应该体会到Blink亲民的点滴,本篇以HelloWorld为例,带新用户走进Blink。
 

IDE 写SQL

本篇要写一个最简单的Blink SQL,核心功能是一个同步数据的功能,就是将数据表Source的数据插入到结果表Sink。
 
  • 创建
  • 编写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;
    
完成上面的书写,我们可以点击【上线】进行资源配置,如下图:
 
  • 启动job
    经过上面步骤,我们可以点击 【运维】启动job了,如下步骤:
 
container log可以看到我们上面的print输出
  • 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了。
相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
Linux入门到精通
本套课程是从入门开始的Linux学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
目录
相关文章
|
6月前
|
Java 开发工具 流计算
flink最新master代码编译出现Java Runtime Environment 问题
在尝试编译Flink源码时遇到Java运行时环境致命错误:EXCEPTION_ACCESS_VIOLATION。问题出现在JVM.dll+0x88212。使用的是Java 11.0.28和Java HotSpot(TM) 64-Bit Server VM。系统为Windows客户端,没有生成核心dump文件。错误日志保存在hs_err_pid39364.log和replay_pid39364.log。要解决这个问题,建议检查JDK版本兼容性,更新JDK或参照错误报告文件提交Bug至http://bugreport.java.com/bugreport/crash.jsp。
|
存储 自然语言处理 API
Flink1.9 Sate Processor API 介绍和实例demo
功能介绍 Flink1.9 新添加的功能,其能够帮助用户直接访问Flink中存储的State,API能够帮助用户非常方便地读取、修改甚至重建整个State。这个功能的强大之处在于几个方面,第一个就是灵活地读取外部的数据,比如从一个数据库中读取自主地构建Savepoint,解决作业冷启动问题,这样就不用从N天前开始重跑整个数据 可以使用的场景 异步校验或者查看某个阶段的状态,一般而言,flink作业的最终结果都会持久化输出,但在面临问题的时候,如何确定哪一级出现问题,state processor api也提供了一种可能,去检验state中的数据是否与预期的一致。
|
16天前
|
XML Linux C++
002 Qt_两种方式实现helloworld
本文介绍了在Qt中通过图形化与代码方式显示“Hello World”的方法。图形化方式通过拖拽控件实现,代码方式则在`widget.cpp`中创建`QLabel`对象。此外,文章还详细解释了对象树的概念及其在内存管理中的作用,并解决了可能出现的乱码问题。
32 1
002 Qt_两种方式实现helloworld
|
1月前
|
存储 Java 数据处理
Flink-01 介绍Flink Java 3分钟上手 HelloWorld 和 Stream ExecutionEnvironment DataSet FlatMapFunction
Flink-01 介绍Flink Java 3分钟上手 HelloWorld 和 Stream ExecutionEnvironment DataSet FlatMapFunction
35 1
|
JSON 开发工具 数据格式
CommonAPI使用例子-HelloWorld
CommonAPI使用例子-HelloWorld
CommonAPI使用例子-HelloWorld
|
存储 资源调度 Kubernetes
Demo 示例:如何原生的在 K8s 上运行 Flink?
Kubernetes 相信大家都比较熟悉,近两年大家都在讨论云原生的话题,讨论 Kubernetes。本文由阿里巴巴技术专家王阳(亦祺)分享,社区志愿者翟玥整理主要介绍如何原生的在 Kubernetes 上运行 Flink。
Demo 示例:如何原生的在 K8s 上运行 Flink?
|
SQL Java Shell
从 1.9 到 1.11,聊聊 PyFlink 的核心功能演进(附 Demo 代码)
本文由 Apache Flink PMC,阿里巴巴技术专家程鹤群分享,主要介绍 PyFlink 的核心功能及应用。
从 1.9 到 1.11,聊聊 PyFlink 的核心功能演进(附 Demo 代码)
|
移动开发 前端开发 Dubbo
mPaaS Demo 库启动开源啦,欢迎 Star
针对每一款组件目前的接入代码,我们做了细分拆解,并启动开源。
1035 0
mPaaS Demo 库启动开源啦,欢迎 Star
|
消息中间件 数据采集 分布式计算
在 Cloudera Data Flow 上运行你的第一个 Flink 例子
本文主要是介绍如何在 CDH6.3 中安装 Flink 1.9 以及运行你的第一个 Flink 例子。