Oracle Cloud Infrastructureドキュメント

ストリーミング・サービスの概要

Oracle Cloud Infrastructure Streamingサービスは、継続的で大量のデータ・ストリームをリアルタイムに消費および処理できるようにする、完全に管理され、スケーラブルで永続ストレージ・ソリューションを提供します。 ストリーミングは、アプリケーション・ログ、運用テレメトリ、Webクリック・トラック・ストリーム・データなどの大量のデータの収集、またはデータが生成されてパブリッシュ・サブスクライブ・メッセージング・モデルで継続的に処理されるその他のユースケースに使用できます。

ノート

「ストリーミング」は、Oracle Cloud Infrastructure Government Cloudでは使用できません。

ストリーミング使用例

ストリーミングで使用可能ないくつかの用途を次に示します:

  • メトリックとログ収集: 従来のファイル廃棄アプローチの代替としてストリーミングを使用し、重要な運用データを索引付け、分析およびビジュアライゼーションでより迅速に使用できるようにします。
  • メッセージング: ストリーミングを使用して、大規模なシステムのコンポーネントを分離します。 ストリーミングでは、負荷分散スパイクをフラット化するための十分な容量と、同じデータを持つ複数のコンシューマを別々にフィードできる、プル/バッファ・ベースの通信モデルが提供されます。 キー・スコープの順序と保証された永続性によって、さまざまなメッセージング・パターンを実装するために信頼性のあるプリミティブが提供されますが、スループットが高い場合、このようなシステムを十分にスケーリングできます。
  • Web/モバイル・アクティビティ・データ収集: Webサイトまたはモバイル・アプリケーション(ページ・ビュー、検索、ユーザーによる実行可能な他のアクションなど)からアクティビティを取得するために、ストリーミングを使用します。 この情報は、リアルタイムのモニターおよびアナリティクスに使用したり、オフライン処理およびレポートのためのデータ・ウェアハウス・システムに使用できます。
  • インフラストラクチャおよびアプリケーション・イベント処理: ストリーミングをクラウド・コンポーネントの統合エントリ・ポイントとして使用し、監査、会計および関連アクティビティのライフ・サイクル・イベントをレポートします。

ストリーミングの概念

ストリーミングを使って作業するには、次の概念が不可欠です。

ストリーム
パーティション化され、メッセージのログのみが追加されます。
パーティション
パーティションは、ストリームのセクションです。 パーティションを使用すると、複数のノード間でメッセージを分割することによって、ストリームを配布できます。 各パーティションを個々のマシンに配置して、複数のコンシューマがストリームからパラレルに読み取ることができるようにすることができます。
カーソル

ストリーム内のロケーションへのポインタ。 このロケーションは、パーティション内の特定のオフセットまたは時間へのポインタか、または現在のグループへのポインタです。

メッセージ
Base64エンコードされたレコードで、ストリームに公開されます。
プロデューサ
ストリームにメッセージを公開するエンティティ。
コンシューマ
1つ以上のストリームからメッセージを読み取るエンティティです。
コンシューマ・グループ
コンシューマ・グループは、ストリーム内のすべてのパーティションのメッセージを調整する一連のインスタンスです。 コンシューマ・グループ内のインスタンスは相互作用を通じてグループ・メンバーシップを維持します。一定期間に相互作用がないと、タイムアウトになり、グループからインスタンスが削除されます。
Topic/Key
関連メッセージをグループ化するために使用される識別子。
オフセット
パーティション内でのメッセージのロケーション。 オフセットを使用して、ストリームからの読み取りを再開できます。
権限
IAMを使用して、次の操作に対する権限を設定できます: ストリームのリスト、取得、更新、作成および削除を行います。

ストリーミングのしくみ

ストリーミング・サービスは、強力でスケーラブルなメカニズムを備えており、これを使用してアプリケーション・コンポーネント間で大量のデータを生成および消費できます。

ストリーミングの仕組みを次に示します: 「プロデューサ」は、「メッセージ」「ストリーム」にパブリッシュします。この「ストリーム」は、追加専用のログです。 これらのメッセージは、メッセージ・キーを使用してパーティション間に分散されます。

