Autonomous AI Databaseのデータベース・サービス名

自律型AIデータベースには、異なるパフォーマンスと同時実行性の特性を持つ事前定義済データベース・サービスが付属しています。データベースに接続するアプリケーションまたはユーザーごとに、これらのサービスのいずれかを選択する必要があります。

次の表に、データベース・サービスを比較します。この表は、2 OCPU以上、または4 ECPU以上のデータベースに適用されます。手動パラレル化を使用しないかぎり、OCPUが2個未満またはECPUが4個未満のデータベースでは、パラレル化を使用できません(後述)。

サービス名称 並列度脚注1 リソース共有脚注2 自動スケーリングの計算が無効になっている同時文脚注3 自動スケーリングの計算が有効な同時文脚注3
TPURGENT 脚注4を手動で設定します 12

sessionsパラメータによってバインドされます。

OCPUモデル: sessionパラメータは、ベースOCPU数の300倍に設定されます。

ECPUモデル: sessionsパラメータは、ベースECPUの数の75倍に設定されます。

自動スケーリングなしと同じ値
TP 並列処理なし 8

sessionsパラメータによってバインドされます。

OCPUモデル: sessionパラメータは、ベースOCPU数の300倍に設定されます。

ECPUモデル: sessionsパラメータは、ベース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数の半分になります。ECPUが8個以上ある場合は4個になります。

2

OCPUモデル: 1.25 xベースOCPU数

ECPUモデル: 0.25125 xベースECPU数

10進数の結果は切り捨てられます。

OCPUモデル: 3.75 xベースOCPU数

ECPUモデル: 0.75375 xベースECPU数

10進数の結果は切り捨てられます。

LOW 並列処理なし 1

sessionsパラメータによってバインドされます。

OCPUモデル: sessionパラメータは、ベースOCPU数の300倍に設定されます。

ECPUモデル: sessionsパラメータは、ベースECPUの数の75倍に設定されます。

自動スケーリングなしの値と同じです。

脚注1

HIGHおよびMEDIUMサービスでは、パラレル問合せ、DDLおよびDMLがデフォルトで有効になっています。

Oracle Database 19cでAutonomous AI Databaseを使用している場合、パラレルDMLでは、同じ表に再度アクセスする前に、トランザクションをコミットまたはロールバックする必要があります。トランザクションをコミットまたはロールバックせずに同じ表にアクセスしようとすると、ORA-12838またはORA-12839エラーが発生します。この制限はOracle AI Database 26aiで解除されたため、コミットまたはロールバックなしで同じセッションを使用して再度同じ表にアクセスできます。

必要に応じて、次を実行してセッションでパラレルDMLを無効にできます。

alter session disable parallel dml;

ログオン・トリガーを作成して、すべてのセッションに対してこの文を実行することもできます。パラレルDMLを無効にすると、大きなDML文のパフォーマンスが影響を受ける場合があります。

単一の表に対する問合せのような単純な問合せでは、これらの並列度の値が2倍になる場合があります。

SQL文の並列性ヒントは、レイクハウス・ワークロード・タイプのAutonomous AI Databaseインスタンスではデフォルトで無視されます。SQL文の並列性ヒントは、トランザクション処理、JSONまたはAPEXワークロード・タイプのAutonomous AI Databaseインスタンスで適用されます。レイクハウス・ワークロードでAutonomous AI Databaseインスタンスのヒントを使用して並列性を制御する場合は、次のコマンドを使用してヒントを有効にできます。

alter session set optimizer_ignore_parallel_hints=false;

詳細は、次を参照してください:

脚注2

各サービスに割り当てられたCPU共有によって、データベース内のCPU使用率が100%に達したときに、それらのサービスを使用するセッションのCPUおよびIOの量が決まります。その場合、各サービスは、割り当てられたCPUシェアに比例してCPUおよびIOリソースを取得します。これらの共有は、必要に応じて変更してワークロードに合わせて調整できます。自動オプティマイザ統計収集など、Autonomous AI Databaseで実行される自動タスクは、リソース共有1で実行されます。詳細は、Autonomous AI DatabaseでのCPU/IO共有の管理を参照してください。

脚注3

この表の同時実行性は、SQL文を同時に実行しているアクティブ・セッションの数を意味します。パラレル化を使用しないセッションの数(たとえば、LOWサービスのセッション)は、sessionsデータベース・パラメータによって制限されます。このパラメータは、それらのセッションが使用しているサービスとは関係なく、データベース内に保持できるセッション数を決定します。その制限に達すると、新しいセッションはデータベースに接続できなくなります。たとえば、データベースのsessionsパラメータが300に設定されている場合は、LOWおよびTPを使用して、合計が300に制限された異なる数のセッションを持つことができます。

HIGHおよびMEDIUMサービスでは、これらのサービスの1つしか使用していないと想定して、この表に示されているとおりに多数の同時SQL文を実行できます。これらのサービスを使用してさらにSQL文を発行することもできますが、これらの数に達すると後続の文はキューに入れられます。実行中の文が終了すると、キューに入れられたセッションがキューから取得されます。複数のサービスで並列処理を同時に使用する場合、またはSQL文の並列度を設定するために並列処理ヒントを使用する場合、取得する同時実行性は、この表に示されている文書化された数とは異なる場合があります。

データベースの同時実行性レベルを表示するには、次のコマンドを実行します。

SELECT * FROM CS_RESOURCE_MANAGER.LIST_CURRENT_RULES();

通貨レベルは、データベース・アクションの「Set Resource Management Rules」カードでも確認できます。詳細は、Autonomous AI DatabaseでのCPU/IO共有の管理を参照してください。

脚注4

手動パラレル化は、表および索引に並列度を設定することで、問合せ、DDLおよびDML文のパラレル化を制御できるパラレル化のタイプです。詳細は、「手動での並列度の指定」を参照してください。

