

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Greengrass コアデバイスでのデータストリームの管理
<a name="manage-data-streams"></a>

AWS IoT Greengrass ストリームマネージャーを使用すると、大量の IoT データを に転送する効率と信頼性が向上します AWS クラウド。ストリームマネージャーは、 AWS IoT Greengrass Core 上のデータストリームを にエクスポートする前に処理します AWS クラウド。ストリームマネージャーは、機械学習 (ML) 推論などの一般的なエッジシナリオと統合されます。コア AWS IoT Greengrass デバイスは、データを AWS クラウド またはローカルストレージの送信先にエクスポートする前にデータを処理および分析します。

ストリームマネージャーは共通のインターフェースを提供して、カスタムコンポーネント開発を簡素化するため、カスタムストリーム管理機能を構築する必要はありません。コンポーネントは、標準化されたメカニズムを使用して大量のストリームを処理して、ローカルデータ保持ポリシーを管理できます。ストレージタイプ、サイズ、データ保持に関するポリシーをストリームごとに定義して、ストリームマネージャーがデータを処理とエクスポートする方法を制御できます。

ストリームマネージャーは、断続的または制限された接続環境で動作します。帯域幅の使用、タイムアウト動作、および AWS IoT Greengrass Core がストリームデータを接続または切断するときに処理する方法を定義できます。優先順位を設定して、 AWS IoT Greengrass コアがストリームを AWS クラウドにエクスポートする順位も制御できます。これにより、重要なデータを他のデータよりも早く処理できるようになります。

