首页 > 新闻中心 > 掌酷科技 > 数码 > VRAR >

官宣|Apache Flink 1.13.0 正式发布,流处理应用更加(4)
2021-05-28 11:52 阿里云云栖号

SELECT window_time, window_start, window_end, SUM(price) AS total_price

FROM TABLE(CUMULATE(TABLE Bid, DESCRIPTOR(bidtime), INTERVAL '2' MINUTES, INTERVAL '10' MINUTES))

GROUP BY window_start, window_end, window_time;

SELECT window_time, ...

FROM (

SELECT *, ROW_NUMBER() OVER (PARTITION BY window_start, window_end ORDER BY total_price DESC)

as rank

FROM t

) WHERE rank <= 100;

提高 DataStream API 与 Table API / SQL 的互操作能力

这一版本极大的简化了 DataStream API 与 Table API 混合的程序。

Table API 是一种非常方便的应用开发接口,因为这经支持表达式的程序编写并提供了大量的内置函数。但是有时候用户也需要切换回 DataStream,例如当用户存在表达能力、灵活性或者 State 访问的需求时。

Flink 新引入的 StreamTableEnvironment.toDataStream()/.fromDataStream() 可以将一个 DataStream API 声明的 Source 或者 Sink 当作 Table 的 Source 或者 Sink 来使用。主要的优化包括:

Table table = tableEnv.fromDataStream(

dataStream,

Schema.newBuilder()

.columnByMetadata("rowtime", "TIMESTAMP(3)")

.watermark("rowtime", "SOURCE_WATERMARK()")

.build());

DataStream<Row> dataStream = tableEnv.toDataStream(table)

.keyBy(r -> r.getField("user"))

.window(...);

SQL Client: 初始化脚本和语句集合 (Statement Sets)

SQL Client 是一种直接运行和部署 SQL 流或批作业的简便方式,用户不需要编写代码就可以从命令行调用 SQL,或者作为 CI / CD 流程的一部分。

这个版本极大的提高了 SQL Client 的功能。现在基于所有通过 Java 编程(即通过编程的方式调用 TableEnvironment 来发起查询)可以支持的语法,现在 SQL Client 和 SQL 脚本都可以支持。这意味着 SQL 用户不再需要添加胶水代码来部署他们的SQL作业。

配置简化和代码共享

Flink 后续将不再支持通过 Yaml 的方式来配置 SQL Client(注:目前还在支持,但是已经被标记为废弃)。作为替代,SQL Client 现在支持使用一个初始化脚本在主 SQL 脚本执行前来配置环境。

标签: 简单 正式发布 高效 Apache
0

上一篇:安科瑞-电动机保护器之抗晃电类保护器选型
下一篇:没有了
官方微信公众号:掌酷门户(wapzknet)

首页 > 新闻中心 > 掌酷科技 > 数码 > VRAR >
相关资讯

新闻热点
精选美图


客户端合作免责友链
Copyright 2009-2021 蜀ICP备09035849号