当前位置: 首页 > news >正文

桐城网站定制百度用户服务中心

桐城网站定制,百度用户服务中心,成都b2c外贸网站建设,夜店做鸭网站使用场景: 标量函数即 UDF,⽤于进⼀条数据出⼀条数据的场景。 开发流程: 实现 org.apache.flink.table.functions.ScalarFunction 接⼝实现⼀个或者多个⾃定义的 eval 函数,名称必须叫做 eval,eval ⽅法签名必须是 p…

使用场景: 标量函数即 UDF,⽤于进⼀条数据出⼀条数据的场景。

开发流程:

  • 实现 org.apache.flink.table.functions.ScalarFunction 接⼝
  • 实现⼀个或者多个⾃定义的 eval 函数,名称必须叫做 eval,eval ⽅法签名必须是 public 的
  • eval ⽅法的⼊参、出参都是直接体现在 eval 函数的签名中

开发案例:

import org.apache.flink.api.common.functions.MapFunction;
import org.apache.flink.api.java.tuple.Tuple2;
import org.apache.flink.streaming.api.datastream.DataStreamSource;
import org.apache.flink.streaming.api.datastream.SingleOutputStreamOperator;
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
import org.apache.flink.table.annotation.DataTypeHint;
import org.apache.flink.table.annotation.InputGroup;
import org.apache.flink.table.api.*;
import org.apache.flink.table.api.bridge.java.StreamTableEnvironment;
import org.apache.flink.table.functions.ScalarFunction;
import static org.apache.flink.table.api.Expressions.*;/*** 输入数据: * nc -lk 88888* a,1** 输出结果:* res1=>:3> +I[97]* res2=>:3> +I[97]* res3=>:3> +I[97]*/
public class ScalarFunctionTest {public static void main(String[] args) throws Exception {StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();EnvironmentSettings settings = EnvironmentSettings.newInstance().useBlinkPlanner().inStreamingMode().build();StreamTableEnvironment tEnv = StreamTableEnvironment.create(env, settings);DataStreamSource<String> source = env.socketTextStream("localhost", 8888);SingleOutputStreamOperator<Tuple2<String, String>> tpStream = source.map(new MapFunction<String, Tuple2<String, String>>() {@Overridepublic Tuple2<String, String> map(String input) throws Exception {return new Tuple2<>(input.split(",")[0], input.split(",")[1]);}});Table table = tEnv.fromDataStream(tpStream, "id,name");tEnv.createTemporaryView("SourceTable",table);// 在 Table API ⾥不经注册直接调⽤函数Table res1 = tEnv.from("SourceTable").select(call(HashFunction.class, $("id")));// 注册函数tEnv.createTemporarySystemFunction("HashFunction", HashFunction.class);// 在 Table API ⾥调⽤注册好的函数Table res2 = tEnv.from("SourceTable").select(call("HashFunction", $("id")));// 在 SQL ⾥调⽤注册好的函数Table res3 = tEnv.sqlQuery("SELECT HashFunction(id) FROM SourceTable");tEnv.toDataStream(res1).print("res1=>");tEnv.toDataStream(res2).print("res2=>");tEnv.toDataStream(res3).print("res3=>");env.execute();}public static class HashFunction extends ScalarFunction {// 接受任意类型输⼊,返回 INT 型输出public int eval(@DataTypeHint(inputGroup = InputGroup.ANY) Object o) {return o.hashCode();}}
}

测试结果:

在这里插入图片描述

http://www.hengruixuexiao.com/news/7780.html

相关文章:

  • 建行官方网站网站有哪些平台
  • 库尔勒网站建设电话搜索引擎优化排名
  • 漯河哪里做网站东莞网络推广优化排名
  • 餐饮网站建设怎样网站建设公司开发
  • 北京企业网站建设价格微博推广有用吗
  • 网络营销专业介绍及就业方向优化设计七年级上册数学答案
  • 邯郸大名网站建设seo快速排名软件网址
  • 织梦网站怎样入侵网站关键词优化的价格
  • 域名申请好怎么做网站广州seo招聘信息
  • 关于二级网站建设电商培训课程
  • 高端大气网站建设公关公司排行榜
  • 多语言网站建设方案产品市场营销策划方案
  • 大型服装网站建设网站建设图片
  • 网站桌面图标怎么做青岛seo网站关键词优化
  • 建设平台型网站多少钱网站推广的途径和方法
  • 如何创建旅游网站推广专员
  • Dreamweaver做网站教程在线网站流量查询
  • 河北省邢台市疫情最新消息网站网络排名优化方法
  • 德州北京网站建设青岛网站建设公司
  • 专业工厂网站建设黄山seo
  • 电信开放81端口怎样做网站怎么在百度推广
  • 做网站需要什么配置东莞搜索排名提升
  • 贵州省住房和城乡建设厅查询网站郑州网站优化外包
  • 平面设计常用网站排名公式
  • 请别人做网站会不会被盗自己的网站怎么在百度上面推广
  • 网站改版建设主要北京seo关键词排名
  • 怎么开个网站在线crm网站建站
  • 扫描做电子版网站网络营销专业
  • 电子商务网站规划与建设个人网站免费制作平台
  • 查看本分行深圳知名网络优化公司