New Relic Now Start training on Intelligent Observability February 25th.
Save your seat.

Oracleデータベースアーキテクチャーは、バージョン12cのリリース以降、シングルテナントデータベースからマルチテナントデータベースに移行しました。マルチテナントデータベースには、テーブルと接続アプリケーションに関連するデータを保持するプラガブルコンテナ(PDB)が含まれます。ルートコンテナ(CDB)には、データベースの健全性とパフォーマンス関連の情報がすべて保持されます。CDBはデータベース管理者がアクセスしますが、PDBはアプリケーションチームにとって有益です。

進化するデータベースアーキテクチャーに対応して、New Relicはデータベース監視インテグレーションにも互換性を持たせるようにしました。最新の変更により、オブザーバビリティを確保するために、アプリケーションチームとデータベース(DB)管理者は必要なすべての監視メトリクスを利用できるようになります。OracleのExadata Cloud at Customer(ExaCC)のようなコンテナデータベースのリリース以来、ExaCCデータベースと連携するために、当社はホストインテグレーションに関するOracle Database監視に変更を加えました。このブログ記事では、DBランドスケープ内で行われた変更と互換性を維持し、以前のバージョンのデータベースと同じレベルの監視を提供し続けるためのオンホストインテグレーション(OHI)の機能強化について説明します。

データベースに対する変更点

コンテナデータベースには、コンテナ固有のシステムテーブルとインデックスの情報が保持されます。以前は、Oracle 12cをgv$con_sysmetricに移動してから、アプリケーションデータベース固有の情報にはgv_$sysmetricsからアクセスできました。後者には、セッション数、アクティブな並列セッション、1秒あたりの物理書き込みバイト数などの情報が保持されます。

OHIでの変更点

設定ファイルに「SYS_METRICS_SOURCE」フラグを設定することで、Oracle監視はシングルテナントデータベースとマルチテナントデータベースの両方で実行できるように再設計されました。アプリケーションチームの場合、この設定を「PDB」に設定する必要があります。これにより、インテグレーションが確実にgv$con_sysmetricに接続されます。DBアドミニストレーターは、インテグレーションがgv$sysmetricと対話できるように、この設定を「CDB」に設定できます。この設定をうまく機能させるには、ユーザーはコンテナインデックスにアクセスする必要があります。これについては次のセクションで説明します。

以前は、New Relic Oracle Databaseインテグレーションで以下のことが行われていました。

OracleからNew Relicにメトリクスが送信される方法を示す図

現在は、New Relic Oracle Databaseインテグレーションでは以下のことが行われます。

OracleからOHIおよびNew Relicへの新しい接続の仕組みを示す図

コンテナデータベースのOracle Database OHIの設定手順

  1. OHIがデータベースの接続に使用できるデータベースユーザーを設定します。ユーザーの作成時に、管理者によってユーザーのコンテナアクセス(PDBまたはCDB権限)が設定されます。
  2. このリンクの手順3で説明したインデックス/ビューに対するSELECT権限をユーザーに付与し、さらにgv$con_sysmetricにも付与します。
  3. OHIインテグレーションとoracledb-config.ymlを適切な設定でサーバーにデプロイします。「SYS_METRICS_SOURCE」が、クエリ対象のデータ(アプリケーションデータベースのパフォーマンスまたはシステム全体のパフォーマンス)に応じて設定されていることを確認してください。

適切なユーザーアクセスと設定を使用してインテグレーションがデプロイされると、NewRelicプラットフォームでデータを利用できるようになります。収集されたすべてのメトリクスが利用可能になり、次のイベントタイプで記録されます。

  • OracleDatabaseSample
  • OracleTablespaceSample

次のフェーズ

セットアップが完了すると、ユーザーはNew Relicプラットフォームにログインできるようになります。ログインすると、計装されているOracleデータベースが「すべてのエンティティ」ページの「Oracleデータベース」セクションに表示されます。これらのデータベース名をクリックすると、データベースのパフォーマンスメトリクスを示すキュレートされたビューに移動します。さらに、Data Explorerセクションでメトリクスを表示したり、New Relicクエリ言語(NRQL)を使用してクエリを実行したりすることもできます。

まとめ

当社は、お客様がフルスタックオブザーバビリティの実現に必要な計装機能を提供するために、インテグレーションの開発を継続的に行っています。データベースアーキテクチャー変更の目的は、許可されたデータのみにアクセスできるようにメトリクスを分離したまま、アプリケーションチームとデータベース管理者のそれぞれの領域に関連するメトリクスへのアクセスを提供することです。