注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
Foundry におけるほとんどのデータ取り込みは、ソースシステムからデータを引き出し、データセットやストリームに同期することに焦点を当てています。
ストリームに関しては、Foundry はイベントベースのワークフローをサポートするための プッシュベースの取り込み をサポートしています。
Foundry でのプッシュベースのレコード取り込みは、典型的な REST サービスと同じ原則に従います。一連の REST エンドポイントを通じて、レコードを消費し、それらをストリームとデータセットに書き込むことができるプッシュベースの API を公開しています。ストリームにプッシュするためには以下の高レベル情報が必要です:
既にデータのための Foundry ソースが設定されている場合は、そのソースに接続することを検討してみてください。既存のソースで ストリーミング同期を設定する 方法や、Kafka ソースを設定する 方法を学んでみてください。
以下では、ストリームにデータをプッシュするために必要な手順について説明します:
まず、新しいストリームを作成する必要があります。
Define ページで、スループットに Normal を選択します。このチュートリアルでは、スキーマを sensor_id**:** String
、temperature**:** Double
に設定します。
ストリームに接続する準備ができました。
プッシュベースの取り込みのために、Connect via API セクションのオプションのうち一つを選択します。
HTTP リクエストを行うことができる任意の言語やテクノロジーを使用してレコードをプッシュすることができます。Curl、JavaScript via Node、Java の例を提供しています。Foundry へのデータのプッシュの代わりに Foundry sync 経由でデータを取り込む方法を確認するには、ストリーミング同期を設定する 方法をご覧ください。
この例では、Curl を選択します。
すると、Push データワークフローページに移動します。
次に、認証メカニズムを選択します。我々はリクエストを認証する2つの方法をサポートしています:
このチュートリアルでは、サードパーティアプリケーションを使用してプッシュ 方法を選択します。画面の指示に従ってサードパーティアプリケーションを設定し、client secretを作成します。
次に、Go to third-party applications を選択して、Foundry プラットフォーム設定のサードパーティアプリケーション管理ページを開きます。
画面の右上にある Register new application を選択します。
名前を選択し、クライアントタイプを Server application に設定します。
Create を選択すると、クライアント ID とシークレットが表示されます。
このページから離れるとクライアントシークレットにアクセスできなくなります。安全な場所に保存してください。
これで、クライアント ID とシークレットを Push ワークフローページに追加できます。
ワークフローの Configuring the Application セクションにスクロールし、Manage application を選択して、Foundry プラットフォーム設定の サードパーティアプリケーション 管理ページを開きます。
次に、Client credentials grant 設定を有効にします。
最後に、右上の角にある Save をクリックします。
次に、作成したアプリケーションとストリームを共有する必要があります。
最初に、Push ワークフローページに戻ります。ワークフローの Using Your New Application セクションで、生成したクライアント ID を見つけます。
次に、右上の Share を選択して、ストリーム Details サイドバーの Roles タブを開きます。
クライアント ID を Roles 検索フィールドにコピー&ペーストして、作成したアプリケーションを見つけます。Editor
ロールを検索し、選択するために + をクリックします。
サイドパネルの下部にある Save をクリックしてストリームを共有します。
プッシュワークフローに戻り、Next step をクリックします。
ストリームにテストレコードをプッシュするために使用できるコード例が表示されます。コード例は、前の手順で選択した言語によって異なります。この例では、Curl を使用しています。
Curl コマンドを実行する前に、コマンドライン JSON パースのために jQuery をインストールしてください。
Mac、Windows、または Linux マシン上の bash ターミナルでコマンドを実行します。
コマンドが実行されると、$ACCESS_TOKEN
という名前の利用可能な変数ができます。この変数を次のコマンドで使用してレコードをプッシュします。
2つ目のコマンドは、Curl を使用して Foundry エンドポイントにヒットし、ストリームに挿入したいレコードを含む post リクエストを行います。コマンドはストリームにプッシュするダミーレコードで事前に入力されていますが、HTTP リクエストでストリームのスキーマに準拠した任意のデータを提供することができます。
2つ目のコマンドをターミナルにコピー&ペーストし、実行します。
コマンドが成功すると、ストリームにレコードが表示されます。
ストリームにプッシュされるデータを変更するには、post リクエストのデータパラメータを修正します。
[{
"value": {
"sensor_id": "sensor4", // センサーID
"temperature": 4.132 // 温度
}
}]
データをストリームに正常にプッシュしたので、データの変換を開始できます。パイプライン開始 をクリックして、Pipeline Builder アプリケーションに移動し、ストリーミングパイプラインを構築します。データを変換する方法や、Pipeline Builder で利用可能なさまざまな変換について詳しく学びましょう。