コンテンツにスキップ

コネクタ概要

コネクタは、Meddleワークフローの構成要素です。各コネクタは、ソースからデータを読み取り、宛先にデータを書き込み、または転送中のデータを処理および変換できる特殊なコンポーネントです。

コネクタは、ビジュアルワークフローエディタで接続され、コードなしで強力なデータ統合パイプラインを作成します。

Meddleは、3つの主要カテゴリに編成された44種類のコネクタを提供します:

産業オートメーションシステム、PLCに接続し、産業分析を実行:

OPC UA

産業オートメーション用の産業標準プロトコル。複数の認証方法とセキュリティモードをサポート。

Modbus

PLCおよび産業デバイスとのシリアルおよびTCP通信。すべてのレジスタタイプとデータ形式をサポート。

Siemens S7

Siemens S7-300、S7-400、S7-1200、S7-1500 PLCとの直接通信。

Logix

EtherNet/IP(CIP)プロトコル経由のAllen-Bradley/Rockwell PLC通信。

CoAP

リソース制約のあるIoTデバイス用Constrained Application Protocol。

gRPC

TLSと設定可能なポーリングでリモートgRPCサービスを呼び出し、産業統合に対応。

ISA-18.2

ISA-18.2標準に従ったアラーム管理状態マシン。デッドバンドとオン/オフ遅延付き。

OEE

総合設備効率(可用性 × 性能 × 品質)をスライディングまたはシフトウィンドウで計算。

OPC UA PubSub

MQTTまたはUADP(UDPマルチキャスト)トランスポート経由でOPC UA PubSubメッセージを送受信。

予測保全

回帰、移動平均、またはEWMAを使用して信号トレンドから残存有用寿命とヘルススコアを計算。

PROFINET

DCE/RPC経由でPROFINET IOデバイスから変数を読み書き。

UNS

SparkplugBまたはJSON出力でISA-95 Unified Namespaceトピック階層を構築。

IoTおよびデータベースコネクタ(12種類)

Section titled “IoTおよびデータベースコネクタ(12種類)”

IoTプロトコル、メッセージブローカー、データベースとの統合:

MQTT

QoSサポート付きIoTデバイス用のパブリッシュ/サブスクライブメッセージング(MQTT v3)。

HTTP/REST

カスタマイズ可能なヘッダーとメソッドでREST APIおよびWebサービスに接続。

InfluxDB

産業およびIoTデータ用に最適化された時系列データベース。

MongoDB

柔軟なデータストレージ用のNoSQLドキュメントデータベース。

SQL

MySQL、PostgreSQL、SQL Serverデータベースのサポート。

Redis

キャッシングとリアルタイムデータキュー用のインメモリデータストア。

Firebase

スケーラブルなNoSQLドキュメントストレージ用Google Cloud Firestore。

AMQP

エクスチェンジ/キューバインディングとTLSを使用したRabbitMQ AMQP 0.9.1パブリッシュ/サブスクライブ。

Kafka

コンシューマグループとSASL認証を使用したApache Kafkaパブリッシュ/サブスクライブ。

MQTT v5

共有サブスクリプション、ユーザープロパティ、メッセージ有効期限を備えたMQTT 5.0。

NATS

キューグループとトークンまたはJWT資格情報を使用したNATSパブリッシュ/サブスクライブ。

S3

キーテンプレートを使用したAWS S3(またはS3互換)オブジェクトストレージリーダーとライター。

データの変換、フィルタリング、ルーティング、転送中の処理:

Filter

特定のデータキーのホワイトリストまたはブラックリスト。

Conveyor

多対多ルーティング用にデータを変更せずに渡す。

Merge

タイミングまたはキーベースの戦略で複数のソースからデータを結合。

Reshape

フィールドの名前変更または静的値でデータを充実。

Trigger

MXL式を使用した条件付きロジック。

Cron

特定の時間にデータリリースをスケジュール。

Auth

JWT認証と検証。

異常検出

Isolation Forestを使用したMLベースの異常検知。

Alert

条件ベースの通知を送信。

Chart

リアルタイムデータ可視化。

Aggregation

タンブリング、スライディング、またはカウントウィンドウでのウィンドウ集約(sum、avg、min、max、count)。

