city_code STRING, county_code STRING, card BIGINT, camera_id STRING, orientation STRING, road_id BIGINT, `time` BIGINT, speed DOUBLE, ts_ltz AS TO_TIMESTAMP_LTZ(`time`, 3), WATERMARK FOR ts_ltz AS ts_ltz - INTERVAL '5' SECOND -- 指定时间字段和水位线 ) WITH ( 'connector' = '...
第一种偏向在纯SQL的环境中使用,比如我们有个Flink SQL的提交平台,只支持纯SQL语句,那我们可以把自己写的UDF打包上传到平台后,通过SQL语句CREATE FUNCTION IF NOT EXISTS test AS 'udf.TestScalarFunc'来创建UDF;同时可以把UDF注册到catalog中,这里先不深入讨论,之后我们说到Flink X Hive的时候再聊吧 第二种注册...
*/object FlinkSQLSourceKafka{defmain(args:Array[String]):Unit={// 获取流处理的运行环境val env=StreamExecutionEnvironment.getExecutionEnvironment// 获取table的运行环境val tableEnv=StreamTableEnvironment.create(env)tableEnv.connect(newKafka().version("0.11")// 设置kafka的版本.topic("FlinkSqlTest")//...
import org.apache.flink.streaming.api.functions.source.SourceFunction; import com.ververica.cdc.debezium.JsonDebeziumDeserializationSchema; import com.ververica.cdc.connectors.sqlserver.SqlServerSource; public class mssqlSinkToKafka { public static void main(String[] args) throws Exception { // ...
tableEnv.executeSql(createSourceTableDdl);// // 编写 SQL 查询// String query = "SELECT user_id, SUM(order_amount) AS total_amount FROM csv_source GROUP BY user_id";// // 执行查询并打印// tableEnv.executeSql(query).print();// env.execute("Flink SQL Demo");// 定义输出数据源String...
public class FlinkSqlDemo { public static void main(String[] args) throws Exception { // 设置环境 StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment(); env.setParallelism(1); //为了方便测试看效果,这里并行度设置为1 ...
如果要把 Retract 语义的 SQL 转为 DataStream,我们需要使用toRetractStream。如下案例: 代码语言:javascript 代码运行次数:0 运行 AI代码解释 @Slf4jpublicclassAlertExampleRetract{publicstaticvoidmain(String[]args)throws Exception{FlinkEnv flinkEnv=FlinkEnvUtils.getStreamTableEnv(args);String createTableSql="CRE...
SQL:DATE string TIMESTAMP string CURRENT_TIME INTERVAL string range Table API:STRING.toDate STRING.toTimestamp currentTime()NUMERIC.days NUMERIC.minutes 6. 聚合函数 SQL:COUNT(*)SUM([ ALL | DISTINCT ] expression)RANK()ROW_NUMBER()Table API:FIELD.count FIELD.sum0 二、UDF 用户定义函数(User...
INTERVAL YEAR TO MONTH、 INTERVAL DAY TO SECOND:interval 的涉及到的种类比较多。INTERVAL 主要是用于给 TIMESTAMP、TIMESTAMP_LTZ 添加偏移量的。举例,比如给 TIMESTAMP 加、减几天、几个月、几年。INTERVAL 子句总共涉及到的语法种类如下 Flink SQL 案例所示。