ストリームマネージャーを設定して、ストレージまたはさらなる処理と分析 AWS クラウド のためにデータを に自動的にエクスポートできます。ストリームマネージャーは、次の AWS クラウド 送信先へのエクスポートをサポートしています:
+ データに対して高度な分析を実行するチャネル in AWS IoT Analytics. AWS IoT Analytics lets は、ビジネス上の意思決定や機械学習モデルの改善に役立ちます。詳細については、*「 AWS IoT Analyticsユーザーガイド」*の[「What is AWS IoT Analytics ?」](https://docs.aws.amazon.com/iotanalytics/latest/userguide/welcome.html)( とは？) を参照してください。
+ Amazon Kinesis Data Streams のストリーム。Kinesis Data Streams を使用し、大量のデータを集約してデータウェアハウスまたは MapReduce クラスターにロードできます。詳細については、*Amazon Kinesis Data Streams デベロッパーガイド*の「[Amazon Kinesis Data Streams とは](https://docs.aws.amazon.com/streams/latest/dev/what-is-this-service.html)」を参照してください。
+ 大規模な産業機器からデータを収集、整理、分析する AWS IoT SiteWise AWS IoT SiteWise のアセットプロパティ。詳細については、「 *AWS IoT SiteWise ユーザーガイド*」の[「What is AWS IoT SiteWise?](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/what-is-sitewise.html)」を参照してください。
+ Amazon Simple Storage Service (Amazon S3) のオブジェクト。Amazon S3 を使用して大量のデータの保存と取得を行えます。詳細については、「Amazon Simple Storage Service デベロッパーガイド」の「[Amazon S3 とは](https://docs.aws.amazon.com/AmazonS3/latest/dev/Welcome.html)」参照してください。

## ストリーム管理ワークフロー
<a name="stream-manager-workflow"></a>

IoT アプリケーションは、ストリームマネージャー SDK を介してストリームマネージャーとやり取りします。

シンプルなワークフローでは、 AWS IoT Greengrass コア上のコンポーネントは、時系列の温度や圧力メトリクスなどの IoT データを消費します。コンポーネントは、データをフィルタリングまたは圧縮し、ストリームマネージャー SDK を呼び出して、ストリームマネージャーのストリームにデータを書き込むことがあります。ストリームマネージャーは、ストリームに定義したポリシーに基づいて、ストリーム AWS クラウド を自動的に にエクスポートできます。コンポーネントは、ローカルデータベースまたはストレージリポジトリにデータを直接送信することもできます。

IoT アプリケーションは、ストリームに読み書きを行う複数のカスタムコンポーネントを含めることができます。これらのコンポーネントはストリームを読み書きして、 AWS IoT Greengrass コアデバイスのデータをフィルタリング、集約、分析できます。これにより、コアから AWS クラウド またはローカルの送信先にデータ転送する前に、ローカルイベントにすばやく応答し、貴重な情報を抽出できます。

開始するには、ストリームマネージャーコンポーネントを AWS IoT Greengrass コアデバイスにデプロイします。デプロイで、ストリームマネージャーコンポーネントのパラメータを設定して、Greengrass コアデバイスのすべてのストリームに適用される設定を定義します。これらのパラメータを使用し、ビジネスニーズと環境の制約に基づいて、ストリームマネージャーがストリームを保存、処理、エクスポートする方法を制御します。

ストリームマネージャーを設定したら、IoT アプリケーションを作成してデプロイできます。これらは通常、ストリームを作成してやり取りするため、ストリームマネージャー SDK で `StreamManagerClient` を使用するカスタムコンポーネントです。ストリームを作成するとき、エクスポート送信先、優先度、永続性など、ストリームごとのポリシーを定義できます。

## 要件
<a name="stream-manager-requirements"></a>

ストリームマネージャーを使用する際に次の要件が適用されます。
+ ストリームマネージャーには、 AWS IoT Greengrass Core ソフトウェアに加えて 70 MB 以上の RAM が必要です。合計メモリ要件は、ワークロードによって異なります。
+ AWS IoT Greengrass コンポーネントは、ストリームマネージャー SDK を使用してストリームマネージャーとやり取りする必要があります。ストリームマネージャー SDK は次の言語で利用可能です。<a name="stream-manager-sdk-download-list"></a>
  + [Java 用ストリームマネージャー SDK](https://github.com/aws-greengrass/aws-greengrass-stream-manager-sdk-java/) (v1.1.0 以降)
  + [Node.js 用ストリームマネージャー SDK](https://github.com/aws-greengrass/aws-greengrass-stream-manager-sdk-js/) (v1.1.0 以降)
  + [Python 用ストリームマネージャー SDK](https://github.com/aws-greengrass/aws-greengrass-stream-manager-sdk-python/) (v1.1.0 以降)
+ AWS IoT Greengrass コンポーネントは、ストリームマネージャーを使用するには、レシピの依存関係としてストリームマネージャーコンポーネント (`aws.greengrass.StreamManager`) を指定する必要があります。
**注記**  <a name="stream-manager-upgrade-note"></a>
ストリームマネージャーを使用してデータをクラウドにエクスポートする場合、ストリームマネージャーコンポーネントのバージョン 2.0.7 を v2.0.8 と v2.0.11 の間のバージョンにアップグレードすることはできません。ストリームマネージャーを初めてデプロイする場合、ストリームマネージャーコンポーネントの最新バージョンをデプロイすることを強くお勧めします。
+ ストリームの AWS クラウド エクスポート先を定義する場合は、エクスポートターゲットを作成し、[Greengrass デバイスロール](device-service-role.md)でアクセス許可を付与する必要があります。送信先により、他の要件も適用される場合があります。詳細については、以下を参照してください。<a name="export-destinations-links"></a>
  + [AWS IoT Analytics チャネル](stream-export-configurations.md#export-to-iot-analytics)
  + [Amazon Kinesis Data Streams](stream-export-configurations.md#export-to-kinesis)
  + [AWS IoT SiteWise アセットプロパティ](stream-export-configurations.md#export-to-iot-sitewise)
  + [Amazon S3 オブジェクト](stream-export-configurations.md#export-to-s3)

  これらの AWS クラウド リソースを維持するのはお客様の責任です。

## データセキュリティ
<a name="stream-manager-security"></a>

ストリームマネージャーを使用する場合は、次のセキュリティ上の考慮事項に注意してください。

### ローカルデータセキュリティ
<a name="stream-manager-security-stream-data"></a>

AWS IoT Greengrass は、コアデバイスのローカルコンポーネント間で保管中または転送中のストリームデータを暗号化しません。
+ **保管時のデータ**。ストリームデータは、ストレージディレクトリにローカルに保存されます。データセキュリティの場合、 は、有効になっている場合、ファイルのアクセス許可とフルディスク暗号化 AWS IoT Greengrass に依存します。オプションの [STREAM\_MANAGER\_STORE\_ROOT\_DIR](configure-stream-manager.md#STREAM_MANAGER_STORE_ROOT_DIR) パラメータを使用して、ストレージディレクトリを指定できます。このパラメータを後で変更して別のストレージディレクトリを使用する場合、 AWS IoT Greengrass は以前のストレージディレクトリまたはそのコンテンツを削除しません。
+ **ローカルに送信されるデータ**。 AWS IoT Greengrass は、データソース、 AWS IoT Greengrass コンポーネント、ストリームマネージャー SDK、ストリームマネージャー間でローカルに送信されるストリームデータを暗号化しません。
+ **への転送中のデータ AWS クラウド**。ストリームマネージャーによって にエクスポートされたデータストリームは、Transport Layer Security (TLS) による標準 AWS サービスクライアント暗号化 AWS クラウド を使用します。

### クライアント承認
<a name="stream-manager-security-client-authentication"></a>

ストリーム マネージャー クライアントは、ストリームマネージャー SDK を使用してストリームマネージャーと通信します。クライアント認証が有効になっているとき、Greengrass コンポーネントのみがストリームマネージャーのストリームとやり取りできます。クライアント認証が無効になっている場合、Greengrass コアデバイスで実行されているすべてのプロセスは、ストリームマネージャーのストリームとやり取りできます。ビジネスケースで要求される場合にのみ、認証を無効にする必要があります。

クライアント認証モードを設定するには、[STREAM\_MANAGER\_AUTHENTICATE\_CLIENT](configure-stream-manager.md#STREAM_MANAGER_AUTHENTICATE_CLIENT) パラメータを使用します。ストリームマネージャーコンポーネントをコアデバイスにデプロイするとき、このパラメータを設定できます。


****  

|   | 有効 | 無効 | 
| --- | --- | --- | 
| パラメータ値 | `true` (デフォルトおよび推奨) | `false` | 
| 許可されるクライアント | コアデバイスの Greengrass コンポーネント | コアデバイスの Greengrass コンポーネント<br />Greengrass コアデバイスで実行されているその他のプロセス | 

## 関連情報
<a name="stream-manager-see-also"></a>
+ [AWS IoT Greengrass ストリームマネージャーの設定](configure-stream-manager.md)
+ [ストリームを操作するために StreamManagerClient を使用する](work-with-streams.md)
+ [サポートされている AWS クラウド 送信先のエクスポート設定](stream-export-configurations.md)