ストリームは、スケーラビリティのために多数の「パーティション」に分割されています。 パーティションを使用すると、複数のノード(つまりブローカ)にわたってメッセージを分割することによって、ストリームを分散できます。 各パーティションを個々のマシンに配置して、複数のコンシューマがストリームをパラレルで読み取ることができるようにすることができます。 パーティションがホストされている場所に関係なく、複数のコンシューマがパーティションから読み取ることができます。

「コンシューマ」は、1つ以上のストリームからメッセージを読み取ることができます。 ストリーム内の各メッセージはオフセット値でマークされるため、コンシューマは中断された場合に、中断した位置からメッセージを取り出すことができます。

ストリーミング・サービスは、次の方法で使用できます:

  • コンソールまたはAPIを使用したストリームの作成。
  • プロデューサを使用してデータをストリームに公開します。
  • GetMessages APIを使用して、ストリームからメッセージを読み取り、処理するコンシューマをビルドしています。

ストリーミング・リソースの制限

 

ストリーミング・サービスには次の制限があります:

  • 最大7日までのメッセージ保存
  • スループットは、パーティション当たり1MB/秒に制限されます
  • 各パーティションは、1MB最大メッセージ・サイズまで処理できます。
  • 各パーティションで、5 GetMessages APIコールを1秒当たり処理できます。
  • 各パーティションは、1秒当たりの最大データ書込みレート1MBをサポートできます。
  • 各エンタープライズ・テナンシには、5パーティションの制限があります(エンタープライズ以外のパーティションには0の制限がありますが、さらにリクエストすることもできます)。

 

適用可能な制限の一覧と制限の増加をリクエストする手順については、「サービス制限」を参照してください。 リソースまたはリソース・ファミリにコンパートメント固有の制限を設定するために、管理者は「コンパートメントの割当」を使用できます。

リソース識別子

ほとんどのタイプのOracle Cloud Infrastructureリソースには、Oracle Cloud ID (OCID)という名前の一意のOracle割当て識別子があります。 OCID形式およびリソースを識別するその他の方法については、「リソース識別子」を参照してください。

Oracle Cloud Infrastructureにアクセスする方法

コンソール (ブラウザベースのインタフェース)またはREST APIを使用して、Oracle Cloud Infrastructureにアクセスできます。 コンソールおよびAPIの手順は、このガイドのトピックに含まれています。 使用可能なSDKのリストは、「ソフトウェア開発キットとコマンドライン・インタフェース」を参照してください。

コンソールにアクセスするには、「サポートされているブラウザ」を使用する必要があります。 このページの上部にあるコンソール・リンクを使用して、サインイン・ページにアクセスできます。 クラウド・テナント、ユーザー名、およびパスワードを入力するよう求められます。

APIの使用に関する一般的な情報は、REST APIを参照してください。

ストリーミングの使用

ストリーミングを開始するには、次のトピックを参照してください:

認証と認可

Oracle Cloud Infrastructureの各サービスは、すべてのインタフェース(コンソール、SDKまたはCLI、およびREST API)の認証および認可のためにIAMと統合されています。

組織の管理者は、どのユーザーがどのサービス、どのリソースおよびアクセスのタイプにアクセスできるかを制御するグループ、コンパートメントおよびポリシーを設定する必要があります。 たとえば、ポリシーは、新しいユーザーの作成、クラウド・ネットワークの作成と管理、インスタンスの起動、バケットの作成、オブジェクトのダウンロードなどを実行できるユーザーを制御します。詳細は、「ポリシーの開始」を参照してください。 異なる各サービスに対するポリシーの記述の詳細は、「ポリシー・リファレンス」を参照してください。

会社が所有するOracle Cloud Infrastructureリソースを使用する必要がある通常のユーザー(管理者ではない)の場合は、管理者に連絡してユーザーIDを設定してください。 管理者は、使用する必要があるコンパートメントを確認できます。

ストリーミング・ユーザーを認可するために使用される共通ポリシーについては、「共通ポリシー」を参照してください。

ストリーミング・サービスに対するユーザー権限の付与の詳細は、IAMポリシー参照の「ストリーミング・サービスの詳細」を参照してください。

リソースのタギング

リソースにタグを適用して、ビジネス・ニーズに合わせてタグを整理するのに役立てることができます。 リソースを作成するときにタグを適用することも、後でそのタグを使用してリソースを更新することもできます。 タグの適用に関する一般的な情報は、「リソース・タグ」を参照してください。

 

最終編集: 7/22/2019 12:04 PM