File Format

CSVおよびXMLペイロードのパースとシリアライズ。

Notification

Slack、Microsoft Teams、メール、Microsoft 365、またはWebhookに通知を送信。

OnChange

監視対象のキーが許容範囲を超えて変化した時のみ発行することでストリームを重複排除。

Protocol Translator

フラットJSON、ネストJSON、SparkplugB、OPC UA JSON間の変換。

Rate Limiter

ドロップまたは境界付きキュー戦略によるトークンバケットスロットル。

Router

_routeタグを使用したMXL式に基づく条件付きルーティング。

Script

設定可能なタイムアウトでサンドボックス化されたLuaスクリプトを実行。

Transform

JSONPath、Goテンプレート、または静的値でフィールドを抽出または計算。

Validation

ドロップ、フォワード、またはタグアクションでの型、範囲、正規表現検証。

すべてのコネクタは、標準のキー・バリューペイロード形式を使用してデータを交換します:

{
"temperature": 25.5,
"pressure": 101.3,
"humidity": 60,
"status": "active",
"timestamp": 1234567890
}

この標準化された形式により、基盤となるプロトコルやシステムに関係なく、任意のコネクタが他のコネクタと通信できます。

各コネクタは、3つの主要セクションを持つJSONで設定されます:

  1. Type: コネクタタイプ(例:OpcuaReaderMqttV3Writer
  2. Config: コネクタ固有の設定(エンドポイント、資格情報など)
  3. Variables: (オプション)産業用コネクタの場合、読み取り/書き込みするデータを定義

例:

{
"type": "OpcuaReader",
"config": {
"endpoint": "opc.tcp://localhost:4840",
"pollingRate": 1000
},
"variables": [
{
"key": "temperature",
"nodeId": "ns=1;s=Temperature"
}
]
}

コネクタはワークシート(ワークフロー)で編成されます:

  1. リーダーコネクタがソースからデータを収集
  2. 処理コネクタがデータを変換およびフィルタリング
  3. ライターコネクタがデータを宛先に送信

データはコネクタ間の接続を通じて流れ、各コネクタは最大のパフォーマンスのために並列でデータを処理します。

多くのリーダーコネクタはpollingRateパラメータ(ミリ秒単位)をサポートします:

{
"pollingRate": 1000 // 1秒ごとにポーリング
}

認証を必要とするコネクタは、通常複数の方法をサポートします:

{
"username": "user",
"password": "pass"
}

またはトークンベースの認証の場合:

{
"authToken": "your-token-here"
}

すべてのコネクタには組み込みのエラー処理が含まれており:

  • 特定のエラーコードでエラーをログに記録
  • 可能な場合は操作を継続
  • トラブルシューティング用の詳細なエラーメッセージを提供

パフォーマンスに関する考慮事項

Section titled “パフォーマンスに関する考慮事項”
  • システムに過負荷をかけないように適切なpollingRate値を使用
  • ポーリングが速い = より多くのデータだが、CPU/ネットワーク使用率が高い
  • 一般的な値:100ms(高速)、1000ms(通常)、5000ms(低速)

一部のコネクタはメモリにデータを蓄積します:

  • Merge: 複数のソースからデータを結合
  • Cron: スケジュールされたリリースまでデータを保持
  • メモリ使用量を制限するためにmaxRetainedパラメータを使用
  • ワークシートはコネクタを並列で実行
  • 複数のワークシートが同時に実行
  • CPUコア全体で水平スケーリング

処理コネクタを追加する前に、基本的なリーダー→ライターワークフローから始めます。

ペイロードサイズを削減してパフォーマンスを向上させるために、ワークフローの早い段階でFilterコネクタを配置します。

異なるソース間でフィールド名を標準化するためにReshapeコネクタを使用します。

エラー条件を検出し、AlertコネクタにルーティングするためにTriggerコネクタを使用します。

バッチ処理とスケジュールされたデータリリースのためにCronコネクタを使用します。

認証を必要とするデータフローでJWTトークンを検証するためにAuthコネクタを使用します。

データ内の異常なパターンを識別するためにAnomaly Detectionコネクタを追加します。

カテゴリ別にコネクタドキュメントを探索: