0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何運(yùn)行與Apache Kafka和MQTT代理演示?

lhl545545 ? 來源:未來物聯(lián)網(wǎng) ? 作者:未來物聯(lián)網(wǎng) ? 2020-07-28 11:39 ? 次閱讀

用于傳感器分析的KSQL UDF。利用KSQL的新的API特性,用Java輕松地構(gòu)建UDF / UDAF函數(shù),從而使用Apache Kafka進(jìn)行連續(xù)流處理。用例:聯(lián)網(wǎng)汽車——使用深度學(xué)習(xí)的實(shí)時流媒體分析。

我為混合機(jī)器學(xué)習(xí)基礎(chǔ)設(shè)施構(gòu)建了一個場景,利用Apache Kafka作為可伸縮的中樞神經(jīng)系統(tǒng)。使用公共云在極端尺度下訓(xùn)練分析模型(如通過谷歌ML引擎在谷歌云平臺(GCP)上使用TensorFlow和TPUs。預(yù)測(即模型推斷)是在本地Kafka基礎(chǔ)設(shè)施的邊緣前提下執(zhí)行的(例如利用Kafka流或KSQL進(jìn)行流分析)。

這篇文章的重點(diǎn)是在前提部署。我用KSQL UDF創(chuàng)建了一個用于傳感器分析的Github項目。它利用KSQL的新API特性輕松地使用Java構(gòu)建UDF / UDAF函數(shù),對傳入事件進(jìn)行連續(xù)流處理。

用例:聯(lián)網(wǎng)汽車——使用深度學(xué)習(xí)的實(shí)時流媒體分析

連續(xù)處理來自連接設(shè)備(本例中的汽車傳感器)的數(shù)百萬個事件:

我建立了不同的分析模型。他們在公共云上接受訓(xùn)練,利用TensorFlow、H2O和谷歌ML引擎。模型創(chuàng)建不是這個示例的重點(diǎn)。最終的模型已經(jīng)準(zhǔn)備好投入生產(chǎn),并可以部署進(jìn)行實(shí)時預(yù)測。

模型服務(wù)可以通過模型服務(wù)器或原生嵌入到流處理應(yīng)用程序中來完成。查看模型部署中RPC與流處理的權(quán)衡和“TensorFlow + gRPC + Kafka流”示例。

演示:使用MQTT、Kafka和KSQL在邊緣進(jìn)行模型推斷

Github項目生成汽車傳感器數(shù)據(jù),通過Confluent MQTT代理將其轉(zhuǎn)發(fā)到Kafka集群進(jìn)行KSQL處理和實(shí)時分析。

這個項目主要是通過MQTT將數(shù)據(jù)輸入Kafka,通過KSQL對數(shù)據(jù)進(jìn)行處理:

Confluent MQTT代理的一大優(yōu)點(diǎn)是可以簡單地實(shí)現(xiàn)物聯(lián)網(wǎng)場景,而不需要MQTT代理。您可以通過MQTT代理直接將消息從MQTT設(shè)備轉(zhuǎn)發(fā)到Kafka。這大大減少了工作和成本。如果您“只是”希望在Kafka和MQTT設(shè)備之間進(jìn)行通信,那么這是一個完美的解決方案。

如果你想看這個故事的其他部分(與像Elasticsearch / Grafana這樣的sink應(yīng)用的集成),請看看Github項目“KSQL流物聯(lián)網(wǎng)數(shù)據(jù)”。通過Kafka Connect和Elastic connector實(shí)現(xiàn)了與ElasticSearch和Grafana的集成。

KSQL UDF 源代碼

開發(fā)udf非常容易。只需在一個UDF類中實(shí)現(xiàn)一個Java方法:

下面是KSQL UDF異常檢測的完整源代碼。(Anomaly Detection KSQL UDF.)

如何運(yùn)行與Apache Kafka和MQTT代理演示?

在Github項目中描述了執(zhí)行演示的所有步驟。

您只需要安裝Confluent Platform,然后按照以下步驟部署UDF、創(chuàng)建MQTT事件并通過利用分析模型的KSQL處理它們。

我使用mosquito to生成MQTT消息。當(dāng)然,您也可以使用任何其他MQTT客戶機(jī)。這就是開放和標(biāo)準(zhǔn)化協(xié)議的最大好處。
責(zé)任編輯:pj

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 傳感器
    +關(guān)注

    關(guān)注

    2546

    文章

    50498

    瀏覽量

    751195
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2902

    文章

    44122

    瀏覽量

    370427
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8357

    瀏覽量

    132328
收藏 人收藏

    評論

    相關(guān)推薦

    HarmonyOS Next MQTT演示

    HarmonyOS Next MQTT演示
    發(fā)表于 11-07 16:54

    Kafka高性能背后的技術(shù)原理

    Kafka 是一款性能非常優(yōu)秀的消息隊列,每秒處理的消息體量可以達(dá)到千萬級別。
    的頭像 發(fā)表于 10-23 09:37 ?227次閱讀
    <b class='flag-5'>Kafka</b>高性能背后的技術(shù)原理

    MQTT協(xié)議網(wǎng)關(guān)的工作原理及功能特性

    在物聯(lián)網(wǎng)的快速發(fā)展中,MQTT協(xié)議網(wǎng)關(guān)作為連接物聯(lián)網(wǎng)設(shè)備與消息代理服務(wù)器的重要橋梁,扮演著不可或缺的角色。MQTT是一種基于發(fā)布/訂閱模式的輕量級通信協(xié)議,特別適用于低帶寬、不穩(wěn)定網(wǎng)絡(luò)環(huán)境下
    的頭像 發(fā)表于 09-18 17:00 ?351次閱讀
    <b class='flag-5'>MQTT</b>協(xié)議網(wǎng)關(guān)的工作原理及功能特性

    MQTT網(wǎng)關(guān):物聯(lián)網(wǎng)中的關(guān)鍵橋梁

    基于發(fā)布/訂閱模式的輕量級通信協(xié)議,特別適用于低帶寬、不穩(wěn)定網(wǎng)絡(luò)環(huán)境下的數(shù)據(jù)傳輸。MQTT網(wǎng)關(guān)則是連接物聯(lián)網(wǎng)設(shè)備與消息代理服務(wù)器之間的橋梁,通過它,物聯(lián)網(wǎng)設(shè)備能夠高效、可靠地進(jìn)行通信和數(shù)據(jù)交換。 MQTT網(wǎng)關(guān)的定義與功能
    的頭像 發(fā)表于 08-22 14:15 ?320次閱讀
    <b class='flag-5'>MQTT</b>網(wǎng)關(guān):物聯(lián)網(wǎng)中的關(guān)鍵橋梁

    知識科普 MQTT Broker 代理 是什么

    MQTT Broker作為MQTT通信的核心組件,扮演著關(guān)鍵的角色,負(fù)責(zé)管理客戶端連接、消息路由和訂閱管理等任務(wù)。它在物聯(lián)網(wǎng)和M2M通信中發(fā)揮著不可或缺的作用,使得設(shè)備和應(yīng)用能夠高效地進(jìn)行實(shí)時通信,為物聯(lián)網(wǎng)的發(fā)展和應(yīng)用提供了強(qiáng)大的技術(shù)支持。
    的頭像 發(fā)表于 08-01 16:51 ?242次閱讀
    知識科普 <b class='flag-5'>MQTT</b> Broker <b class='flag-5'>代理</b> 是什么

    來了解一下MQTT Broker代理

    MQTT Broker是MQTT(Message Queuing Telemetry Transport)協(xié)議中的核心組件,它是一種輕量級的、發(fā)布/訂閱模式的消息傳輸協(xié)議,廣泛應(yīng)用于物聯(lián)網(wǎng)(IoT
    的頭像 發(fā)表于 07-15 17:03 ?335次閱讀
    來了解一下<b class='flag-5'>MQTT</b> Broker<b class='flag-5'>代理</b>

    PSoC6上的Wi-fi_mqtt_Client出現(xiàn)MQTT連接錯誤的原因?

    我在使用 PSoC6 板上的 Wi-Fi_MQTT_Client 示例時遇到了一個問題。 Wi-Fi 連接成功了,但在嘗試連接 MQTT 代理(test.mositto.org)時卻出現(xiàn)了以下錯誤
    發(fā)表于 07-04 07:25

    為什么使用MQTT而不是HTTP?

    MQTT協(xié)議通過TCP/IP運(yùn)行,基于無損通信的雙向發(fā)布-訂閱模型,確保MQTT消息高效無損地傳遞。
    發(fā)表于 04-28 11:07 ?857次閱讀
    為什么使用<b class='flag-5'>MQTT</b>而不是HTTP?

    云服務(wù)器apache如何配置解析php文件?

    運(yùn)行以下命令安裝PHP: sudo apt update sudo apt install php 2、安裝 Apache:如果服務(wù)器上還沒有安裝Apache,你需要安裝它。同樣可以使用包管理工具來
    的頭像 發(fā)表于 04-22 17:27 ?924次閱讀

    什么是Apache日志?Apache日志分析工具介紹

    Apache Web 服務(wù)器在企業(yè)中廣泛用于托管其網(wǎng)站和 Web 應(yīng)用程序,Apache 服務(wù)器生成的原始日志提供有關(guān) Apache 服務(wù)器托管的網(wǎng)站如何處理用戶請求以及訪問您的網(wǎng)站時經(jīng)常遇到的錯誤的重要信息。
    的頭像 發(fā)表于 01-04 10:09 ?777次閱讀

    kafka基本原理詳解

    今天浩道跟大家分享一篇關(guān)于kafka相關(guān)原理的硬核干貨,可以說即使你沒有接觸過kafka,也可以秒懂,一起看看!
    的頭像 發(fā)表于 01-03 09:57 ?842次閱讀
    <b class='flag-5'>kafka</b>基本原理詳解

    kafka支持哪些消息交付語義?

    在讀完kafka官方文檔,kafka設(shè)計里的消息交付語義一章后,給我的第一印象是內(nèi)容很抽象,于是草擬和總結(jié)了給個副標(biāo)題,并把相關(guān)內(nèi)容進(jìn)行了歸類;有些生澀的句子,盡量用大白話和舉例進(jìn)行說明,并加入了總結(jié)。
    的頭像 發(fā)表于 12-22 11:27 ?448次閱讀
    <b class='flag-5'>kafka</b>支持哪些消息交付語義?

    如何保證kafka消息不丟失

    如果在簡歷上寫了使用過kafka消息中間件,面試官大概80%的概率會問你:"如何保證kafka消息不丟失?"反正我是屢試不爽。
    的頭像 發(fā)表于 12-19 09:52 ?697次閱讀
    如何保證<b class='flag-5'>kafka</b>消息不丟失

    golang中使用kafka的綜合指南

    kafka是一個比較流行的分布式、可拓展、高性能、可靠的流處理平臺。在處理kafka的數(shù)據(jù)時,這里有確保處理效率和可靠性的多種最佳實(shí)踐。本文將介紹這幾種實(shí)踐方式,并通過sarama實(shí)現(xiàn)他們。
    的頭像 發(fā)表于 11-30 11:18 ?536次閱讀

    MQTT和Modbus的物聯(lián)網(wǎng)網(wǎng)關(guān)協(xié)議區(qū)別分析

    MQTT 是一個開放的輕量級機(jī)器對機(jī)器協(xié)議,專為物聯(lián)網(wǎng)交互設(shè)計。MQTT 網(wǎng)絡(luò)包含一個 MQTT 經(jīng)紀(jì)人 (broker),負(fù)責(zé)協(xié)調(diào) MQTT 代理
    發(fā)表于 11-27 10:58 ?860次閱讀
    <b class='flag-5'>MQTT</b>和Modbus的物聯(lián)網(wǎng)網(wǎng)關(guān)協(xié)議區(qū)別分析