<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    大大毛 的筆記

      DDM's Note

    哪怕沒有辦法一定有說法,
    就算沒有鴿子一定有烏鴉,
    固執無罪 夢想有價,
    讓他們驚訝.

    posts - 14, comments - 23, trackbacks - 0, articles - 58
       :: 首頁 ::  :: 聯系 ::  :: 管理

    Oracle資料推送MQTT

    Posted on 2019-04-10 15:25 大大毛 閱讀(403) 評論(0)  編輯  收藏 所屬分類: Nifi
    需求
    將資料從Oracle推至MQTT,資料結果使用JSON格式
    場景1:直接推送
    場景2:僅當資料有變更時才推送

    解決方案
    QueryDatabaseTable --> ConvertAvroToJSON --> PublishMQTT


    Processor及其設定:
    QueryDatabaseTable,作用是從DB中撈取資料,可以想象Nifi把它轉成一個Select語句在執行


    • Database Connection Pooling Service:在Configure中設定的數據庫連接,可以在Processor Group中被共用
    • Database Type:這個設定的是Oracle。其實它與數據庫連接設定有點重疊,那邊已經有指定是哪一種類型的DB,這里需要再指定,我想會不會是利用它來生成不同的Select查詢語法?
    • Table Name:表名,我這里使用的是View名稱,View其實就已經對Table做出一些限定,可以挑選列及設定查詢條件
    • Maximum-value Columns:這個屬性很重要,如果不設定則Nifi在查詢的時候會撈取所有的資料,如果有設定某個列,則Nifi僅會撈取“新”資料
      • 例如圖上設定“BATCHID”這個列。第一次Nifi啟動時撈取資料中最大BATCHID = 10,則下一次Nifi再次啟動時就只會撈取BATCHID>10的資料,并且會自動記錄下已經撈過的最大值
      • 最大值保存在下面這里,Processor上右鍵選擇“View State”


      • 下圖可以看到當前最新的值,點“Clear State”則可以將保留值清空(Nifi下次啟動時就會撈取所有資料)

    • 對于僅需要簡單拉取資料的場景1來說,“Maximum-value Columns”置空即可;而對于僅在資料有更新時才要拉取的場景2來說,則需要設定并且在View中做出一些調整才可以達成
      • 當有資料更新時,則被更新資料的BatchID會是更新的值,所以只要在View中虛擬BatchID列 = Max(BatchID),就可以達成有資料更新才要拉取的效果
    ConvertAvroToJSON,將Avro類型資料轉換為JSON,這個可以不用改設定

    PublishMQTT,將資料Publish到MQTT指定Topic
    • Broker URIMQTT的Broker地址
    • Client ID發布MQTT的Client端ID(注意不要多個Processor使用相同的Client ID,這樣Processor容易被卡死)
    • Topic發布至MQTT的Topic名稱
    • Retain MessageMQTT的遺言屬性,即是否保留推送的消息(若設為false,則僅有當前連上MQTT的客戶端才能收到這筆消息)

    i am ddm

    主站蜘蛛池模板: 99精品国产成人a∨免费看| 偷自拍亚洲视频在线观看| 国产免费A∨在线播放| 亚洲欧洲中文日韩久久AV乱码| 亚洲欧美日韩中文无线码| 浮力影院第一页小视频国产在线观看免费 | 日产乱码一卡二卡三免费| 亚洲中文字幕无码av| 夜夜爽免费888视频| 亚洲爆乳成av人在线视菜奈实| 日韩成人在线免费视频| 日本一区二区在线免费观看| 亚洲色欲久久久久综合网| 91在线视频免费观看| 久久水蜜桃亚洲av无码精品麻豆| 亚洲免费一级视频| 亚洲色偷精品一区二区三区| 无码不卡亚洲成?人片| 久久久久久噜噜精品免费直播| 国产成人亚洲精品青草天美| 久久久精品2019免费观看| 久久狠狠爱亚洲综合影院| 国产无遮挡又黄又爽免费视频| 国产精品永久免费视频| 亚洲男人的天堂在线播放| 亚洲欧洲免费无码| 牛牛在线精品观看免费正| 亚洲av无码一区二区三区网站| 思思re热免费精品视频66| 免费亚洲视频在线观看| 亚洲AV无码一区二区二三区入口 | 亚洲一级毛片中文字幕| 国产成人免费片在线观看| 国产成年无码久久久免费| 亚洲中文字幕日本无线码 | 亚洲AV无码一区二区三区系列| 久久国内免费视频| www成人免费视频| 91亚洲性爱在线视频| 亚洲国产综合久久天堂| 1000部拍拍拍18免费网站|