【Oracle Database 12c】Oracleライセンス「SE2」検証 CPUスレッド数制限、“同一サーバ内に複数のDBがある場合”はどう動くのか:データベースサポート最前線の現場から(13)(1/2 ページ)
データベース管理システムの運用でトラブルが発生したらどうするか。データベースサポートスペシャリストが現場目線の解決Tipsをお届けします。Oracle Database 12c(12.1)で採用されたライセンス形態「Standard Edition 2(以下、SE2)」の機能制限がどのように行われるのか、今回は「同一サーバ内に複数のデータベースがある場合」を検証します。
前回は、Oracle Databaseの新ライセンス体系「Standard Edition 2(SE2)」で多くのデータベース管理者が気になる、「CPUスレッド数の制限」がどう制御されているのか、その仕組みを検証しました。
今回はその続きとして、「同一サーバ内で複数のデータベースを構築している場合はどのように制御されるのか」の検証を行います。
CPUスレッド数制限は「データベース単位」で制御される
日本オラクルによるFAQ「Oracle Database Standard Edition 2で制限される「CPUスレッド」とは何ですか?」によると、スレッド数の制限は「データベース単位」で行われ、データベースごとに使用するCPUスレッドが16(Oracle Real Application Clustersの場合は8)までに制限されるとあります。
制限はデータベース単位で行われます。それならば、「あるデータベースでCPUスレッド数の制限を超えてしまったとしても、本当に他のデータベースのセッションには影響がない」のでしょうか。前回と同じ検証環境へデータベースを3つ構築して、以下の2パターンを検証してみます。
検証1 全データベースで制限内/CPUを使用する処理を行うセッションを12:12:12で実行する
3つのデータベースで、それぞれ12セッションずつCPUを使う処理を実行します。あらためて、SE2のCPUスレッド数は「16」なので、データベース単位ではResource Managerで制御されない範囲ですが、サーバ単位では合計で「24」と、制限数を超えます。この状況ではどのように動作するでしょうか(画像1〜3)。
いずれのデータベースにも「resmgr:cpu quantum」の待機イベントは発生せず、Resource Managerでのスレッド制御は行われませんでした。ちなみにこの同時点の「mpstat」からは、全てのCPU使用率がほぼ100%(99.00以上≒100%)で、CPUリソースを全て使えている状況も確認できました(画像4)。
これらのことから、「データベース単位」でCPUを使用するセッションが制限である「16」以内ならば、仮にサーバに搭載しているCPUスレッド数を超える数のセッションが同時に存在するとしても、Resource Managerでのスレッド制御は行われないことが分かりました。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 「新機能」「廃止機能」「サポート状況」から見たユーザーにとってのOracle Database 12c
Oracle Database導入を実施ならびに支援するサービスプロバイダという筆者の立場から、ユーザーにとっての新バージョンの意義を考えながら、新機能や廃止された機能などを紹介します。 - オラクルが確約した「クラウド6箇条」と「Database 12c R2」の気になるトコロ
米オラクルのラリー・エリソンCTOが、同社の年次イベントで今後のクラウド事業の行方を確約する「Oracle Cloud、6つの設計目標」を掲げました。同時に発表された基幹製品「Oracle Database 12c」の次期バージョンのポイントと共に、そこにどんな狙いがあるかを振り返ります。 - オラクルのエリソン会長、「Oracle Database」最新版や多数のクラウドイノベーションを発表
米オラクルのラリー・エリソン氏は「Oracle OpenWorld 2016」の開幕基調講演を行い、同社のクラウドコンピューティングプラットフォーム全般にわたる多くのイノベーションを披露した。 - 【Oracle Database】忘れていませんか? 「アラートログ調査」に必要な、たった3つのキホン
データベース管理システムの運用でトラブルが発生したらどうするか。データベースサポートスペシャリストが現場目線の解決Tipsをお届けします。今回は基本編として「アラートログの調査で押さえるべき3つのポイント」を解説します。【Oracle Database 12c対応版】 - Oracle運用の基本「ログ」を理解しよう
本連載では、Oracle Database運用の鍵となるトラブル対処法について紹介していきます。第1回、第2回では情報収集の要となるログについて見ていきます。ログの出力情報は10gと11gとでは大きく異なる点がありますので、それぞれについても確認しておきましょう。 - カーソル・エラーとオブジェクトの問題切り分け
Oracleデータベースの運用管理者は、突発的に直面するパフォーマンス障害にどうやって対処したらよいか。本連載は、非常に複雑なOracleのアーキテクチャに頭を悩ます管理者に向け、短時間で問題を切り分け、対処法を見つけるノウハウを紹介する。対象とするバージョンはOracle8から9iまでを基本とし、10gの情報は随時加えていく。(編集局) - IF文のネスト地獄から抜け出せるMERGE文