

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

# Neptune Streams を使用してグラフ変更をリアルタイムでキャプチャする
<a name="streams"></a>

Neptune Streams は、グラフへのすべての変更を、発生した順序で、フルマネージド型の方法でログに記録します。Streams を有効にすると、Neptune は可用性、バックアップ、セキュリティ、有効期限を処理します。

以下は、発生したグラフへの変更をキャプチャするユースケースの例です。
+ 特定の変更が行われたときに、アプリケーションがユーザーに自動的に通知するようにする場合があります。
+ グラフデータの現在のバージョンを、Amazon OpenSearch Service, Amazon ElastiCache, Amazon Simple Storage Service (Amazon S3) など, 別のデータストアでも維持したい場合があります。

Neptune は、グラフデータと同じネイティブストレージを変更ログストリームに使用します。変更ログエントリを、その変更を行うトランザクションと共に同期的に書き込みます。HTTP REST API を使用して、ログストリームからこれらの変更レコードを取得します。(詳細については、「[Streams API の呼び出し](streams-using-api-call.md)」を参照してください。)

次の図は、Neptune Streams から変更ログデータを取得する方法を示しています。

![\[ライターインスタンスとリードレプリカの両方から変更ログデータを取得する方法を示す図。\]](http://docs.aws.amazon.com/ja_jp/neptune/latest/userguide/images/neptune-streams.png)


**Neptune Streams 保証**
+ トランザクションによって行われた変更は、トランザクションが完了するとすぐにライターとリーダーの両方から読み取ることができます (リーダーの通常のレプリケーション遅延は除く)。
+ 変更レコードは、発生した順序 (トランザクション内で行われた変更を含む) で厳密に連続して表示されます。
+ 変更ストリームに重複は含まれません。各変更は 1 回のみ記録されます。
+ 変更ストリームは完全です。変更が失われたり省略されたりすることはありません。
+ 変更ストリームには、開始状態がわかっている限り、任意の時点でデータベース自体の完全な状態を判断するために必要なすべての情報が含まれます。
+ Streams はいつでもオン/オフを切り替えることができます。

**Neptune Streams 操作のプロパティ**
+ 変更ログストリームはフルマネージド型です。
+ 変更ログデータは、変更を行う同じトランザクションの一部として同期的に書き込まれます。
+ Neptune Streams を有効にすると、変更ログデータに関連付けられた I/O およびストレージ料金が発生します。
+ デフォルトでは、変更レコードは、作成されてから 1 週間後に自動的に消去されます。[エンジンリリース 1.2.0.0](engine-releases-1.2.0.0.md) 以降、この保持期間は [neptune\$1streams\$1expiry\$1days](parameters.md#parameters-db-cluster-parameters-neptune_streams_expiry_days) DB クラスターパラメータを使用して 1 から 90 までの任意の日数に変更できます。
+ ストリームの読み取りパフォーマンスは、インスタンスに応じてスケールされます。
+ リードレプリカを使用して、高可用性と高い読み込みスループットを達成できます。同時に作成して使用できるストリームリーダーの数に制限はありません。
+ 変更ログデータは、複数のアベイラビリティーゾーンにまたがってレプリケートされるため、高い耐久性を実現できます。
+ ログデータは、グラフデータ自体と同じくらい安全です。保管時および転送時に暗号化できます。アクセスは、IAM、Amazon VPC、および AWS Key Management Service () を使用して制御できますAWS KMS。グラフデータと同様に、ポイントインタイム復元 (PITR) を使用してバックアップし、後で復元できます。
+ 各トランザクションの一部としてストリームデータを同期的に書き込むと、全体的な書き込みパフォーマンスがわずかに低下します。
+ Neptune は設計上シングルシャードされるため、ストリームデータはシャードされません。
+ ログストリーム `GetRecords` API は、他のすべての Neptune グラフオペレーションと同じリソースを使用します。つまり、クライアントはストリームリクエストと他の DB リクエスト間で負荷を分散する必要があります。
+ ストリームが無効になると、すべてのログデータにはすぐにアクセスできなくなります。つまり、ログ記録を無効にする前に、必要なすべてのログデータを読み取る必要があります。
+ 現在、 とのネイティブ統合はありません AWS Lambda。ログストリームは、Lambda 関数をトリガーできるイベントを生成しません。

**Topics**
+ [Neptune Streams の使用](streams-using.md)
+ [Neptune Streams のシリアル化形式](streams-change-formats.md)
+ [Neptune Streams の例](streams-examples.md)
+ [AWS CloudFormation を使用して Streams コンシューマーアプリケーションで Neptune-to-Neptuneレプリケーションをセットアップする](streams-consumer-setup.md)
+ [災害対策に Neptune ストリームクロスリージョンレプリケーションを使用する](streams-disaster-recovery.md)