異機種間サービス・コンポーネント

Oracle Databaseの異機種間サービスは、トランザクション・サービスとSQLサービスから構成されます。

トランザクション・サービス

異機種間サービス・コンポーネントのトランザクション・サービス・コンポーネントは、Oracle以外のシステムとOracle Databaseのトランザクションやセッションとの統合を可能にします。

Oracleユーザー・セッションでデータベース・リンクを使用してOracle以外のシステムに初めてアクセスするときに、Oracle以外のシステムで認証済セッションを透過的に設定します。Oracleユーザー・セッションの終了時には、Oracle以外のデータベース・システムでの認証済セッションがクローズされます。

また、Oracle以外の1つ以上のシステムがOracle分散トランザクションに関連づけられます。アプリケーションがトランザクションをコミットすると、Oracleの2フェーズ・コミット・プロトコルがOracle以外のデータベース・システムにアクセスし、分散トランザクションを透過的に調整します。Oracle以外のシステムがOracleの2フェーズ・コミット・プロトコルを全面的にサポートしていない場合にも、Oracleはそのシステムとの分散トランザクションを(制限付きで)サポートできます。

SQLサービス

Structured Query Language (SQL)サービスは、すべてのSQL関連操作の処理を受け持ちます。

SQLサービスにより、次のような処理が実行されます。

  • Oracle内部のSQL関連コールの異機種間サービス・ドライバ・アプリケーション・プログラム・インタフェース(API)へのマッピング。その後、このAPIはドライバによってOracle以外のシステムのクライアントAPIにマッピングされます。

  • SQL文をOracleのSQL言語からOracle以外のシステムのSQL言語に変換します。

  • Oracleデータ・ディクショナリ表を参照する問合せを、Oracle以外のシステムのデータ・ディクショナリから必要な情報を抽出する問合せに変換します。

  • データをOracle以外のシステムのデータ型とOracleのデータ型の間で変換します。

  • 必要なデータを取得するために複数の問合せを発行し、必要な結果を得るために後処理を実行し、Oracle以外のシステムに含まれていない機能を補います。