欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

FLINKSIDDHIADDON學(xué)習(xí)筆記-創(chuàng)新互聯(lián)

SIDDHI 是一款功能強(qiáng)大的CEP 引擎,具有自己的DSL,豐富的模式匹配功能和可擴(kuò)展性, 感謝陳浩同學(xué)提供了SIDDHI和FLINK的整合功能 https://github.com/haoch/flink-siddhi 本文主要介紹了這個(gè)ADDON的一些實(shí)現(xiàn)思路

創(chuàng)新互聯(lián)-專(zhuān)業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性?xún)r(jià)比鄄城網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式鄄城網(wǎng)站制作公司更省心,省錢(qián),快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋鄄城地區(qū)。費(fèi)用合理售后完善,十年實(shí)體公司更值得信賴(lài)。
  1. 將FLINK STREAM 轉(zhuǎn)化為 SIDDHI STREAM 定義

??用法: SiddhiCEP.registerStream(streamName, FlinkDataStream, fieldNames)

??通過(guò) FlinkDataStream.getType 獲得流對(duì)象的類(lèi)型定義.registerStream方法會(huì)構(gòu)造一個(gè) SiddhiStreamSchema 對(duì)象,根據(jù)流對(duì)象的類(lèi)型定義,自動(dòng)獲取每個(gè)field對(duì)應(yīng)的數(shù)據(jù)類(lèi)型存在內(nèi)部的fieldTypes數(shù)組中.

??SiddhiStreamSchema 內(nèi)部會(huì)創(chuàng)建一個(gè)Siddhi StreamDefinition對(duì)象, StreamDefinition的attribute的定義根據(jù)fieldNames + fieldTypes 來(lái)添加.SiddhiTypeFactory.getAttributeType 負(fù)責(zé)將Flink 的數(shù)據(jù)類(lèi)型映射為Siddhi的數(shù)據(jù)類(lèi)型, 并可自動(dòng)生成一段Define Stream的定義(見(jiàn) SiddhiStreamSchema.getStreamDefinitionExpression 方法) define stream [streamName] ([fieldName 1] [fieldType 1], ...[fieldName n] [fieldType n])

??SiddhiStreamSchema 包括一個(gè)StreamSerializer: 用于將DataStream 中的對(duì)象轉(zhuǎn)化為 Siddhi Stream 的輸入(Object Array):
????如果流對(duì)象是一個(gè)簡(jiǎn)單類(lèi)型 Atomic Type 直接將流對(duì)象放到 ARRAY中
????如果流對(duì)象是Tuple 類(lèi)型,直接將Tuple 中前N個(gè)值放到ARRAY中
????如果流對(duì)象是Pojo或者CaseClass類(lèi)型,直接根據(jù)每個(gè)fieldName 獲取Class對(duì)應(yīng)的屬性放到ARRAY中

  1. 串聯(lián)FLINK STREAM 和 SIDDHI STREAM

??SiddhiStream: 抽象的Stream基類(lèi)

??convertDataStream 將原始的FLINK流轉(zhuǎn)化為T(mén)uple類(lèi)型的流,Tuple的第一個(gè)元素為StreamId, 第二個(gè)元素為原來(lái)流中的數(shù)據(jù),支持普通Stream 和 KeyedStream

??ExecutionSiddhiStream: 構(gòu)建 SiddhiOperatorContext 并調(diào)用SiddhiStreamFactory.createDataStream 創(chuàng)建了集成Siddhi的 DataStream. DataStream的類(lèi)型為T(mén)uple的子類(lèi).SiddhiTypeFactory.getTupleTypeInformation: 其核心思路是通過(guò)Siddhi輸出Stream的StreamDefinition獲得其Attribute的定義,再通過(guò) TypeInfoParser.parse構(gòu)造Flink Tuple 類(lèi)型的定義

??ExecutableStream 根據(jù)Siddhi query 創(chuàng)建ExecutionSiddhiStream對(duì)象
??SingleSiddhiStream, UnionSiddhiStream: ExecutableStream 的子類(lèi),支持Fluent Style的鏈?zhǔn)秸{(diào)用. UnionSiddhiStream 調(diào)用了DataStream.union 方法

??SiddhiStreamFactory.createDataStream 通過(guò) FLINK DataStream的transform方法使用了自定義的StreamOperator: SiddhiStreamOperator. 在 AbstractSiddhiOperator 的 setup 方法中創(chuàng)建SiddhiManager 和 SiddhiAppRuntime 并注冊(cè)了 InputHandler 和 OutputCallback (StreamOutputHandler)

??SiddhiStreamOperator.processElement 需要處理兩種場(chǎng)景:
????Flink TimeCharacteristic = ProcessingTime: 先調(diào)用StreamSerializer將數(shù)據(jù)轉(zhuǎn)化為Object Array, 再直接調(diào)用InputHandler.send將數(shù)據(jù)發(fā)送給Siddhi處理
????Flink TimeCharacteristic = EventTime: 緩存接收到的StreamRecord 到內(nèi)部的priorityQueue中,直到收到Watermark, 將priorityQueue中小于watermark的StreamRecord一次發(fā)送給Siddhi處理

  StreamOutputHandler:根據(jù)Output的TypeInfo將Siddhi Event 轉(zhuǎn)化為 Flink StreamRecord. 再轉(zhuǎn)發(fā)到SiddhiStreamOperator的Output

  1. CHECKPOINT

??SiddhiStreamOperator中保留了兩種State信息,一種是priorityQueue中保存的由于watermark未發(fā)送給Siddhi的消息. 另一種是Siddhi本身的State, 通過(guò)SiddhiAppRuntime.snapshot() 獲得

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。

分享標(biāo)題:FLINKSIDDHIADDON學(xué)習(xí)筆記-創(chuàng)新互聯(lián)
轉(zhuǎn)載來(lái)于:http://aaarwkj.com/article34/coedse.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、服務(wù)器托管、動(dòng)態(tài)網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、外貿(mào)建站、云服務(wù)器

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)
新午夜福利片在线观看| 日韩毛片免费看美日韩毛片| 国产老熟女高潮视频| 激情婷婷亚洲五月综合网| 亚洲综合国产一二三四五区| 精品不卡一区二区三区| 欧美十日本亚洲激情视频| 激情网站免费在线观看| 久久热久久热在线视频| 青青草原天堂在线免费观看| 日本女优高清不卡一二三四区| av一区二区日韩精品久| 欧美国产日韩一区二区三区视频| 亚洲欧美一级二级三级| 亚洲av久久一区二区| 91在线视频欧美国产| 国产精品国产一级国产av| 日韩欧美麻豆不卡一区二区| 久久精品国产亚洲av麻豆网站| 国产三级无遮挡在线观看| 邻居少妇扒开腿让我爽了一夜| 国产高清不卡一二三区| 亚洲女同成人在线观看| 欧美一区二区大香蕉视频| 中文字幕亚洲欧美日韩高清| 日韩中文字幕亚洲精品一| 日韩欧美国产综合一区二区| 欧美成人精品三级一二| 99热免费精品在线观看| 亚洲乱码日韩电影网站| 日本人妻三级精品久久| 亚洲男人天堂日本一区| 亚洲av男人天堂一区| 日本免费在线不卡一区二区| 日韩精品在线观看你懂的| 麻豆精品国产粉嫩av| 国产精品久久久99| av免费在线观看网页| 久热视频这里只有精品99| 黄片视频免费在线观看播放| 91麻豆精品在线观看|