[Apache Hop] 用低代码尝试进行MQTT的发送和接收试试看

我想介绍一下

    • ローコードでMQTTを送受信する方法を紹介します。

 

    • HopにはMQTTをPublish, Subscribeする部品がある。

 

    HopでのETLの定義の雰囲気を伝えたい for Beginner。

目标对象

    • Apache Hop (データ統合プラットフォーム) 、ETLを試してみたい方。

 

    ローコードでMQTTを送受信してETL処理に連携させたい方。

前提 tí)

    • Dockerを動かすことができる(MQTT Broker)。

 

    • Apache Hopをインストールしている、HOP GUIを操作できる、簡単な変換処理を定義できる。

 

    MQTT部品は標準部品に含まれてない。EXTERNAL PLUGINSのため、以下のサイトの手順沿ってビルドして配置する必要がある。

 

整体构成

image.png

操作步骤的顺序

    • MQTT Brokerを起動する

 

    • MQTTをPublishするPipelineを作成する

 

    • MQTTをSubscribeするPipelineを作成する

 

    動作確認する

启动MQTT Broker.

用以下的Docker Compose文件定义并通过docker-compose up -d命令启动Broker。
将mosquitto用作MQTT服务器。

version: "3"
services:

  broker:
    image: eclipse-mosquitto
    volumes:
      - ./mosquitto/config:/mosquitto/config
      - ./mosquitto/data:/mosquitto/data
      - ./mosquitto/log:/mosquitto/log
    user: "1000:1000"
    ports:
      - 1883:1883

创建一个用于发布MQTT的管道。

image.png
image.png

创建一个订阅MQTT的数据处理流程

image.png
image.png
image.png

确认动作

image.png

发送的数据通过MQTT Broker被传送给Subscriber。

image.png

总结

    • このようにMQTT部品を利用して、MQTTのデータをPublisher, Subscribeできることを確認できた。IoTデータなどがMQTT経由でApacheHopでデータを受信できそう。

 

    • ApacheHopには、mongoDB、PostgerSQL、neo4j, splunkとの連携する機能がある。MQTTで受信したデータを変換して保存することができるかもしれない。

 

    Kafka部品もあるので、MQTTのデータをKafkaに連携させることもできそう。MQTTのデータをKSQLなどで集計することもできるかもしれない。

请注意以下事项

    • データ量が増加したり、データの送信頻度が増えたときに、どのくらいスループットが保証できるかは、要件にあわせて試してみてる必要があると思う。

 

    • 1Pipelineにどのくらい定義できるのか?何個最大でうごかせるか?などはマシンスペック、ネットワークなど環境によりそう。

 

    MQTT部品でセキュリティの設定したときの動作は未確認。それも要件によって確認が必要だと思う。

请参考

流式传输Apache Hop和MQTT
https://diethardsteiner.github.io/hop/2021/02/08/Apache-Hop-MQTT简介.html

广告
将在 10 秒后关闭
bannerAds