脚注5

TPまたはTPURGENTサービスを使用し、Autonomous AI Lakehouseのtnsnames.oraファイルにそれが表示されない場合は、データベース・ウォレットを再ダウンロードするか、手動で更新する必要があります。

Database Servicesの接続記述の場所

使用可能なデータベース・サービスは、データベース接続文字列の一部であり、Oracle Cloud Infrastructure Consoleからサービスを表示したり、ダウンロードできるウォレット・ファイルのtnsnames.oraにデータベース・サービス名を表示できます。

Oracle Cloud Infrastructure Consoleで接続文字列を表示するステップは、Autonomous AIデータベース・インスタンスのTNS名および接続文字列の表示を参照してください。

詳細は、クライアント資格証明(ウォレット)のダウンロードを参照してください。

たとえば、salesという名前のAutonomous AI Databaseインスタンスの場合、TNS別名はsales_tpurgentsales_tpsales_highsales_mediumおよびsales_lowです。

接続、アプリケーションまたはツールにどのDatabase Serviceを選択すればよいですか。

接続、アプリケーションまたはツールに選択するサービスは、ワークロードの特性によって異なります。

次の一般的なガイドラインは、使用するデータベース・サービスの選択に役立ちます。

  • TPTPURGENTまたはLOW: TPまたはLOWサービスを使用して、実行時間の短い問合せおよびトランザクションを実行するOLTPアプリケーションまたはツールを実行します。CPUおよびIOの優先順位が異なるユーザー・タイプがある場合は、優先順位に応じてTPTPURGENTおよびLOWを使用し、要件に基づいてこれらのサービスのCPUシェアを調整します。

  • MEDIUM: 大規模なデータ・セットのスキャン、バッチ・データ・ロード・プロセス、アドホック操作問合せなど、長時間実行される問合せなどの分析ワークロードにMEDIUMサービスを使用します。このサービスの文書化された並列度と並行性レベルがニーズに合わない場合は、ワークロードに応じて並列度と並行性が調整されるように並行性レベルを設定できます。

    MEDIUMサービスを使用して、分析ワークロードのデータ・スキャン、問合せおよびDMLパフォーマンスを測定するシングルユーザー・ベンチマークを実行し、同時実行レベルを1に設定して、すべてのSQL文で可能な最大並列度を使用できるようにします。

    同時実行性レベルの変更の詳細は、「MEDIUMサービスの同時実行性制限の変更(ECPUコンピュート・モデル)」を参照してください。

  • HIGH: 少数のユーザーのみが同時にアクセスするレポート・データベースなど、低同時実行性の分析ワークロードにHIGHサービスを使用します。

同じセッション内の別のサービスに切り替えて、そのサービスでSQL文を実行する必要がある場合は、CS_SESSIONパッケージを使用して実行できます。詳細は、「CS_SESSIONパッケージ」を参照してください。

Autonomous AI Databaseのデータベース・サービス名

Autonomous AI Databaseインスタンスに接続するために使用可能なサービス名について説明します。

Autonomous AI Databaseインスタンスへの接続に使用できるサービス名の形式は次のとおりです:

  • databasename緊急

  • databasename_tp

  • databasename_high

  • databasename_medium

  • databasename_low

これらのサービスは、TPURGENTTPHIGHMEDIUMおよびLOWのコンシューマ・グループにマップされます。

たとえば、トランザクション処理のワークロード・タイプを使用してAutonomous AI Databaseを作成し、データベース名をDB2025として指定した場合、接続サービス名は次のとおりです:

  • db2025_tpurgent

  • db2025_tp

  • db2025_high

  • db2025_medium

  • db2025_low

db2025_tpサービスを使用して接続する場合、接続ではTPコンシューマ・グループが使用されます。

これらのコンシューマ・グループの基本特性は、次のとおりです。

  • TPURGENT: 時間クリティカルなトランザクション処理操作のための、優先度が最も高いアプリケーション接続サービス。この接続サービスでは、手動の並列処理をサポートします。

  • TP: トランザクション処理操作のための、通常のアプリケーション接続サービス。この接続サービスでは、並列化による実行はできません。

  • HIGH: レポートおよびバッチ操作のための、優先度高いアプリケーション接続サービス。すべての操作は並行して実行され、キューイングの対象となります。

  • MEDIUM: レポート作成およびバッチ操作のための、通常のアプリケーション接続サービス。すべての操作は並行して実行され、キューイングの対象となります。

    事前定義済サービスのいずれかを選択すると、ほとんどのアプリケーションで適切に機能する同時実行性の値が提供されます。デフォルト・サービスのいずれかを選択してもアプリケーションのパフォーマンス・ニーズを満たさない場合は、MEDIUMサービスを使用して同時実行性制限を変更できます。たとえば、シングルユーザー・ベンチマークを実行する場合、最大並列度(DOP)を取得するために、MEDIUMサービスの同時実行性制限を1に設定できます。

    コンピュート・モデル(ECPUまたはOCPU)に応じて、詳細は次を参照してください。

  • LOW: レポート処理またはバッチ処理操作のための、優先度が低いアプリケーション接続サービス。この接続サービスでは、並列化による実行はできません。

ノート

ノート:あるサービスを使用してデータベースに接続した後、単に接続のコンシューマ・グループを変更して、その接続を別のサービスに切り替えることはしないでください。サービスを使用して接続する場合、Autonomous AI Databaseは、コンシューマ・グループを設定するだけでなく、接続を構成するためにより多くのアクションを実行します。プロシージャCS_SESSION.SWITCH_SERVICEを使用して、別のサービスに切り替えることができます。詳細は、SWITCH_SERVICEプロシージャを参照してください。