ヘッダーをスキップ
Oracle® Database Heterogeneous Connectivityユーザーズ・ガイド
12cリリース1 (12.1)
E52376-02
  目次へ移動
目次
索引へ移動
索引

前
次へ
 

クラスとインスタンス

異機種間サービスを使用すると、1つのOracleデータベースから複数のOracle以外のシステムにアクセスできます。これを図2-2に示します。ここでは、Oracle以外の2つのシステムにアクセスしています。

図2-2 Oracle以外の複数インスタンスへのアクセス



両方のエージェントにより構成情報がアップロードされ、Oracle Databaseに異機種間サービスのデータ・ディクショナリ情報の一部として格納されます。

異機種間サービスのデータ・ディクショナリに、インスタンスごとの別個の定義を格納すると、データ・ディクショナリ情報を1つの粒度で格納できますが、それにより冗長なデータ・ディクショナリ情報が必要以上に大量になる可能性があります。この問題を回避するために、Oracleでは異機種間サービスのデータ・ディクショナリはクラスおよびインスタンスという2つの粒度で編成されます。

クラスは、Oracle以外の特定のシステム・タイプに関係します。たとえば、Oracle DatabaseでSybaseデータベース・システムのクラスにアクセスできます。インスタンスでは、クラス内での特殊性が定義されます。たとえば、Sybaseデータベース・システム内の複数の異なるインスタンスにアクセスできます。各クラスの定義(粒度1)は、そのクラスの全インスタンス(粒度2)により共有されます。さらに、インスタンス情報はクラス情報より優先され、クラス情報はサーバー指定のデフォルトより優先されます。

たとえば、Oracle DatabaseがSybaseの3つのインスタンスおよびIngres IIの2つのインスタンスにアクセスするとします。SybaseとIngres IIにはそれぞれ独自のコードがあり、Oracle Databaseからアクセスするには別個のクラス定義が必要です。そのため、異機種間サービスのデータ・ディクショナリには、Sybase用とIngres II用に1つずつ合計2つのクラス定義と、Oracle Databaseがアクセスするインスタンスごとに1つずつ、合計5つのインスタンス定義が含まれます。

インスタンス・レベルの機能とデータ・ディクショナリ情報はセッション固有であり、Oracle Databaseの異機種間サービスのデータ・ディクショナリには格納されないことに注意してください。ただし、インスタンス・レベルの初期化パラメータはデータベースに格納できます。