精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

十分鐘入門Fink SQL

運維 數據庫運維
本篇文章主要講解了Flink SQL 入門操作,后面我會分享一些關于Flink SQL連接Kafka、輸出到kafka、MySQL等

[[358221]]

前言

Flink 本身是批流統一的處理框架,所以 Table API 和 SQL,就是批流統一的上層處理 API。目前功能尚未完善,處于活躍的開發階段。 Table API 是一套內嵌在 Java 和 Scala 語言中的查詢 API,它允許我們以非常直觀的方式,組合來自一些關系運算符的查詢(比如 select、filter 和 join)。而對于 Flink SQL,就是直接可以在代碼中寫 SQL,來實現一些查詢(Query)操作。Flink 的 SQL 支持,基于實現了 SQL 標準的 Apache Calcite(Apache 開源 SQL 解析工具)。圖片

1、導入所需要的的依賴包

  1. <dependency> 
  2.           <groupId>org.apache.flink</groupId> 
  3.           <artifactId>flink-table-planner_2.12</artifactId> 
  4.           <version>1.10.1</version> 
  5.       </dependency> 
  6.       <dependency> 
  7.           <groupId>org.apache.flink</groupId> 
  8.           <artifactId>flink-table-api-scala-bridge_2.12</artifactId> 
  9.           <version>1.10.1</version> 
  10.       </dependency> 
  11.       <dependency> 
  12.           <groupId>org.apache.flink</groupId> 
  13.           <artifactId>flink-csv</artifactId> 
  14.           <version>1.10.1</version> 
  15.      </dependency> 

flink-table-planner:planner 計劃器,是 table API 最主要的部分,提供了運行時環境和生成程序執行計劃的 planner; flink-table-api-scala-bridge:bridge 橋接器,主要負責 table API 和 DataStream/DataSet API的連接支持,按照語言分 java 和 scala。

這里的兩個依賴,是 IDE 環境下運行需要添加的;如果是生產環境,lib 目錄下默認已經有了 planner,就只需要有 bridge 就可以了。

當然,如果想使用用戶自定義函數,或是跟 kafka 做連接,需要有一個 SQL client,這個包含在 flink-table-common 里。

2、兩種 planner(old& blink)的區別

  1. 批流統一:Blink 將批處理作業,視為流式處理的特殊情況。所以,blink 不支持表和DataSet 之間的轉換,批處理作業將不轉換為 DataSet 應用程序,而是跟流處理一樣,轉換為 DataStream 程序來處理。
  2. 因 為 批 流 統 一 , Blink planner 也 不 支 持 BatchTableSource , 而 使 用 有 界 的
  3. Blink planner 只支持全新的目錄,不支持已棄用的 ExternalCatalog。
  4. 舊 planner 和 Blink planner 的 FilterableTableSource 實現不兼容。舊的 planner 會把PlannerExpressions 下推到 filterableTableSource 中,而 blink planner 則會把 Expressions 下推。
  5. 基于字符串的鍵值配置選項僅適用于 Blink planner。
  6. PlannerConfig 在兩個 planner 中的實現不同。
  7. Blink planner 會將多個 sink 優化在一個 DAG 中(僅在 TableEnvironment 上受支持,而在 StreamTableEnvironment 上不受支持)。而舊 planner 的優化總是將每一個 sink 放在一個新的 DAG 中,其中所有 DAG 彼此獨立。
  8. 舊的 planner 不支持目錄統計,而 Blink planner 支持。

3、表(Table)的概念

TableEnvironment 可以注冊目錄 Catalog,并可以基于 Catalog 注冊表。它會維護一個Catalog-Table 表之間的 map。 表(Table)是由一個標識符來指定的,由 3 部分組成:Catalog 名、數據庫(database)名和對象名(表名)。如果沒有指定目錄或數據庫,就使用當前的默認值。

4、連接到文件系統(Csv 格式)

連接外部系統在 Catalog 中注冊表,直接調用 tableEnv.connect()就可以,里面參數要傳入一個 ConnectorDescriptor,也就是 connector 描述器。對于文件系統的 connector 而言,flink內部已經提供了,就叫做 FileSystem()。

5、測試案例 (新)

需求: 將一個txt文本文件作為輸入流讀取數據過濾id不等于sensor_1的數據實現思路: 首先我們先構建一個table的env環境通過connect提供的方法來讀取數據然后設置表結構將數據注冊為一張表就可進行我們的數據過濾了(使用sql或者流處理方式進行解析)

