アプリ プロファイルの概要
アプリケーション プロファイル(アプリ プロファイル)には、アプリケーションから受信したリクエストを処理する方法を Bigtable インスタンスに指示するための設定が保存されます。アプリケーションが Bigtable インスタンスに接続すると、デフォルトのアプリ プロファイルまたはユーザーが指定したアプリ プロファイルを使用します。Bigtable は、この接続でアプリケーションが送信するリクエストに対して、このアプリ プロファイルを使用します。
アプリ プロファイルは、使用するコンピューティングのタイプに応じて、標準アプリ プロファイルまたは Data Boost アプリ プロファイルのいずれかです。標準アプリ プロファイルでは、コンピューティングにプロビジョニングされたクラスタノードを使用し、通常はアプリケーションのサービス提供トラフィックに使用されます。Data Boost アプリ プロファイルは、高スループットの読み取りジョブとクエリ用に設計されたサーバーレス コンピューティングを使用します。Data Boost(プレビュー)の詳細については、Data Boost の概要をご覧ください。
このページでは、アプリ プロファイルの概要と、アプリ プロファイルの使用に関するガイダンスについて説明します。
アプリケーションでアプリ プロファイルを使用するためのコードサンプルについては、カスタムアプリ プロファイルに接続するをご覧ください。
ワークロードごとに個別のアプリ プロファイルを使用する
Bigtable インスタンスを作成すると、デフォルトのアプリ プロファイルが自動的に作成されます。このプロファイルの設定は、インスタンス内のクラスタの数によって異なります。アプリ プロファイルのメリットを最大限に活用するには、追加のアプリ プロファイルを作成して使用し、アプリケーションまたはワークロードごとに異なるアプリ プロファイルを使用する必要があります。
アプリ プロファイルは複数のクラスタを持つインスタンスでは特に重要ですが、インスタンスにクラスタが 1 つしかない場合でも、実行するアプリケーションごと、または単一のアプリケーション内の異なるコンポーネントごとに、異なるアプリ プロファイルを使用する必要があります。
以降のセクションでは、複数のアプリ プロファイルを作成して使用するメリットについて説明します。
ワークロードの分離
個別のアプリ プロファイルを使用すると、目的に応じて異なる Bigtable コンピューティング ポリシーとルーティング ポリシーを使用できます。たとえば、バッチ読み取りジョブ(ワークロード A)が、アプリケーションの安定した定常的な読み取りと書き込み(ワークロード B)を処理するクラスタにおいて、CPU 使用率を増加させるのを防ぎたいとします。その場合は、次のいずれかの方法を使用できます。
ワークロード B の標準アプリ プロファイルを作成し、1 つのクラスタを除くクラスタ グループにルーティングします。次に、ワークロード A の個別の標準アプリ プロファイルを作成し、ワークロード B がリクエストを送信しないクラスタへの単一クラスタ ルーティングを指定します。
コンピューティングにクラスタノードを使用し、ワークロード B の任意のクラスタにルーティングするように構成された標準のアプリ プロファイルを使用し、ワークロード A を単一のクラスタで使用する Data Boost アプリ プロファイルを作成します。Data Boost はサーバーレス コンピューティングを使用しますが、アプリケーション トラフィックはコンピューティングにクラスタノードを使用します。
同じデータに接続する他のアプリケーションに影響を与えることなく、1 つのアプリケーションまたは関数の設定を変更できます。
オブザーバビリティ
ワークロードごとに個別のアプリ プロファイルを使用すると、アプリ プロファイルごとに指標を使用できるため、アプリケーションの Bigtable 使用状況をより詳細に把握できます。このオブザーバビリティの向上は、次のように役立てることができます。
アプリ プロファイル レベルでレイテンシを確認することで、全体的なパフォーマンスに影響しているアプリケーションを特定のに役立ちます。
標準アプリ プロファイルを使用してワークロードのアプリ プロファイルあたりの CPU 使用率をモニタリングすると、CPU 使用率の問題をトラブルシューティングしたり、クラスタのサイズや場所を決定したりするのに役立ち、使用量を最適化し、コストを削減することができます。
アプリ プロファイル レベルでの指標により、サポートを依頼する必要がある場合に問題の原因となっているワークロードを正確に共有できます。
Bigtable Google Cloud コンソールを使用して、アプリ プロファイルごとに Bigtable 指標のグラフを個別表示できます。プロファイル レベルで使用できる指標については、Bigtable リソースのモニタリング グラフの表をご覧ください。
標準アプリ プロファイル
標準アプリ プロファイルは、クラスタのノードを使用して、インスタンスのクラスタにトラフィックを転送します。
ルーティング
標準アプリ プロファイルでは、Bigtable が使用するルーティング ポリシーを定義し、単一行のトランザクションを許可するかどうかを制御します。標準のアプリ プロファイルでは、アプリ プロファイルを使用して送信されるリクエストの優先度のレベルも指定できます。
リクエストの優先度
Bigtable が標準アプリ プロファイルのデータ リクエストに付与する優先度を指定できます。使用可能な優先度のレベルについては、リクエストの優先度を構成するをご覧ください。
Data Boost アプリ プロファイル
Data Boost アプリ プロファイルを使用すると、Data Boost のサーバーレス コンピューティングを使用して、高スループットのジョブとクエリをアプリのサービス提供トラフィックから分離できます。Data Boost アプリ プロファイルではリクエストの優先度を構成できません。使用できるルーティング ポリシーは単一クラスタのみです。詳細については、Data Boost の概要をご覧ください。
アプリ プロファイルの変更
ワークロードのルーティング ポリシーまたはリクエストの優先度を変更する必要がある場合は、ワークロードに使用されているアプリ プロファイルを更新できます。アプリ プロファイルを標準から Data Boost の分離に、または Data Boost から標準の分離に変換することもできます。標準のアプリ プロファイルを Data Boost を使用するように変換すると、アプリ プロファイルからリクエスト優先度の設定と、単一クラスタ以外のルーティング ポリシーが削除されます。
アプリ プロファイルの変更は直ちに有効になります。
ただし、多くの場合、使用中のアプリ プロファイルを変更するのではなく、新しいユースケースの場合と同様に、別の構成で新しいアプリ プロファイルを作成してからアプリケーション コードを変更して、新しいアプリ プロファイルを使用する必要があります。ワークロードに変更を加えるための新しいアプリ プロファイルを作成すると、アプリ プロファイルを使用するほかのワークロードのアプリ プロファイルを誤って変更することを回避できます。
アプリ プロファイルを標準から Data Boost に変更すると、アプリ プロファイルのトラフィックに使用されるコンピューティングのタイプがサーバーレスに変更され、料金も変更されます。詳細については、Data Boost の概要と Bigtable の料金をご覧ください。
同様に、アプリ プロファイルを Data Boost から標準に変更すると、アプリ プロファイルによって送信されるトラフィックがコンピューティングにクラスタノードを使用します。つまり、アプリ プロファイルが転送先とするすべてのクラスタには、CPU 使用量の要件を満たす十分なノードが必要です。詳細については、ノードをご覧ください。
アプリ プロファイルの表示、作成、更新方法については、アプリ プロファイルの作成と構成をご覧ください。
デフォルトのアプリ プロファイル
インスタンスが作成されると、Bigtable は自動的にそのインスタンスのデフォルトのアプリ プロファイルを作成します。デフォルトのアプリ プロファイルは標準のアプリ プロファイルですが、Data Boost プロファイルに変換できます。アプリケーションでアプリ プロファイルが指定されていない場合、またはインスタンスへの接続に HBase シェルを使用している場合、Bigtable はデフォルトのアプリ プロファイルの設定を使用します。
インスタンスのデフォルト アプリ プロファイルの設定は、最初に作成したときにインスタンス内に存在していたクラスタの数によって異なります。
- 1 つのクラスタでインスタンスを作成した場合、
default
アプリ プロファイルはシングル クラスタ ルーティングを使用し、単一行のトランザクションが有効になります。これにより、後でクラスタを追加しても既存のアプリケーションの動作が変わることはありません。 - 2 つ以上のクラスタでインスタンスを作成した場合、
default
アプリ プロファイルは任意のクラスタにマルチクラスタ ルーティングを使用します。単一行のトランザクションはマルチクラスタ ルーティングでは許可されません。
クラスタを追加または削除しても、デフォルトのアプリ プロファイルは変更されません。デフォルトのアプリ プロファイルの設定を変更するには、手動でデフォルトのアプリ プロファイルを更新する必要があります。ただし、ベスト プラクティスとして、デフォルトのアプリ プロファイルを変更するのではなく、新しいアプリ プロファイルを作成して使用することをおすすめします。
カスタムアプリ プロファイル
カスタムアプリ プロファイルは、ユーザーが作成して構成するアプリ プロファイルです。インスタンスには、最大 2,000 件のアプリ プロファイルを設定できます。 デフォルト以外のアプリ プロファイルはすべて、カスタムアプリ プロファイルとみなされます。