Autonomous Database用のデータベース・サービス名
Autonomous Databaseには、様々なパフォーマンスおよび同時実行性特性を持つ事前定義済データベース・サービスが付属しています。データベースに接続するアプリケーションまたはユーザーごとに、これらのサービスのいずれかを選択する必要があります。
次の表に、データベース・サービスを比較します。この表は、2 OCPU以上、または4 ECPU以上のデータベースに適用されます。手動パラレル化を使用しないかぎり、OCPUが2個未満またはECPUが4個未満のデータベースでは、パラレル化を使用できません(後述)。
サービス名称 | 並列度 脚注1 | リソース共有 脚注2 | 同時実行文 脚注3 | |
---|---|---|---|---|
コンピュート自動スケーリングなし | コンピュート自動スケーリングの使用 | |||
TPURGENT 脚注5 |
手動設定 脚注4 | 12 |
sessionsパラメータによってバインドされます。 OCPUモデル: セッション・パラメータは、ベースOCPU数の300倍に設定されます。 ECPUモデル: セッション・パラメータは、基本ECPU数の75倍に設定されます。 |
自動スケーリングなしと同じ値 |
TP 脚注5 |
並列処理なし | 8 |
sessionsパラメータによってバインドされます。 OCPUモデル: セッション・パラメータは、ベースOCPU数の300倍に設定されます。 ECPUモデル: セッション・パラメータは、基本ECPU数の75倍に設定されます。 |
自動スケーリングなしと同じ値 |
HIGH |
有効 OCPUモデル: 並列度は、ベースOCPUの数と同じになります ECPUモデル: 並列度は、最も近い整数値に切り捨てられたベースECPUの数の半分になります。 |
4 | 3 | 9 |
MEDIUM
|
有効 OCPUモデル: 並列度は、2 OCPUで2、3 OCPUで3、3 OCPUで4になります。 ECPUモデル: 並列度は、4から7のECPUを持つ最も近い整数値に切り捨てられたベースECPUの数の半分になります。8 ECPU以上の場合は4になります。 |
2 |
OCPUモデル: 1.25×ベースOCPU数 ECPUモデル: 0.25125× ベースECPU数 10進数の結果は切り捨てられます。 |
OCPUモデル: 3.75×ベースOCPU数 ECPUモデル: 0.75375× ベースECPU数 10進数の結果は切り捨てられます。 |
LOW |
並列処理なし | 1 |
sessionsパラメータによってバインドされます。 OCPUモデル: セッション・パラメータは、ベースOCPU数の300倍に設定されます。 ECPUモデル: セッション・パラメータは、基本ECPU数の75倍に設定されます。 |
自動スケーリングなしの値と同じです。 |
脚注1
HIGH
およびMEDIUM
サービスでは、パラレル問合せ、DDLおよびDMLがデフォルトで有効になっています。
Autonomous DatabaseをOracle Database 19cとともに使用している場合、パラレルDMLでは、同じ表に再度アクセスする前にトランザクションをコミットまたはロールバックする必要があります。トランザクションをコミットまたはロールバックせずに同じ表にアクセスしようとすると、ORA-12839
エラーが発生します。この制限はOracle Database 23aiで解除されたため、コミットまたはロールバックなしで同じセッションを使用して同じ表に再度アクセスできます。
必要に応じて、次を実行してセッションでパラレルDMLを無効にできます。
alter session disable parallel dml;
ログオン・トリガーを作成して、すべてのセッションに対してこの文を実行することもできます。パラレルDMLを無効にすると、大きなDML文のパフォーマンスが影響を受ける場合があります。
単一の表に対する問合せのような単純な問合せでは、これらの並列度の値が2倍になる場合があります。
データ・ウェアハウス・ワークロード・タイプのAutonomous Databaseインスタンスでは、SQL文の並列性ヒントはデフォルトで無視されます。SQL文の並列性ヒントは、トランザクション処理、JSONまたはAPEXワークロード・タイプのAutonomous Databaseインスタンスで適用されます。データ・ウェアハウス・ワークロードでAutonomous Databaseインスタンスのヒントを使用して並列性を制御する場合は、次のコマンドを使用してヒントを有効にできます。
alter session set optimizer_ignore_parallel_hints=false;
詳細は、次を参照してください:
-
Autonomous DatabaseをOracle Database 23aiとともに使用している場合は、パラレルDML操作について。
-
Autonomous DatabaseをOracle Database 19cとともに使用している場合は、パラレルDMLのトランザクション制限。
脚注2
各サービスに割り当てられたCPUシェアは、データベース内のCPU使用率が100%に達したときに、それらのサービスを使用するセッションが取得するCPUおよびIOの量を決定します。その場合、各サービスは、割り当てられたCPU共有に比例したCPUおよびIOリソースを取得します。これらの共有は、ワークロードに応じて調整するために必要に応じて変更できます。自動オプティマイザ統計収集など、Autonomous Databaseで実行される自動タスクは、リソース共有1で実行されます。詳細は、Autonomous DatabaseでのCPU/IO共有の管理に関する項を参照してください。
脚注3
この表での同時実行性は、SQL文を同時に実行しているアクティブなセッションの数を意味します。パラレル化を使用しないセッションの数(たとえば、LOW
サービスのセッション)は、sessions
データベース・パラメータによってバインドされます。このパラメータは、そのセッションが使用しているサービスとは関係なく、データベースに保持できるセッション数を決定します。その制限に達すると、新しいセッションはデータベースに接続できなくなります。たとえば、データベースのsessions
パラメータが300に設定されている場合、LOW
およびTP
を使用して異なる数のセッションを持つことができ、合計は300に制限されます。
HIGH
およびMEDIUM
サービスでは、これらのサービスのいずれかのみを使用していると仮定して、この表に示されているとおりに多数の同時SQL文を実行できます。これらのサービスを使用してさらに多くのSQL文を発行できますが、後続の文は、これらの数に達するとキューに入れられます。実行中の文が終了すると、キューに入っているセッションがキューから選択されます。複数のサービスで並列度を同時に使用する場合、または並列度ヒントを使用してSQL文の並列度を設定する場合、取得する同時実行性は、この表に示す文書化された数値とは異なる場合があります。
データベースの同時実行性レベルを表示するには、次のコマンドを実行します。
SELECT * FROM CS_RESOURCE_MANAGER.LIST_CURRENT_RULES();
通貨レベルは、Database Actionsの「Set Resource Management Rules」カードでも確認できます。詳細は、Autonomous DatabaseでのCPU/IO共有の管理に関する項を参照してください。
脚注4
手動並列度は、表および索引に並列度を設定することで、問合せ、DDLおよびDML文の並列度を制御できる並列度のタイプです。詳細は、「手動での並列度の指定」を参照してください。
脚注5
TP
およびTPURGENT
サービスは、データ・ウェアハウスのワークロードには使用できません。TPURGENT
でのみ使用可能な手動並列化を必要とするワークロードがある場合は、Oracle Cloud Supportにサービス・リクエストを提出して、Autonomous DatabaseインスタンスでTP
およびTPURGENT
サービスを有効にするようにリクエストします。
トピック
- データベース・サービスの接続記述の検索場所
使用可能なデータベース・サービスはデータベース接続文字列の一部であり、Oracle Cloud Infrastructure Consoleからサービスを表示したり、ダウンロード可能なウォレット・ファイルのtnsnames.ora
にデータベース・サービス名を表示できます。 - 接続、アプリケーションまたはツールに対してどのデータベース・サービスを選択する必要がありますか。
接続、アプリケーションまたはツールに選択するサービスは、ワークロードの特性によって異なります。 - Autonomous Data Warehouseのデータベース・サービス名
データ・ウェアハウス・ワークロード・タイプを使用してAutonomous Databaseインスタンスに接続するための使用可能なサービス名について説明します。 - Autonomous Transaction ProcessingおよびAutonomous JSON Databaseのデータベース・サービス名
トランザクション処理、JSONまたはAPEXワークロード・タイプを使用してAutonomous Databaseインスタンスに接続するための使用可能なサービス名について説明します。
Database Servicesの接続記述の場所
使用可能なデータベース・サービスはデータベース接続文字列の一部であり、Oracle Cloud Infrastructure Consoleからサービスを表示したり、ダウンロード可能なウォレット・ファイルのtnsnames.ora
にデータベース・サービス名を表示できます。
Oracle Cloud Infrastructure Consoleで接続文字列を表示するステップは、Autonomous DatabaseインスタンスのTNS名および接続文字列の表示を参照してください。
詳細は、クライアント資格証明(ウォレット)のダウンロードを参照してください。
たとえば、トランザクション処理ワークロード・タイプがsalesであるAutonomous Databaseインスタンスの場合、TNS別名はsales_tpurgent
、sales_tp
、sales_high
、sales_medium
およびsales_low
になります。
接続、アプリケーションまたはツールにどのDatabase Serviceを選択すればよいですか。
接続、アプリケーションまたはツールに選択するサービスは、ワークロードの特性によって異なります。
次の一般的なガイドラインは、choose.aデータベース・サービスの使用に役立ちます。
-
TP
、TPURGENT
またはLOW
:TP
またはLOW
サービスを使用して、実行時間の短い問合せおよびトランザクションを実行することが予想されるOLTPアプリケーションまたはツールを実行します。CPUとIOの優先順位が異なる必要がある異なるタイプのユーザーがいる場合は、優先順位に応じてTP
、TPURGENT
およびLOW
を使用し、要件に基づいてこれらのサービスのCPU共有を調整します。 -
MEDIUM
:MEDIUM
サービスは、大規模なデータ・セットをスキャンする長時間実行問合せ、バッチ・データ・ロード・プロセス、アドホック操作問合せなどの分析ワークロードに使用します。このサービスの文書化された並列度および同時実行性レベルがニーズに合わない場合は、並列度および同時実行性がワークロードに合わせて調整されるように、その同時実行性レベルを設定できます。MEDIUM
サービスを使用して、分析ワークロードのデータ・スキャン、問合せおよびDMLパフォーマンスを測定する単一ユーザー・ベンチマークを実行し、その同時実行性を1に設定して、すべてのSQL文で可能なかぎり最大並列度を使用できるようにします。同時実行性レベルの変更の詳細は、「MEDIUMサービス同時実行性制限(ECPUコンピュート・モデル)の変更」を参照してください。
-
HIGH
:HIGH
サービスは、少数のユーザーのみが同時にアクセスするレポート・データベースなど、低同時実行性の分析ワークロードに使用します。
同じセッションで別のサービスに切り替えて、そのサービスでSQL文を実行する必要がある場合は、CS_SESSION
パッケージを使用して実行できます。詳細は、CS_SESSIONパッケージを参照してください。
Autonomous Data Warehouseのデータベース・サービス名
データ・ウェアハウス・ワークロード・タイプでAutonomous Databaseインスタンスに接続するために使用可能なサービス名について説明します。
データ・ウェアハウス・ワークロード・タイプのAutonomous Databaseインスタンスへの接続のサービス名の形式は次のとおりです。
-
databasename_high
-
databasename_medium
-
databasename_low
これらのサービスは、LOW
、MEDIUM
およびHIGH
コンシューマ・グループにマップされます。
たとえば、データ・ウェアハウス・ワークロード・タイプでAutonomous Databaseを作成し、データベース名としてDB2024
を指定する場合、サービス名は次のとおりです:
-
db2024_high
-
db2024_medium
-
db2024_low
db2024_low
サービスを使用して接続する場合、接続ではLOW
コンシューマ・グループが使用されます。
これらのコンシューマ・グループの基本特性は次のとおりです。
-
HIGH: 最高のリソース、最低の同時実行性。問合せはパラレルで実行されます。
-
MEDIUM: リソースの使用は比較的低く、同時実行性は比較的高い。問合せはパラレルで実行されます。
事前定義済サービスのいずれかを選択すると、ほとんどのアプリケーションで適切に機能する同時実行性の値が提供されます。デフォルト・サービスのいずれかを選択してもアプリケーションのパフォーマンス・ニーズを満たさない場合は、MEDIUMサービスを使用して同時実行性制限を変更できます。たとえば、シングルユーザー・ベンチマークを実行する場合、最大並列度(DOP)を取得するために、MEDIUMサービスの同時実行性制限を1に設定できます。
コンピュート・モデル(ECPUまたはOCPU)に応じて、詳細は次を参照してください。
-
LOW: 最低のリソース、最も高い同時実行性。問合せは順次実行されます。
あるサービスを使用してデータベースに接続した後、単に接続のコンシューマ・グループを変更することで、その接続を別のサービスへの手動で切り替えようとしないでください。サービスを使用して接続する場合、Autonomous Databaseは、コンシューマ・グループを設定するだけでなく、接続を構成するためにより多くのアクションを実行します。プロシージャ
CS_SESSION
.SWITCH_SERVICE
を使用して、別のサービスに切り替えることができます。
詳細は、SWITCH_SERVICEプロシージャを参照してください。
Autonomous Transaction ProcessingおよびAutonomous JSON Databaseのデータベース・サービス名
トランザクション処理、JSONまたはAPEXワークロード・タイプを使用してAutonomous Databaseインスタンスに接続するために使用可能なサービス名について説明します。
トランザクション処理、JSONまたはAPEXワークロード・タイプのいずれかを含むAutonomous Databaseインスタンスへの接続に使用できるサービス名の形式は次のとおりです。
-
databasename_tpurgent
-
databasename_tp
-
databasename_high
-
databasename_medium
-
databasename_low
これらのサービスは、TPURGENT
、TP
、HIGH
、MEDIUM
およびLOW
のコンシューマ・グループにマップされます。
たとえば、トランザクション処理のワークロード・タイプでAutonomous Databaseを作成し、データベース名としてDB2024
を指定する場合、接続サービス名は次のとおりです:
-
db2024_tpurgent
-
db2024_tp
-
db2024_high
-
db2024_medium
-
db2024_low
db2024_tp
サービスを使用して接続する場合、接続ではTP
コンシューマ・グループが使用されます。
これらのコンシューマ・グループの基本特性は次のとおりです。
-
TPURGENT: 時間クリティカル・トランザクション処理操作用の優先度が最も高いアプリケーション接続サービス。この接続サービスでは、手動の並列処理をサポートします。
-
TP: トランザクション処理操作のための、通常のアプリケーション接続サービス。この接続サービスは、並列プロセスによる実行はできません。
-
HIGH: レポートおよびバッチ操作のための、優先度高いアプリケーション接続サービス。すべての操作は並行して実行され、キューイングの対象となります。
-
MEDIUM: レポート作成およびバッチ操作のための、通常のアプリケーション接続サービス。すべての操作は並行して実行され、キューイングの対象となります。
事前定義済サービスのいずれかを選択すると、ほとんどのアプリケーションで適切に機能する同時実行性の値が提供されます。デフォルト・サービスのいずれかを選択してもアプリケーションのパフォーマンス・ニーズを満たさない場合は、MEDIUMサービスを使用して同時実行性制限を変更できます。たとえば、シングルユーザー・ベンチマークを実行する場合、最大並列度(DOP)を取得するために、MEDIUMサービスの同時実行性制限を1に設定できます。
コンピュート・モデル(ECPUまたはOCPU)に応じて、詳細は次を参照してください。
-
LOW: レポート作成またはバッチ処理操作用の優先度が最も低いアプリケーション接続サービス。この接続サービスは、並列プロセスによる実行はできません。
あるサービスを使用してデータベースに接続した後、単に接続のコンシューマ・グループを変更することで、その接続を別のサービスへの手動で切り替えようとしないでください。サービスを使用して接続する場合、Autonomous Databaseは、コンシューマ・グループを設定するだけでなく、接続を構成するためにより多くのアクションを実行します。プロシージャ
CS_SESSION
.SWITCH_SERVICE
を使用して、別のサービスに切り替えることができます。
詳細は、SWITCH_SERVICEプロシージャを参照してください。