準備數據

  1. sensor_1,1547718199,35.8 
  2. sensor_6,1547718201,15.4 
  3. sensor_7,1547718202,6.7 
  4. sensor_10,1547718205,38.1 
  5. sensor_1,1547718206,32 
  6. sensor_1,1547718208,36.2 
  7. sensor_1,1547718210,29.7 
  8. sensor_1,1547718213,30.9 

代碼實現

  1. import org.apache.flink.streaming.api.scala._ 
  2. import org.apache.flink.table.api.{DataTypes} 
  3. import org.apache.flink.table.api.scala._ 
  4. import org.apache.flink.table.descriptors.{Csv, FileSystem, Schema
  5.  
  6. /** 
  7.  * @Package 
  8.  * @author 大數據老哥 
  9.  * @date 2020/12/12 21:22 
  10.  * @version V1.0 
  11.  *          第一個Flinksql測試案例 
  12.  */ 
  13.  
  14. object FlinkSqlTable { 
  15.   def main(args: Array[String]): Unit = { 
  16.     // 構建運行流處理的運行環境 
  17.     val env = StreamExecutionEnvironment.getExecutionEnvironment 
  18.     // 構建table環境 
  19.     val tableEnv = StreamTableEnvironment.create(env) 
  20.      //通過 connect 讀取數據 
  21.     tableEnv.connect(new FileSystem().path("D:\\d12\\Flink\\FlinkSql\\src\\main\\resources\\sensor.txt")) 
  22.       .withFormat(new Csv()) //設置類型 
  23.       .withSchema(new Schema() // 給數據添加元數信息 
  24.         .field("id", DataTypes.STRING()) 
  25.         .field("time", DataTypes.BIGINT()) 
  26.         .field("temperature", DataTypes.DOUBLE()) 
  27.       ).createTemporaryTable("inputTable")  // 創建一個臨時表 
  28.      
  29.     val resTable = tableEnv.from("inputTable"
  30.       .select("*").filter('id === "sensor_1"
  31.     // 使用sql的方式查詢數據 
  32.     var resSql = tableEnv.sqlQuery("select * from inputTable where id='sensor_1'"
  33.     // 將數據轉為流進行輸出 
  34.     resTable.toAppendStream[(String, Long, Double)].print("resTable"
  35.     resSql.toAppendStream[(String, Long, Double)].print("resSql"
  36.  
  37.     env.execute("FlinkSqlWrodCount"
  38.   } 

6、TableEnvironment 的作用

  • 注冊 catalog
  • 在內部 catalog 中注冊表
  • 執行 SQL 查詢
  • 注冊用戶自定義函數
  • 注冊用戶自定義函數
  • 保存對 ExecutionEnvironment 或 StreamExecutionEnvironment 的引用

在創建 TableEnv 的時候,可以多傳入一個 EnvironmentSettings 或者 TableConfig 參數,可以用來配置 TableEnvironment 的一些特性。

7、 老版本創建流處理批處理

7.1老版本流處理

  1. val settings = EnvironmentSettings.newInstance() 
  2. .useOldPlanner() // 使用老版本 planner 
  3. .inStreamingMode() // 流處理模式 
  4. .build() 
  5. val tableEnv = StreamTableEnvironment.create(env, settings) 

7.2 老版本批處理

  1. val batchEnv = ExecutionEnvironment.getExecutionEnvironment  
  2. val batchTableEnv = BatchTableEnvironment.create(batchEnv) 

7.3 blink 版本的流處理環境

  1. val bsSettings = EnvironmentSettings.newInstance() 
  2. .useBlinkPlanner() 
  3. .inStreamingMode().build() 
  4. val bsTableEnv = StreamTableEnvironment.create(env, bsSettings) 

7.4 blink 版本的批處理環境

  1. val bbSettings = EnvironmentSettings.newInstance() 
  2. .useBlinkPlanner() 
  3. .inBatchMode().build() 
  4. val bbTableEnv = TableEnvironment.create(bbSettings) 

總結:

本篇文章主要講解了Flink SQL 入門操作,后面我會分享一些關于Flink SQL連接Kafka、輸出到kafka、MySQL等

本文轉載自微信公眾號「 大數據老哥」,可以通過以下二維碼關注。轉載本文請聯系 大數據老哥公眾號。

 

責任編輯:武曉燕 來源: 大數據老哥
相關推薦

2022-06-16 07:31:41

Web組件封裝HTML 標簽

2012-07-10 01:22:32

PythonPython教程

2024-05-13 09:28:43

Flink SQL大數據

2019-04-01 14:59:56

負載均衡服務器網絡

2023-06-07 08:27:10

Docker容器

2024-06-19 09:58:29

2021-09-07 09:40:20

Spark大數據引擎

2023-04-12 11:18:51

甘特圖前端

2015-09-06 09:22:24

框架搭建快速高效app

2023-11-30 10:21:48

虛擬列表虛擬列表工具庫

2023-10-07 00:06:09

SQL數據庫

2009-10-09 14:45:29

VB程序

2019-09-16 09:14:51

2024-11-07 16:09:53

2023-07-15 18:26:51

LinuxABI

2022-08-26 09:01:07

CSSFlex 布局

2015-11-06 11:03:36

2023-11-09 14:44:27

Docker鏡像容器

2020-12-11 09:40:10

DevOpsCICD

2023-12-08 13:19:00

前端Reactour流行庫
點贊
收藏

51CTO技術棧公眾號

欧美丰满少妇xxxxx| 色综合天天天天做夜夜夜夜做| 成人黄色av播放免费| 欧美性生交大片| 成人h动漫免费观看网站| 香蕉影视欧美成人| 色综合666| 亚洲欧美强伦一区二区| 欧美成人有码| 伊人男人综合视频网| 亚洲综合在线一区二区| 欧美大胆a人体大胆做受| 国产精品人妖ts系列视频| 97影院在线午夜| 精产国品一区二区| 欧美在线精品一区| 在线视频日本亚洲性| 天天躁日日躁狠狠躁av| 免费高清视频在线一区| 亚洲一区中文日韩| 性高潮久久久久久久久| 日本美女一级视频| 加勒比av一区二区| 国产97在线视频| 日本熟伦人妇xxxx| 波多野结衣在线播放一区| 777奇米成人网| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 超碰在线免费公开| 91丝袜高跟美女视频| 444亚洲人体| 中文字幕一区二区久久人妻| 91久久综合| 久精品免费视频| 女女同性女同一区二区三区91| 一级黄色大毛片| 蜜桃伊人久久| 久久久久亚洲精品| 91嫩草丨国产丨精品| 国产一区日韩| 亚洲欧美国产视频| 亚洲蜜桃精久久久久久久久久久久| 成人在线日韩| 亚洲免费观看高清完整| 日韩亚洲视频在线| 青青草娱乐在线| a美女胸又www黄视频久久| 91国产在线免费观看| 一级成人免费视频| 免费久久精品视频| 国产精品一区二区久久精品 | 日韩中出av| 精品国产乱码久久久久久图片| 在线视频日韩欧美| 成人久久精品| 欧美一卡2卡三卡4卡5免费| 久久这里只精品| 欧美男男gaygay1069| 欧美午夜视频网站| 三级a三级三级三级a十八发禁止| 日韩福利一区| 色婷婷亚洲综合| 爱情岛论坛vip永久入口| 精品国产第一福利网站| 日韩欧美亚洲综合| 一区二区三区入口| 成人涩涩视频| 欧美另类z0zxhd电影| 欧洲在线免费视频| 精品久久国产一区| 精品国产1区二区| av无码一区二区三区| 亚洲精品中文字幕99999| 亚洲小视频在线| 国产精品麻豆免费版现看视频| 91精品久久久久久久蜜月| 久久91精品国产91久久跳| av资源吧首页| 国产亚洲在线观看| 国产精品高潮呻吟久久av野狼 | 激情综合网最新| 91美女高潮出水| 亚洲欧美另类综合| 久久久一区二区三区| 色播亚洲视频在线观看| 秋霞午夜在线观看| 一区二区三区在线视频免费 | 亚洲国产福利| 欧美日韩一区在线观看| 在线成人精品视频| 亚洲va久久| 日韩视频免费在线| 日韩精品一区二区不卡| 肉肉av福利一精品导航| 3d动漫啪啪精品一区二区免费| 天堂a中文在线| 国内成+人亚洲+欧美+综合在线| 亚洲自拍高清视频网站| 天堂网www中文在线| 中文字幕一区二区视频| 亚洲熟妇无码一区二区三区| 日本国产欧美| 精品1区2区在线观看| 91中文字幕永久在线| 伊人青青综合网| 国产成人久久久| 亚洲精品久久久狠狠狠爱| 日本一区二区三区四区在线视频| 欧美成人精品免费| 巨大黑人极品videos精品| 亚洲成人激情在线观看| 久久精品在线观看视频| 亚洲永久网站| 亚洲一区中文字幕在线观看| 韩国三级在线观看久| 一区二区三区丝袜| www午夜视频| 女人av一区| 久久人人看视频| 国产剧情久久久| 国产日产欧产精品推荐色| 777av视频| 精品一区二区三区四区五区| 在线免费看av不卡| 特级西西444www大精品视频免费看| 激情小说亚洲一区| 三区精品视频观看| 在线毛片观看| 亚洲精品videossex少妇| 欧美第一页在线观看| 久久国产麻豆精品| 国产精品劲爆视频| 三级做a全过程在线观看| 一级女性全黄久久生活片免费| www.涩涩涩| 国产精品密蕾丝视频下载| 午夜精品福利在线观看| 精品国产av一区二区三区| 国产精品久久久一本精品| 超碰网在线观看| 亚洲宅男一区| 欧美最猛性xxxxx(亚洲精品)| 亚洲国产www| 一区二区在线观看视频在线观看| 国产三级精品三级在线| 水蜜桃精品av一区二区| 国产精品欧美激情在线播放| 高清福利在线观看| 色天天综合色天天久久| www.av天天| 石原莉奈在线亚洲三区| 少妇免费毛片久久久久久久久| 二区三区不卡| 亚洲一区av在线播放| 夜夜躁日日躁狠狠久久av| 国产女人aaa级久久久级| 免费日韩中文字幕| av亚洲免费| 国产免费久久av| 好吊日视频在线观看| 欧美一级搡bbbb搡bbbb| 免费一级全黄少妇性色生活片| 成人黄色一级视频| 欧美成人一区二区在线观看| 牲欧美videos精品| 国产精品高潮呻吟久久av黑人| 99中文字幕一区| 在线不卡的av| 精品深夜av无码一区二区老年| 国产成人啪免费观看软件| 国产男女免费视频| 久久不见久久见中文字幕免费| 国产精品久久中文| 大地资源网3页在线观看| 精品处破学生在线二十三| 香蕉免费毛片视频| 国产亲近乱来精品视频| 亚洲精品综合在线观看| 在线播放精品| 亚洲高清视频一区| 亚洲精品一区二区三区中文字幕 | 亚欧精品在线| 欧美经典影片视频网站| 国产91对白在线播放| www亚洲人| 精品国产乱码久久久久久蜜臀| 啦啦啦免费高清视频在线观看| 国产精品三级视频| 中国男女全黄大片| 爽好久久久欧美精品| 久久免费视频2| 欧美国产不卡| 91精品视频在线播放| 日韩av一卡| 久久伊人精品天天| 亚洲 欧美 自拍偷拍| 欧美精品1区2区| 国产日产精品一区二区三区| 一区精品在线播放| 黄色污在线观看| 精品一区二区精品| 日本精品www| 伊人久久大香线| 日韩资源av在线| 超碰97久久国产精品牛牛| 国产精品444| av免费不卡国产观看| 中文字幕亚洲色图| 亚洲av成人精品日韩在线播放| 这里只有精品视频在线观看| 中文字幕在线播| 午夜天堂影视香蕉久久| 国产美女福利视频| 久久久久9999亚洲精品| 中文字幕三级电影| 久久99精品久久久久久国产越南 | 美女高潮视频在线看| www.欧美三级电影.com| 麻豆国产在线播放| 精品电影一区二区| www.97超碰| 欧美久久一区二区| 色老头一区二区| 富二代精品短视频| 国产真实乱偷精品视频| 亚洲私人黄色宅男| 69精品无码成人久久久久久| 99久久777色| 国产精品成人免费一区久久羞羞| 麻豆久久一区二区| 久久精品影视大全| 水野朝阳av一区二区三区| 精品少妇一区二区三区在线| 国内精品嫩模av私拍在线观看| 色香蕉在线观看| 色97色成人| 亚洲国产日韩美| 欧美精品尤物在线观看| 欧美精品尤物在线| 九九综合九九| 欧美极品色图| 国产影视一区| 日本精品免费| 欧美精品一区二区久久| 日韩精品一线二线三线| 国产毛片一区二区三区| 日本一区二区不卡高清更新| 美日韩中文字幕| 欧美极品一区| 色综合蜜月久久综合网| 一本久久a久久精品vr综合| 欧美成人自拍| 免费日韩在线观看| 欧美激情1区| 一本久道高清无码视频| 99精品国产99久久久久久福利| 国产欧美日韩网站| 99精品国产在热久久下载| 日本一区二区黄色| 日韩精品五月天| 九九热免费在线观看| 国产精品99精品久久免费| 成人三级做爰av| av一区二区三区四区| a级在线观看视频| 久久网站热最新地址| 极品蜜桃臀肥臀-x88av| 国产精品水嫩水嫩| 黄色片在线观看网站| 一区二区三区日韩在线观看| 亚洲激情视频一区| 色天天综合久久久久综合片| 91亚洲国产成人精品一区| 日韩视频一区在线观看| 天堂在线观看免费视频| 亚洲欧美国产另类| 国产最新在线| 97视频色精品| 久久精品xxxxx| 国产精品日韩欧美一区二区| 免费成人结看片| 在线观看亚洲视频啊啊啊啊| 激情亚洲网站| 亚洲性生活网站| 福利视频网站一区二区三区| 日韩在线免费观看av| 亚洲视频网在线直播| 日韩免费一级片| 欧美福利视频导航| 五月天久久久久久| www.亚洲一区| 理论片午夜视频在线观看| 国产日韩欧美在线| 久久综合另类图片小说| 杨幂一区欧美专区| 亚洲专区欧美专区| 奇米777在线| 国产欧美中文在线| 久久视频免费在线观看| 精品视频免费在线| 性xxxx视频播放免费| 不卡av在线网站| 写真福利精品福利在线观看| 999国产在线| 波多野结衣一区| 国产a级一级片| 国产.欧美.日韩| 亚洲区一区二区三| 欧美性猛交xxxx免费看漫画| 国产免费av电影| 国产一区二区三区欧美| 国产黄大片在线观看| 91老司机在线| 久久福利影院| 欧美黑人又粗又大又爽免费| 成人免费视频视频| 欧美日韩黄色网| 欧美婷婷六月丁香综合色| 四虎精品在线| 国内精品久久久久| 亚洲日本va| 亚洲在线色站| 日韩av一区二区在线影视| 国产精品300页| 亚洲高清免费视频| 国产草草影院ccyycom| 精品国产区一区二区三区在线观看| 成人欧美大片| 久久精品女人的天堂av| 亚洲欧洲另类| zjzjzjzjzj亚洲女人| 一区二区三区波多野结衣在线观看| 一级片视频网站| 日韩在线观看免费| 久久久久毛片| 亚洲人成网站在线观看播放| 日韩av成人高清| 精品人妻一区二区三区四区| 欧美午夜视频一区二区| 亚洲欧美日韩综合在线| 性欧美在线看片a免费观看| 911精品国产| 国产一线二线三线女| 国产69精品久久久久777| 免费一级全黄少妇性色生活片| 日韩欧美国产成人一区二区| www.久久久久.com| 91沈先生播放一区二区| 国产综合精品| 国产黑丝在线观看| 五月天欧美精品| 国产又爽又黄网站亚洲视频123| 91国内产香蕉| 午夜a一级毛片亚洲欧洲| 国产美女三级视频| 国产亚洲成av人在线观看导航| 亚洲高清视频免费观看| 中文字幕日韩精品在线| 另类一区二区| 黄色一级视频播放| 东方欧美亚洲色图在线| 日韩大片免费在线观看| 日韩精品在线电影| 欧美成人app| 色撸撸在线观看| 国产·精品毛片| 中文字字幕在线中文| 中文字幕亚洲综合| 国产精品美女久久久久人| 男人c女人视频| 91在线播放网址| 一本色道久久综合无码人妻| 欧美老女人性生活| 日本三级久久| 在线观看免费的av| 亚洲三级在线免费观看| 少妇人妻偷人精品一区二区| 国产精品69精品一区二区三区| 99久精品视频在线观看视频| gogo亚洲国模私拍人体| 一本色道久久综合亚洲91| 日韩在线免费电影| 国产不卡一区二区在线观看| 性久久久久久| av激情在线观看| 日韩国产精品视频| 日本午夜精品久久久久| 国产主播自拍av| 国产精品素人视频| 神马午夜精品95| 国产在线播放91| 亚洲一区二区三区高清| 国产3级在线观看| 精品视频在线导航| 国产一区二区三区免费观看在线| 亚洲人精品午夜射精日韩| 国产精品水嫩水嫩| 亚洲欧美日本在线观看| 亚洲伊人第一页| 免费高清不卡av|