Oracle Database 新機能ガイド 11gリリース1(11.1) E05747-03 |
|
この章では、Oracle Database 11gリリース1(11.1)のすべての新機能を説明します。この章では、次の項目について説明します。
次の各項では、Oracle Database 11gリリース1(11.1)の新しいアプリケーション開発機能について説明します。
次の各項では、Oracle Database 11gのApplication Program Interfaceの新しい機能について説明します。これらの機能は、アプリケーションのパフォーマンスとスケーラビリティを向上させ、Oracleのクライアント側スタックのデプロイを簡単にします。
この機能は、問合せの結果セットをクライアントのメモリー内にキャッシュできるようにするものです。キャッシュされた結果セット・データは、サーバー側に加えられた変更に対して透過的に同期されます。
この機能を利用したアプリケーションでは、問合せに対応するキャッシュ・ヒットがある場合、パフォーマンスが向上します。また、問合せがキャッシュを使用して処理される場合は、サーバーに問合せを送信し、結果をフェッチするラウンドトリップが回避されます。これにより、問合せの処理に本来必要なサーバーCPUの消費が減るため、サーバーのスケーラビリティも向上します。
この新機能は、クライアント・セッションのNLSとキャラクタ・セット情報を、V$SESSION_CONNECT_INFO
およびGV$SESSION_CONNECT_INFO
ビューに追加するものです。
この拡張により、DBAは、全クライアントのクライアント側セッションのキャラクタ・セット情報にアクセスできるようになります。この情報は、トラブルシューティングの際に役立ちます。
Oracle Database 11gのこのリリースでは、Pro*C/C++およびPro*COBOLで、IBM DB2の配列INSERT
および配列SELECT
構文がサポート対象に追加されました。
IBM DB2に対して配列INSERT
および配列SELECT
構文がサポートされたことは、IBM DB2インストールをOracleに移行する場合に役立ちます。
アプリケーション開発者がPro*C/C++およびPro*COBOLアプリケーションをプリコンパイルする際に、新しく文キャッシュ・オプションを使用できるようになりました。
この機能を使用すると、プリコンパイルされるプログラム内で文をキャッシュできるようになり、パフォーマンスが向上する可能性があります。再利用時における動的文の解析のオーバーヘッドをなくすことで、パフォーマンスが向上します。
この新機能では、アウトライン機能を使用して、Pro*C/C++およびPro*COBOLアプリケーションの実行計画を固定します。
アウトライン機能を使用すると、モジュールの統合時および異なる環境へのデプロイ時に、アプリケーションのパフォーマンスが影響されません。
Pro*COBOLアプリケーションのB領域の長さを、8列以上253列以下にできます。
形式がANSI
に設定されている場合、Pro*COBOLプログラムのB領域の長さは72列に制限されていました。COBOLコンパイラでは、B領域の長さは最大253列までサポートされるようになりました。これにより、プログラマは72列より長い行を柔軟に入力できます。
新しいデータを定期的に挿入する必要があるいくつかのアプリケーションでは、ループ内で単独のINSERT
文が使用されます。プリコンパイラは、コマンドライン引数による問合せを受けると、挿入される行をバッファします。これによりネットワークのラウンドトリップが低減されます。
INSERT
を暗黙的にバッファするこの手法により、パフォーマンスが、プリコンパイラの配列インタフェースを使用した場合と同程度に向上するという利点があります。
Oracle製品では、Unicodeデータ(UTF16)は常にビッグ・エンディアン方式で格納されます。LinuxおよびWindowsで採用されているのはリトル・エンディアン方式、Solarisではビッグ・エンディアン方式です。今回の機能拡張により、Pro*COBOLアプリケーションを使用するWindowsおよびLinuxプラットフォームでもリトル・エンディアン形式でUnicodeデータをフェッチできるようになりました。
リトル・エンディアン方式のプラットフォームで稼働しているPro*COBOLアプリケーションで、PIC N
変数にUTF16(UCS2)の文字列がフェッチされる場合、適切なコマンドライン・オプションを使用してプリコンパイルすることにより、プラットフォームに対応する正しいエンディアン方式がアプリケーションで使用されるようになりました。
Pro*COBOLでスクロール可能カーソルがサポートされ、順次以外の方式でデータをフェッチできるようになりました。
スクロール可能カーソルを使用すると、データベース結果セットの行に前後およびランダム方式でアクセスできます。これにより、プログラムで結果セットの任意の行をフェッチできます。
この拡張により、SQL99構文のSELECT
、INSERT
、DELETE
、UPDATE
文、およびDECLARE CURSOR
文のカーソルのボディがPro*C/C++でサポートされるようになりました。
Oracle Databaseでは、SQL99構文の大部分がサポートされています。この拡張により、Pro*C/C++でもOracle DatabaseでサポートされているSQL99構文がサポートされるようになりました。
次の各項では、Oracle Application Expressの新機能について説明します。Application Expressは、データベースに組み込まれたアプリケーション開発ツールを提供し、デフォルトでデータベースにインストールされます。この点が、Oracle Database 10g実装とは異なります。
アプリケーションおよびスキーマの新しい比較機能を使用すると、選択した2つのアプリケーションの差異を識別できます。
また、異なる2つのスキーマに含まれるオブジェクトの違いも識別できます。
「ドラッグ・アンド・ドロップ・レイアウト」ページでは、指定されたリージョン内の項目の対話形式による並替え、選択項目の属性の変更、新しい項目の作成および既存の項目の削除を実行できます。
Oracle Application Expressでは、18種類の様々なFlashグラフがサポートされています。Flashグラフは、新しいページの作成時、またはグラフ・リージョンを定義することで作成できます。
このリリースには、既存のScalable Vector Graphics(SVG)のグラフをFlashに変換できるユーティリティも含まれています。
セッションIDとしてゼロを指定することにより、アプリケーション・ユーザーがアプリケーション内のページを簡単にブックマークできるようになりました。
この機能により、すべてのパブリック・ページのリンクの一貫性が保たれ、ブックマークしやすくなります。
Oracle Application Expressでは、より緩やかに定義されたWebサービス・タイプおよびドキュメント・スタイルがサポートされています。これら2つの拡張により、JDeveloperで作成されたWebサービスおよびOracle BPEL同期プロセスのサポートが可能になります。Secure Sockets Layer(SSL)を介したWebサービスとの対話や、Basic認証を必要とするWebサービスの使用が可能です。
さらに、このリリースでは、Application ExpressエンジンでWSDLドキュメントを正しく解析できない場合でも、Webサービス参照を手動で作成できます。
このリリースでは、ワークスペース管理機能も多数拡張されています。新しいワークスペースまたは追加の記憶域をリクエストしているユーザーに対して、表示するサイズを制御できます。
ワークスペース名の電子メールをリクエストすることもできます。さらに、ログイン試行のログを表示することも可能です。
アプリケーション移行を使用すると、Microsoft Accessのアプリケーションを移行してOracle Application Expressのアプリケーションを生成できます。
この機能により、Microsoft AccessからOracle Expressへアプリケーションを簡単に移行できます。
パスワードの有効期限に関するルールの指定、強力なパスワード(最低文字数および文字種の指定)の義務化、初回使用時のパスワード変更の要求およびアカウントのロックを実行できるようになりました。
この新機能を使用すると、Oracle Application Express管理サービスの開発インスタンス全体のアカウント・ログイン制御およびパスワード・ポリシーを構成できます。また、「ユーザーの編集」ページの「アカウント制御」で特定のアカウントに対する制御も指定できます。
ページおよびリージョンのキャッシュを利用すると、アプリケーションのパフォーマンスが向上します。「ページ属性」および「リージョン定義」ページに、新しいキャッシュ属性が追加されました。
ページのキャッシュは統計ページに適しており、リージョンのキャッシュは、条件のないリストなどのリージョンやHTMLテキストを含むリージョンに適しています。
レポート・リージョンをPDFにエクスポートすることで、レポートの印刷機能を使用できます。また、レポート・リージョンのレポート問合せおよび印刷属性を、アプリケーション内のすべてのページにアクセスできる共有コンポーネントとして定義できます。
この機能を利用すると、高品質で印刷しやすいレポートを作成できるという利点があります。
次の各項では、Oracle Database 11gリリース1(11.1)の拡張索引作成機能について説明します。
ルール・マネージャでは、表に対するDELETEおよびUPDATE操作を、ルール評価やアクション実行を起動するイベントとして扱うことができるようになりました(INSERT操作はすでにサポートされています)。このリリースのルール評価機能では、トリガー・ベースのプリコミット評価に加え、Oracle Databaseの変更通知機能を使用したポスト・トランザクション評価もサポートされています。
UPDATEおよびDELETE文中でルールを処理できるようになったことにより、開発者はこれまでのようにデータ・ウェアハウスやセンサーベース・アプリケーション特有の追加のみのワークロードを扱うだけでなく、ビジネス・プロセス全体をOLTPワークロード対応でモデル化できるようになりました。
再利用および共有可能なルール条件をSQLのWHERE
句形式で保存するためのPL/SQL APIがルール・マネージャに追加されました。これらの共有要素から、複合ルール条件をアセンブルできます。
また、標準のSQLを使用してルールを有効化および無効化できるようになりました。
アプリケーション開発者は、ルール条件を再利用することでルール定義プロセスを高速化できます。これらの共有条件は一度保存されると、その後の変更はそれらを参照しているすべての複合ルールに伝播されます。たとえば、$10,000を超える国際銀行振込を不審な銀行トランザクションとして定義しているルール・コンポーネントがあったとして、その金額や場所などの条件を変更する場合、一度だけ更新を行えば、更新内容はイベント・シナリオに不審な銀行トランザクションの定義が使用されているすべての複合ルールに反映されます。
ルールのオン/オフは、ビジネス条件の変更を反映する場合に限らず、ルールのテスト時やシステムへのコントロール導入時にも切り替えられます。
新しいドメイン・インデックス・コールアウトは、ALTER TABLE ... RENAME
またはALTER TABLE ... RENAME COLUMN
コマンドの実行中にドメイン索引に対応する表および列名メタデータを更新します。これにより、ドメイン・インデックス・メタデータは最新の状態に保たれます。
パーティション固有のパラメータ文字列を使用すると、パーティションのメンテナンス操作中にドメイン・インデックス・データの配置を制御できます。
ドメイン索引は、SQLのMERGE
文で使用できるようになりました。
Oracle Databaseのルール・マネージャ機能では、SQL WHERE
句のルール条件で、Oracle TextのCONTAINS
演算子を使用できるようになりました。
ルール・マネージャではまた、移動ウィンドウ・セマンティクスを使用して、集計値(SUM
、AVG
、MIN
、MAX
およびCOUNT
)を計算できるようになりました。ウィンドウ・サイズは、時間またはイベント数に基づきます。イベント・グループに対応する各集計値は、ルール条件の事前定義済値または相対しきい値に対して計算およびテストできます。
ルールは、ビジネス・アクティビティ監視やビジネス・インテリジェンスのアプリケーションなどを使用して、特定の時間長か、または時間式のスライディング・ウィンドウ内で発生するイベント集合から確認された実際の傾向に対応させることができます。たとえば、過去3日間の購入額の合計が$1000.00を超える場合に、顧客に特典を提供することなどができます。
Oracle Databaseの式フィルタでは、SQL WHERE
句のストアド式に、Oracle TextのCONTAINS
演算子を使用できるようになりました。
ストアド式では、テキストとXMLデータを評価できます。
システム管理型ドメイン索引(パーティション化されていないものとローカル・パーティション化されているものの両方)では、ベース表に対するDDLとパーティションのメンテナンス操作中、Oracle Databaseを使用してドメイン索引の記憶域表が追跡および保守されます。システムによってパーティション化された表は、ローカル・ドメイン索引の索引記憶域表として使用できます。このリリースでは、レンジ・パーティション化を使用したシステム管理型ドメイン索引がサポートされるようになりました。
ドメイン索引にシステム管理型パーティション化を使用することは、ローカル・ドメイン索引の管理性とパフォーマンスを向上させます。
この項では、Oracle Databaseのグローバリゼーション機能およびUnicodeのサポートに対する改善点を記載します。
AL32UTF8およびAL16UTF16キャラクタ・セットのNLSデータ・ファイルが、Unicode標準キャラクタ・データベースのバージョン5.0に一致するよう更新されました。
この拡張により、Oracle Databaseは標準の最新バージョンに準拠しています。
このリリースのJavaランタイムの主要な拡張内容は、新しいJITコンパイラのパフォーマンス、JDKに似たコマンドライン・インタフェースの使いやすさ、およびツールです。
OracleJVMでは、Sun JDK 1.5がサポートされています。
この機能により、J2SEアプリケーション(スタンドアロンJDBCまたは中間層)のOracle Databaseへの移植、およびJavaのアノテーションによって可能になる宣言的なプログラミング・スタイルなど、J2SE 5.0の主な利点の使用が可能になります。
この機能により、異なるデータベース・ユーザー・セッション間で、ユーザーのクラス・ローダーによりロードされたJavaクラスのメタデータを共有できます。
JITはデフォルトで有効化されており(即時利用)、さらに構成する必要はありません。ただし、パラメータ・ファイルでJAVA_JIT_ENABLED
をTRUE
またはFALSE
に設定するか、次のようにしてインスタンスまたはセッションを変更することで動的に無効化または再度有効化できます。
ALTER SYSTEM SET JAVA_JIT_ENABLED=true または ALTER SESSION SET JAVA_JIT_ENABLED=true
また、次のようにして、OJVM_JIT_PROPERTIES
を使用してプロパティのリストを指定することもできます。
OJVM_JIT_PROPERTIES="key0-value0","key1=value1","keyword0"
現在サポートされているプロパティは次のとおりです。
DISABLE_OPTIM_*
USER_JAVA_METHODS
の新しい列IS_COMPILED
、YES
またはNO
に設定されたALL_JAVA_METHODS
およびDBA_JAVA_METHODS
ビュー
この機能を使用すると、JITの動作を細かく制御できます。また、コンパイル済のクラスやメソッドのステータスを問い合せることが可能です。
デフォルトで有効化されていて、JDK JITに似たこの機能は、Cコンパイラを使用せずにデータベース内のJavaをネイティブかつ透過的にコンパイルします。
専用のOracleサーバー・プロセスにおいて、JITは独立したセッションとして実行されます。データベース・インスタンスごとに最大1つのコンパイラ・セッションがあります。このセッションは、Oracle RACに対応しており、すべてのJavaセッションに分割されます。
コンパイル・セッションでは、全体のパフォーマンスが最大になるよう、すべてのJavaセッションによって収集されたプロファイル・フィードバック・データを使用して、最も頻繁に使用されるメソッドがコンパイルされます。データベースには、実行可能なバイナリが永続しています。
Javaセッションでは、すでにコンパイルされたメソッドの実行可能なバイナリが使用されるか、OracleJVMによって一定の間隔で実行されるイベント・ポーリングを使用して新しくコンパイルされたメッソドが検出されます。特定のメソッドにコンパイル済のコードがある場合、後からそのメッソドを実行する際にはコンパイル済のコードが使用されます。
一方、Javaクラスが無効化されている場合には、クラスまたはメソッドの永続化されたコンパイル済コードは削除されます。
この機能には、データベース内のJavaに関して2つの主要な利点があります。
また、この機能ではCコンパイラは必要ありません。
この機能では、JDK VMと同じように、新しいPL/SQLインタフェースを介して、OracleJVMにコマンドライン・インタフェースが提供されます。次に例を示します。
FUNCTION runjava (cmdline VARCHAR2) RETURN VARCHAR2; または FUNCTION runjava_in_current_session (cmdline VARCHAR2) RETURN VARCHAR2;
JDKに似たインタフェースでは、JDK/JRE Javaシェル・コマンドと同じように、次のようなJDK/JREコマンドライン構文のサブセットが使用されます。
[-options] classname [arguments...] または [-options] -jar jarfile [arguments...]
サポートされているオプションは次のとおりです。
{cp|classpath}
< ":" クラス・ファイルを検索するためのファイル・システム・ディレクトリ/JAR/ZIPの分割されたリスト>
D
<name>
=
<value>
(システム・プロパティを設定)
Xbootclasspath:
<":" ブートストラップ・クラスおよびリソースを検索するための分割されたディレクトリ/zip/jarファイル>
Xbootclasspath/a:
<":" ブートストラップのクラスパスの最後に追加するための分割されたディレクトリ/zip/jarファイル>
Xbootclasspath/p:
<":" ブートストラップのクラスパスの先頭に付加するためのディレクトリ/zip/jarファイル>
この機能では、JDKのJAVAコマンドラインに似たコマンドライン構文を使用することにより、Javaが使用しやすくなります。この機能では、データベースに常駐するJavaクラスのみでなく、ファイル・システムに常駐するJavaクラスのデータベース・ランタイム環境でも、標準のclasspath
構文を使用した実行が可能です。また、標準の-D
構文を使用したシステム・プロパティの設定も可能にします。
この機能には、DBMS_JAVA
関数があり、セッション期間中のJDKのシステム・プロパティ設定をエミュレートできます。設定にはset_property
、get_property
、remove_property
およびshow_property
があります。
Java開発者は、データベースでJavaを使用する際のシステム・プロパティ・サポートなど、使用し慣れたJDKの動作をエミュレートできます。
この機能には、次のような、Java出力のリダイレクトを制御するためのDBMS_JAVA
関数およびプロシージャがあります。
{set | remove | enable | disable | query}_output_to_{sql | java | file}
トレースする出力の送信を有効化または無効化するための関数およびプロシージャは、次のとおりです。
trace {enable | disable}_output_to_trc
Java開発者は、出力のリダイレクトなど、使用し慣れたJDKの動作をエミュレートできます。また、旧リリースではできなかった、出力のトレース・ファイルへの送信を無効化できるようになりました。
この機能では、新しいloadjava
オプションである-jarsasdbobjects
および-prependjarnames
を使用して、JARを操作単位としてサポートできます(そのため、署名付きJARもサポートされます)。
これらの新しいオプションを使用しない場合、loadjava
はjarを個々のクラスに展開します。一方、dropjava
は元のjar(クラスのロード元)に戻り、一度に1つずつクラスを削除します。
OracleJVMを使用するJava開発者は、JARのサポートなど、JDKの同じ機能および動作を利用できます。
この機能では、システム・プロパティを保存するかどうかにかかわらず、endsession
およびendsession_and_related_state
を使用して、データベース・セッション内のJavaを終了できます。
Java開発者は、同じデータベース・セッション内のJavaの再初期化を高速化するためにプロパティ設定を維持しながら、セッション内のJavaを終了できます。また、System.exit
を使用せずに、Javaセッションを即時終了することも可能です。
既存のOracleJVMユーティリティ(loadjava
、dropjava
およびojvmjava
)の拡張には、利用頻度の最も低いloadjava
のオプションの廃止と、Web上でのJavaクラスのロード機能(HTTP URLのサポート)の追加が含まれます。次に例を示します。
loadjava -u scott/tiger -r -v http://my.server.com/this/is/the/path/my.jar
dropjava
の拡張内容は次のとおりです。
ojvmjava
は、runjava
およびそのオプションなど、JDKに類似のコマンドをサポートするよう拡張されました。次に例を示します。
ojvmjava -u scott/tiger -runjava -d <machine-name-or-ip>:1521:<sid> -t
後に次の内容が続きます。
$java -cp .<class>
また、ロード前(loadjava
の起動など)に、ファイル・システムに常駐するクラスの指定されたリストと、デプロイ可能なJARを可能なかぎり閉じるために、新しいスタンドアロンのクラスの閉包ツール(ojvmtc
)も用意されています。
利点は、Oracle Database内のJavaアプリケーションが使いやすくなることと、デプロイが簡単になることです。
この機能では、標準のJMXインタフェースを使用してOracleJVMがサポートされています。
JMXインタフェースのサポートにより、次の内容が実現されています。
このリリースでは、Java開発者のために、JDBCおよびSQLJ APIに次の拡張が行われました。
JDBC 4.0には、次の内容を目的とした新しいメソッドが導入されています。
StatementEventListener
の登録の許可
また、新しいStatementEventListener
インタフェースおよびStatementEvent
クラスも用意されています。
JDBC 4.0のこれらの拡張により、JDBCアプリケーションのスケーラビリティが向上し、文オブジェクトの制御および管理が改善されます。
この機能には、java.sql.XMLType
、java.sql.RowID
およびjava.sql.Nclob
を含む新しい標準の型が用意されており、各国語キャラクタ・セット(NCHAR
、NVARCHAR
、LONGVARCHAR
)がサポートされています。また、JDBC 4.0実装により、BLOB
およびCLOB
データ型の操作が拡張されています。
新しいSOL型の標準サポートにより、データベース全体へのJDBCアプリケーションの移植性が大幅に高まります。
このリリースでは、JDBCに次のサポートが追加されました。
ANYTYPE
: 永続データベースのスカラー型またはオブジェクト型を含む任意のSQL型、および一時的な未指定型を表します。
ANYDATA
: 同じ列に、メタデータとともに異機種間の値(組込みおよびユーザー定義)を保存するための表の列型。
ANYDATASET
: メタデータとともに、同じ型の一連のデータ・インスタンスを表します。
次のような利点があります。
ANYTYPE
)へのマッピング
ANYDATA
)へのJavaオブジェクトの永続化
ANYDATASET
へのマッピングこの機能を使用すると、Javaアプリケーションまたはコンテナをデータベース内のSQL問合せの監視リストにサブスクライブし、次の場合に通知を受けることができます。
通知は、トランザクション(DMLまたはDDL)のコミット時にパブリッシュされます。
Javaアプリケーションおよびコンテナにより、不要なデータベース問合せが回避され、効率的で一貫性のある結果セットのキャッシングおよびキャッシュ無効化が実装されます。
この機能を使用すると、JDBCによるロギング、診断およびDMS監視に対するサポートが改善されます。
java.util.logging
を完全に活用するため、ロギングが再実装されました。これにより、SQL例外などのJDBCドライバ・コードの実行中、SQL文の実行中、または内部JDBCメソッドの開始や終了時に発生するイベントを選択して記録できるようになります。
oracle.jdbc.DiagnosabilityMBean
というMBeanで構成されています。このMBeanを使用して、JDBCロギングを有効化および無効化することや、JDBCの内部に関する追加の統計を行うことができます。
この機能によりJDBCロギングが簡略化され、結果の解析が簡単になります。ダイナミック・モニタリング・システム(DMS)のメトリックを使用すると、プログラム制御や診断機能の構成のみでなく、JDBCイベントやパフォーマンス・メトリックをJavaアプリケーションで追跡できます。
次に示すJDBC Oracle接続メソッドを使用して、データベースを起動または停止できるようになりました。
DBSTARTUP_NO_RESTRICTION
DBSTARTUP_FORCE
DBSTARTUP_RESTRICT
DBSHUTDOWN_CONNECT
DBSHUTDOWN_TRANSACTIONAL
DBSHUTDOWN_TRANSACTIONAL_LOCAL
DBSHUTDOWN_IMMEDIATE
DBSHUTDOWN_ABORT
DBSHUTDOWN_FINAL
PRELIM_AUTH
モードで、SYSOPER
またはSYSDBA
として専用サーバーに接続している必要があることに注意してください。
この機能により、Streams AQの新しいネイティブJDBC APIを利用する新規のJavaパッケージ(oracle.jdbc.aq
)が公開されます。このパッケージには、次のクラスおよびインタフェースが含まれます。
AQQueue
AQMessage
AQAgent
AQDequeueOptions
AQEnqueueOptions
AQMessageProperties
AQRawPayload
AQObjectPayload
AQNotificationEvent
AQNotificationListener
AQNotificationRegistration
Streams AQやOJMSキューへのアクセス時に、(ネイティブAQ操作をPL/SQLプロシージャに対して使用することで)JavaおよびJMSアプリケーションがこれまでより高速で稼働します。また、これらのAPIにより、AQイベントの非同期通知、およびRAW
データ型、ANYDATA
データ型、OBJECT
データ型などのリッチ・メッセージ・ペイロードの交換が可能になります。
この機能により、暗号化、パスワード認証、厳密認証およびデータ整合性やチェックサムに関して、Oracle Advanced Securityに対する完全なJDBC-Thinサポートが提供されます。
新しいセキュリティ機能には、Secure Sockets Layer(SSL)、Remote Authentication Dial-In User Service(RADIUS)およびKerberos認証、AES暗号化、SHA1チェックサム・アルゴリズムが含まれます。JDBC-ThinにおけるAdvanced Securityのサポートにより、セキュアなJavaアプリケーションの開発およびデプロイが簡略化されます。
SQLJカスタマイザは、ISOの標準コード生成中に使用されます。カスタマイザは、特定のデータベース実装およびベンダー固有の機能やデータ型のSQLJプロファイルを調整します。SQLJのプロファイル印刷オプション(-P-print
)は、SQLJトランスレータに渡されたすべてのカスタマイザ・オプションを印刷するよう拡張されました。
この機能により、プリコンパイル・フェーズ中にSQLJが受信したカスタマイズ情報が提供され、発生する可能性のある問題および様々なカスタマイズに固有の問題の診断に役立ちます。
Oracleのアウトライン機能を使用すると、アプリケーションでSQL実行のプラン・スタビリティをサポートできます。アウトラインは、SQL文に関連付けられた一連のオプティマイザ・ヒントとして実装されます。文でのアウトラインの使用が有効化されている場合、保存されたヒントがOracleにより自動的に検証され、それらのヒントに基づいた実行計画の生成が試行されます。
SQLJには、SQLJアプリケーションに存在するすべてのSQL文に対するOracleアウトライン作成コマンドを含むSQLファイルを生成および実行するために、新しい変換時間オプションが用意されています。
この機能により、データベース問合せは開発時の予期どおりに動作し、問題の診断が改善されます。
SQLJアプリケーションを変換して、JDK 1.5で実行できるようになりました。
#sqlリージョン外のJDK 1.4およびJDK 1.5固有の言語構造は、トランスレータによって認識されます。
JDBCのjavax.sql.XADataSource
インタフェースは、XAデータソースの標準機能を表しています。XAデータソースはXA接続のファクトリです。Oracle JDBCは、OracleXADataSource
クラスを介してXADataSource
インタフェースを実装します。OracleXADataSource
クラスのgetConnection()
メッソドにより、基礎となるデータソースへのXA接続が戻されます。
この機能の利点は、SQLJに適切な接続コンテキストを作成することで、これらの接続をSQLJアプリケーションで使用できることです。
これらの機能により、Oracle Databaseを使用して.NETアプリケーションを構築する開発者の生産性が向上します。.NET開発者が使用し慣れているVisual Studio開発環境を使用して、ADO.NET 2.0の機能とネイティブに統合されます。また、これらの機能により、Oracle用の.NETアプリケーションの開発にかかる時間が削減されます。
この機能により、Visual Studio 2003を使用しているOracle Developer Tools(ODT)のユーザーに現在提供されているのと同じサポートが、Visual Studio 2005のユーザーに提供されます。変更内容には、異なるアイコンの使用と、Visual Studio 2005のルック・アンド・フィールとの視覚的な統合が含まれます。
この機能により、Visual Studio 2003からVisual Studio 2005環境に移行した場合に、ODTを継続して使用するのが簡単になります。
Oracle PL/SQLデバッガがVisual Studioと直接統合されました。開発者は、その他の言語で行うのと同じように、コードのデバッグ、ブレークポイントの設定および変数の監視を実行できます。3つのタイプのデバッグがサポートされています。
開発者は、Visual Studio内のOracleエクスプローラからストアド・プロシージャを実行し、パラメータを入力します。
開発者は、自動的に渡されるパラメータを使用して、.NETコードとPL/SQLを相互に直接移動します。
開発者は、(SQL*Plusなど)どこからでも検索できる9.2以降の任意のOracleアプリケーションを実行します。ストアド・プロシージャがコールされると、Visual Studioのブレークポイントが起動され、ストアド・プロシージャのパラメータが自動的に渡されて、開発者はデバッグを開始できます。
この機能により、開発者は、PL/SQLストアド・プロシージャをコールする.NETアプリケーションをシームレスにデバッグできます。開発者は、Visual Studioから離れずに、.NETコードおよびPL/SQLの両方をデバッグできます。また、任意の言語で記述され、同じマシンまたはリモート・マシンに配置された、任意のOracleプログラムからコールされたPL/SQLストアド・プロシージャもデバッグできます。
この機能では、Visual Studio 2005において新しいスタイルのドラッグ・アンド・ドロップによるコード生成を可能にするデータソース・ウィンドウとの統合のみでなく、一部のVisual Studio 2005デザイナを有効化するDDEXインタフェースが公開されます。
これらの機能により、Oracle Databaseを使用して.NETアプリケーションを構築する開発者の生産性が向上します。.NET開発者が使用し慣れているOracle Data Provider for .NET(ODP.NET)開発環境を使用して、ADO.NET 2.0の機能とネイティブに統合されます。また、これらの機能により、Oracle用の.NETアプリケーションの開発にかかる時間が削減されます。
ODP.NETでは、単一のAPI経由で複数のプロバイダ全体にデータベースへのアクセスを提供するために、System.Data.Common
ネームスペースから継承します。
ADO.NETの開発者は、データ・アクセス・コードのセット1つとベンダー固有の最低限のコードを使用して、複数のベンダーのデータベース・サーバーと連携するアプリケーションを作成できます。複数ベンダーのデータベースに作用する1セットのコードを作成する際、開発者の生産性が向上します。
ODP.NETには、DbConnectionStringBuilder
を継承する、強い型指定の接続文字列ビルダー・クラスが用意されています。接続文字列ビルダーを使用すると、開発者は、クラス・メソッドを使用して既存の接続文字列を解析および再構築するだけでなく、ユーザーの入力に基づいてプログラムで構文的に正しい接続文字列を作成できます。接続文字列ビルダーにより、既知の鍵/値ペアに対応する強い型指定のプロパティが提供されます。
ODP.NETの接続文字列は、よりセキュアでより管理しやすくなりました。接続文字列パラメータの強い型指定の実行が可能になったため、文字列挿入攻撃を受けにくくなりました。接続文字列パラメータを、構成ファイルまたはODP.NETプロパティとして参照できるようになったため、接続情報の管理が簡単になりました。
Oracle Databaseの更新中、ODP.NET OracleDataAdapter
により、ラウンドトリップごとに一連の行がデータベースにバッチ処理されます。ラウンドトリップごとの行数は、開発者が設定できます。
この機能により、DataSetからの更新の適用時にデータベースへのラウンドトリップの回数が削減されるため、アプリケーションのパフォーマンスが向上します。
.NET開発者は、クライアント側のキャッシュ・データを頻繁に使用します。別のユーザーがサーバー上の元のデータを変更すると、データベースにより、クライアント・データが無効であることを示す変更通知メッセージがクライアントに送信されます。以前は、変更通知は表レベルで登録されていました。このリリースでは、開発者は問合せを行レベルで登録できるため、選択した行が変更された場合にのみ通知されます。
.NETクライアントは、より正確な変更通知アラートを受信できるようになりました。
ODP.NETのスキーマ検出を使用すると、アプリケーションで、データベース・スキーマに関する情報をリクエストし、クライアントに戻すことができます。表、列およびストアド・プロシージャなど、様々なデータベース・スキーマ要素が、OracleConnection
クラスのGetSchema
メソッドを使用して公開されます。
ODP.NETでは、汎用およびOracle固有の一連のスキーマ情報を取得できます。
スキーマ検出により、クライアント・アプリケーションへのデータベース・スキーマ情報を取得するために、すべてのADO.NET 2.0ドライバ共通のAPIが提供されます。
ODP.NET OracleDataSourceEnumerator
クラスにより、アクティブなOracleデータベース・サーバーのリストが提供されます。
データソースの列挙は、すべてのADO.NET 2.0プロバイダに共通の一般的な方法でプログラムにより取得されます。
ODP.NETでは、LOB情報を取得するためのデータベース・サーバーへのランウンドトリップが少なくなりました。
ODP.NETのLOB取得パフォーマンスがより高速になりました。
文キャッシュの場合、ODP.NETでは、文の最初の実行後にパラメータ・コンテキストがキャッシュされるようになりました。
多くのアプリケーションでは、同じSQLまたはPL/SQL文が繰り返し実行されます。ODP.NETでは、文の最初の実行時にパラメータ・コンテキストがキャッシュされるようになったため、それらを再利用できます。これにより、後続の文の実行パフォーマンスが向上します。
これらの機能により、WindowsクライアントからOracle Databaseへのデータ・アクセス・パフォーマンスが向上します。これらの機能の多くは透過的であり、データベース・サーバーおよびクライアントをコード変更せずにアップグレードすることにより、アプリケーションのパフォーマンスがこれまでより高速になります。
Oracle Provider for OLE DBでは、エンド・ユーザーの問合せパフォーマンスを向上させるために、プロバイダに多数の新機能が実装されました。
メタデータ・キャッシュの場合、Oracle Provider for OLE DBでは文キャッシュがオフになると、最初の実行後にメタデータがキャッシュされます。これは、大量の列メタデータが少量の行データとともに取得される場合に便利です。Oracle Provider for OLE DBでは、文キャッシュがオンの場合のメタデータ・キャッシュも改善されました。
多くのアプリケーションでは、同じSQLまたはPL/SQL文が繰り返し実行されます。Oracle Provider for OLE DBでは、文の最初の実行時に、問合せのメタデータがキャッシュされるようになったため、それらを再利用できます。これにより、後続の文の実行パフォーマンスが向上します。
文キャッシュの場合、Oracle Provider for OLE DBでは最初の実行後に、大規模なフェッチ配列およびOCIエラー・ハンドルがキャッシュされます。
多くのアプリケーションでは、同じSQLまたはPL/SQL文が繰り返し実行されます。Oracle Provider for OLE DBでは、文の最初の実行時に、文の解析情報がキャッシュされるようになったため、それらを再利用できます。これにより、後続の文の実行パフォーマンスが向上します。
後続の項では、Oracleクライアント側スタックの拡張内容を説明します。これらの拡張により、オープン・ソースのデータ・アクセスPHPドライバは、その他のデータベース用のPHPデータ・アクセス・ドライバの機能を上回るようになります。
これより前のリリースでは、セッション共有機能を使用できたのはマルチスレッド・アプリケーションのみでした。この新機能では、複数のホスト・マシン間のみでなく、同じホスト・マシン内のセッションを様々なアプリケーション・プロセスで共有できます。プールは、新しいバックグラウンド・プロセスにより、データベース・サーバー上で維持されます。
この機能は、マルチスレッドとしてデプロイできないアプリケーション(Apache Webサーバー環境のPHPアプリケーションなど)に便利です。また、データベース・リクエストは、セッション状態に無関係に処理されます。これらのアプリケーションでは、データベースへの接続を永続的に保持する必要がなくなったため、データベースのスケーラビリティが向上しました。
プールはDBAによって管理されます。アプリケーションによって同じような状態のセッションが残される接続クラス名を指定することにより、OCIおよびOCCIアプリケーションでそれらのセッションを再利用できます。
次の各項では、次に示す機能について説明します。
データベースやキューなど、複数のリソース・マネージャに関連するトランザクションをサポートするためにXAインタフェースで使用可能な機能を、PL/SQLからも使用できるようになりました。
アプリケーション開発者は、SQL*PlusセッションまたはPL/SQLを使用したプロセス間で、トランザクションの切替えや共有を行えるようになりました。
旧リリースのOracle Databaseでは、PL/SQLプログラムで構文から値を取得する必要がある場合にはSQLが使用されました。次に例を示します。
DECLARE n NUMBER; BEGIN SELECT Seq.Nextval INTO n FROM Dual; END;
これはPL/SQLプログラマには使用しにくく、カーソルを使用する必要があるため、特にアプリケーションで実行時のパフォーマンスとスケーラビリティの問題の原因となっていました。
Oracle Database 11gでは、PL/SQL式でSeq.Nextval
を使用できるようになりました。次に例を示します。
DECLARE n NUMBER := Seq.Nextval; BEGIN ...
CURRVAL
疑似列でも同じことが可能です。
この機能により、PL/SQLプログラマにとっての使いやすさが増し、実行時のパフォーマンスとスケーラビリティが向上します。
REGEXP_SUBSTR
およびREGEXP_INSTR
のn
th副次式にアクセスする新しい構文ができました。たとえば、一致する文字列が常に<string>
および</string>
などのタグに囲まれていて、これらのタグ内にある値のみを抽出する必要がある場合に便利です。REGEXP_SUBSTR
は福次式を戻します。REGEXP_INSTR
は位置を戻します。
組込みの新しいREGEXP_COUNT
は、入力文字列でパターンが一致した回数を戻します。
この新機能は、SQLおよびPL/SQLのどちらでも使用できます。
組込みの正規表現の機能が増えたことが利点です。この機能が必要であった旧アプリケーションでは、比較的複雑なアプリケーション・コードを記述する必要がありましたが、現在はその必要はありません。
Oracle Database 11gでは、CLOB
引数を許可することにより、ネイティブの動的SQLで32000文字を超える文がサポートされるようになりました。また、次の機能も含まれています。
DBMS_SQL.PARSE()
によるCLOB
のオーバーロードの取得
REF CURSOR
とDBMS_SQL
カーソルの相互変換を可能にすることによる相互運用性のサポート
DBMS_SQL
によるあらゆるデータ型のサポート(コレクションおよびオブジェクト型も含む)
DBMS_SQL
のバルク・バインドの許可
Oracle Database 10gには、PL/SQLから動的SQLを実行する機能にいくつかの制限がありました。DBMS_SQL
は方法4のシナリオに必要でしたが、すべてのデータ型を処理することができず、データベースのクライアントはカーソル表現を使用できませんでした。ネイティブの動的SQLは方法4以外のシナリオには便利でしたが、32000文字を超える文はサポートされていませんでした。Oracle Database 11gでは、これら以外の制限もなくなり、PL/SQLからの動的SQLのサポートが機能的に完成しました。
サブタイプは、通常、より汎用的なスーパータイプに特定のデータ属性を追加します。一般的には、Show_Attributes()
などのNOT FINAL
メンバー・プロシージャは、タイプ階層の各レベルで実装されます。親レベルでの実装を再利用し、サブタイプの属性にのみ新しいコードを追加して、1つのレベルで実装します。
Oracle Database 11gでは、ANSI SQLの一般的な起動構文がサポートされており、次のような記述が可能です。
(<type-instance> AS <type-name>).<method-name>.
この構文がない場合、プログラマは、メンバー・サブプログラムではなく静的なサブプログラムの使用に依存する面倒な回避策を使用する必要があります。
この機能により、完成に近いOracle Databaseにオブジェクト指向のプログラムが実装されます。
スキーマ・レベルのファンクションf()
が次のように宣言されているとします。
FUNCTION f( p1 IN INTEGER := 1, p2 IN INTEGER := 2, ... pn IN INTEGER := 99) RETURN INTEGER
このリリースから、SQL文でファンクションを起動できるようになりました。名前表記法の構文は次のようになります。
SELECT f(pn=>3, p2=>2, p1=>1) FROM dual
混合表記法は次のようになります。
SELECT f(1, pn=>3) FROM dual
旧リリースでは、名前表記法または混合表記法を試行するとエラーが発生していました。
利点は、SQL文でデフォルトの多数のパラメータとともにPL/SQLファンクションが起動され、デフォルト値を変更する必要のある実際のパラメータが1つのみまたは少数の場合の使用性が向上したことです。
複合トリガーには、BEFORE STATEMENT
、BEFORE EACH ROW
、AFTER EACH ROW
およびAFTER STATEMENT
タイミング・ポイントのそれぞれに1つのセクションがあります。これらすべてのセクションが、共通のPL/SQLの状態にアクセスできます。共通の状態は、起動文が開始されると作成され、その起動文が原因でエラーが発生してもその文が完了すると破棄されます。複合トリガーは、監査行がEACH ROWセクションに累積され、AFTER STATEMENT
セクションの監査表にバルク挿入される監査シナリオのパフォーマンスの向上に使用できます。変更中の表のエラーを回避するために、このような方法をとる必要がある場合もあります。複合トリガーを使用する以外には、補助パッケージを使用して共通の状態をモデル化する方法があります。この方法はプログラミングが面倒で、トリガーを実行する文がエラーの原因になり、AFTER STATEMENT
トリガーが起動されない際にメモリー・リークが発生する場合があります。
この機能により、PL/SQLプログラマにとっての使いやすさが増し、実行時のパフォーマンスとスケーラビリティが向上します。
PL/Scopeを使用すると、Cscope(http://cscope.sourceforge.net/を参照)でCのソース・コードを参照するのと同じ方法で、PL/SQLのソース・コードを参照できます。PL/SQLのソース・コードの全タイプの定義、宣言、割当て、参照を検索および表示できます。
PL/SQLコンパイラでは、PL/Scopeのサポートに必要なメタデータをオプションで導出し、データベース・カタログに保存できます。メタデータでは、スコープおよびオーバーロードなど、言語の微妙な違いが考慮されます。提供されているレポート・ジェネレータを使用して、レポート(特にハイパーリンクされたHTMLレポート)を生成できます。この機能は、Oracle SQL Developerの対話型のPL/SQL開発環境を介して公開されます。
PL/Scopeでは、(特に他の開発者のコードをメンテナンスする必要のある)開発者の生産性の向上がサポートされています。
多くのプログラミング言語では、完全にループ外または新規の反復に戻るループ内にあるコントロールの転送が可能です。旧リリースにおいて、PL/SQLでは、EXIT
文を使用したループ外のコントロールの転送のみが可能でした。Oracle Database 11gリリース1(11.1)には、新しいCONTINUE
文により、新規の反復へ戻るループ内にあるコントロールの転送機能が実装されています。
多くのアルゴリズムでは、この新しいCONTINUE
文が提供するループ・コントロールが必要です。この明示的な機能により、PL/SQLのコードを数行記述し、一般的に採用されているスタイルのルールを維持する必要はなくなりました。
PL/SQL階層プロファイラは、PL/SQLデータベース・アプリケーションのホットスポットおよびパフォーマンス・チューニングの機会を識別します。サブプログラム・コールによって編成された動的実行プログラムのプロファイルがレポートされます。SQLおよびPL/SQLの実行時間は個別に把握されます。PL/SQL階層プロファイラには、特別なソースやコンパイル時間の準備は不要です。
新規パッケージDBMS_HPROF
の起動および停止プロシージャにより、PL/SQL階層プロファイラの生データの記録が制御されます。このパッケージ内のその他のサブプログラムは、生データのスキーマ・レベルの表への変換に使用され、レポートの生成が可能になります。たとえば、ハイパーリンクされたXMLやHTMLレポートを生成できます。
この機能は、Oracle SQL Developerの対話型のPL/SQL開発環境の一部です。
PL/SQL階層プロファイラにより、最も効果の出るPL/SQLファンクションに対してチューニング作業が行われるため、プログラマの生産性とプログラムのパフォーマンスの両方が向上します。
最新のPL/SQLソフトウェアには、様々なプログラムで頻繁にコールされる多くのプロシージャが含まれています。インライン最適化(プロシージャ・コールのプロシージャ本体のコピーとの置換え)を組み込むことで、PL/SQLの最適化コンパイラの性能が向上しました。コール・オーバーヘッドが取り除かれ、インライン化されたプロシージャがコールされている実際の値をコンパイラが認識している場合には更なる最適化が可能なため、更新されたコードはより迅速に実行されます。
パフォーマンスは大幅に向上する可能性があります。この最適化は、コンパイラによって自動的に行われます。ただし、必要な場合には、最適化を詳細に制御できます。既存のユニットを再コンパイルすることにより、アップグレードの直接的な結果として、多くのPL/SQLプログラムの実行が高速化されます。
PL/SQLの新しいSIMPLE_INTEGER
データ型は、NULLチェックもオーバーフロー・チェックも行われないネイティブのコンパイルで使用するための2進整数です。範囲は、含まれる間隔が-2147483648〜2147483647の整数値で、NULL値は含まれません。これらのルールにより、PL/SQLのネイティブ・コンパイルとともに使用した場合には、直接的なハードウェア実装が可能です。
PLS_INTEGER
と比較すると、SIMPLE_INTEGER
データ型によりパフォーマンスが大幅に向上します。NULL値がなく、オーバーフロー・チェックが不要な場合に使用できます。
次の各項で説明されている機能により、PL/SQL、Java、Cおよび.NETのプログラマは、Oracle XML DBおよびOracle XML DBリポジトリの機能をすべて利用できるようになります。また、これらの新機能により、バイナリXMLをサポートするためのインフラストラクチャ・コンポーネントが拡張され、大規模なXMLドキュメントを処理するための効率的な方法が提供されます。コンテンツ・リポジトリ・アクセス用のJSR-170およびXQueryの新しい標準JSR-225を含む、XMLアプリケーション開発用のJSR関連のサポートもあります。Oracle XML DB機能を使用しているかどうかにかかわらず、Oracle XMLライブラリは、J2EEおよび.Net環境で作業するXML開発者向けに、可能なかぎり最高のアプリケーション開発フレームワークを提供し続けます。これらの新機能により、Oracle Application ServerやFusion Middlewareで使用するための高度に最適化されたXSLTおよびXQueryエンジンが提供されます。
新しいXDKのバイナリXMLプロセッサには、バイナリXMLエンコーダ、バイナリXMLデコーダ、スキーマベースまたは非スキーマベースのバイナリXMLストリームをXML 1.0テキストやSAX
イベントとの間で相互変換するためのトークン・マネージャが含まれます。形式は、Oracle XML DBで使用されているものと同じです。
この機能により、XMLを処理するアプリケーションは、事前解析されたコンパクトなXML形式を利用できるようになりました。このXML形式では、ネットワークの帯域幅のみでなく、メモリーやCPU使用率も節約できます。Oracle XML DBとOracle XDKでの単一形式のサポート、およびバイナリXMLプロセッサ内でのOracle XML DBのサポートにより、層のXMLアプリケーション間でパフォーマンスを最適化できるようになりました。
XMLアプリケーションの開発パラダイムによって提供されている、考えられるすべてのユースケースを解決できる永続XMLへの対応方法はありません。バイナリXML(XMLドキュメントの構造を表現する方法)により、データベース内の永続XMLに対する3つ目の記憶域モデルが追加されます。既存のオブジェクト記憶域およびテキスト記憶域モデルが置き換えられるのではなく、補足されます。
バイナリXMLには、次に示す2つの大きなメリットがあります。
その他の記憶域メカニズムと同様に、アプリケーション開発者は、記憶域の詳細に関係なく、XMLType
およびそれに関連するメッソドや演算子の使用を継続できます。
Document Object Model(DOM)を作成するためのオプションは次のとおりです。
static final String ACCESS_MODE = "DOM_ACCESS_MODE";
static final String READ_ONLY = "READ_ONLY";
static final String UPDATEABLE = "UPDATEABLE";
static final String FORWARD_READ = "FORWARD_READ";
static final String STREAMING = "STREAM_READ";
この機能では、読取り専用、順読みまたはストリーミングなどの異なるアクセス・パターンでDOM作成を構成することにより、メモリー使用率およびパフォーマンスにおいてXMLアプリケーションは最高の効率を実現できます。この機能により、軽量のXMLアプリケーションで、大容量のDOMオブジェクト・ツリーを処理する必要がなくなりました。
XML Pull Parsingでは、メモリーにドキュメントの状態を保持しないことで、メモリーのフットプリントを制限するストリームベースの解析モデルがサポートされています。SAX
と比較すると、Pull Parsingの新しいモデルでは、アプリケーションがリクエストしたイベントのみが解析され、複数の入力XMLドキュメントが受け入れられます。
この機能により、CとXMLの処理パフォーマンスが向上し、ストリームベースの新しいXML Pull Parsingとのスケーラビリティが保証されます。また、メモリーにドキュメントの状態を保持しないことでメモリーのフットプリントが制限され、アプリケーションがリクエストしたストリーム・イベントのみを解析することで、XMLの処理パフォーマンスが向上します。Pull Parsingでは、単一の解析プロセスによる複数のXMLドキュメントの処理が可能なため、XMLを処理しやすくなりました。
XPathを使用した問合せXMLコンテンツに対するJAXP 1.3 APIのサポートには、次の拡張が行われました。
この機能により、Java XPath/XSLT実装のパフォーマンスおよび使用性が向上します。
この機能を使用すると、ユーザーは、XMLスキーマに準拠しているすべてのXMLドキュメントをアンロードおよびリロードせずに、登録済のXMLスキーマを変更できます。インプレースのバージョン・アップ中には既存のドキュメントを変更できないため、XMLドキュメントの既存のコーパスを無効化しない変更のみが許可されます。
この機能では、XMLスキーマへの特定の共通の変更はデータのアンロードやリロードを行わずに実行できるため、必要な変更に迅速に対応できるようになります。アプリケーションの性質が動的であることまたはXMLコンテンツが大量であることが原因で、XMLスキーマの変更に対応するためにXMLコーパス全体をアンロードおよびリロードすることが非現実的である場合、企業はXMLスキーマベースのXML記憶域の利点を活用できます。
多くの場合、この機能により、XMLスキーマの変更に関連するオーバーヘッドが大幅に削減されます。XMLスキーマに準拠するドキュメントが大量にある場合のXMLスキーマのバージョン・アップは、完了までに数日かかる非常にコストの高いプロセスです。インプレースでXMLスキーマをバージョン・アップすることにより、一般的な変更の大半が停止時間なしで即時に行われ、企業のコストを大幅に節約できます。
このリリースでは、XQueryのパフォーマンスが向上しました。
中間層XQueryのパフォーマンスの向上により、中間層XQueryのサービスに依存するアプリケーションが高速化します。
プラッガブルDOMは、DOM実装をDOM APIレイヤーとデータ・レイヤーの2つの別々のレイヤーに分割します。APIレイヤーは、スケーラビリティのために外部記憶域によってサポートされている、基礎となるデータにリンクする軽量の一時ノード・フラグメントで構成されています。データには、内部データとプラグイン・データの2種類があります。プラグイン・データは、InfosetReader実装を介してサポートされます。
この機能により、統合されたインタフェースを使用してXMLデータの様々な形式に基づき、XMLアプリケーションでDOMを作成できます。この機能により、XMLアプリケーションの移植性が向上します。
ストリームベースのXMLスキーマ検証により、XMLアプリケーションで、XML Pull ParsingプロセスのXMLスキーマに対してXMLコンテンツを検証できるようになりました。
高パフォーマンスのXML処理およびそのスケーラビリティは、エンタープライズのXMLアプリケーションにとって非常に重要です。この機能により、CとXMLの処理パフォーマンスが向上し、ストリームベースの新しいXMLスキーマ検証とのスケーラビリティが保証されます。
この機能では、次の内容がサポートされており、XMLアプリケーションのドキュメント・オブジェクト・モデル(DOM)処理のスケーラビリティが保証されます。
cloneNode()
またはimportNode()
)がサポートされています。
エンタープライズのXMLアプリケーションでは、スケーラビリティが成功の鍵になります。この機能は、XMLアプリケーションのDOM処理のスケーラビリティを保証します。
XML用の統合された新しいJava APIでは、XMLType
を接続管理のセッション・プール・モデルとともに使用できる操作の切断モードが提供されているため、XMLType
のすべての利点を中間層Javaプログラムで活用できます。
これにより、XMLType
オブジェクトを、その作成に使用されたデータベース・セッションから切断できます。
この機能では、単一のAPIを使用してOracle XML DBやその他のソースに保存されたXMLコンテンツを操作できるため、Javaプログラマの生産性が向上します。
統合されたJava APIでは、セッション・プーリングが原因でXMLType
のインスタンス化に使用されたデータベース接続を保持できない中間層環境で、XMLType
の使用を可能にする操作の切断モードが提供されます。
この機能では、XMLType
を接続管理のセッション・プール・モデルとともに使用できる操作の切断モードが提供されているため、XMLType
のすべての利点を中間層Javaプログラムで活用できます。これにより、XMLType
オブジェクトを、その作成に使用されたデータベース・セッションから切断できます。
この機能では、単一のAPIを使用してOracle XML DBやその他のソースに保存されたXMLコンテンツを操作できるため、Javaプログラムの生産性が向上します。
この機能では、セッション・プーリングが原因でXMLType
のインスタンス化に使用されたデータベース接続を保持できない中間層環境で、XMLType
の使用を可能にする操作の切断モードが提供されます。
XMLDiff
は、2つのXMLドキュメントの差異を検出し、その差異をXMLで表現します。XMLPatch
は、XMLDiff
で作成された差異を取得し、ターゲットのXMLドキュメントの変更を適用します。
この機能により、XMLドキュメントの高パフォーマンスな比較と、ユーザーによる更新の制御が可能になります。2つのXMLドキュメントの差異の検出がサポートされているため、XMLアプリケーションで、ドキュメントのバージョン管理、およびコンテンツのマージや同期を簡単に行うことができます。また、変更されたデータのみを処理することによるプロセッサ要求の削減、更新のみを転送することによる帯域幅要求の削減、機密データを配信時に再アセンブルできる別々のストリームに分割することによるセキュリティの強化も実現されます。
この機能により、索引付け操作がINSERT
またはUPDATE
操作とは別に実行される、XMLIndex
の非同期モードが提供されます。アプリケーションは、トランザクションを完了する前に、索引付けの完了(大規模なドキュメントの場合は重要な操作)を待機する必要がなくなりました。
この機能では、指定されたXMLIndex
によって索引付けされたXPath式のセットを定義する機能も提供されます。サブセットは、INCLUDE
またはEXCLUDE
構文を使用して定義できます。
索引付けされたXPath式をサブセット化すると、索引サイズとディスク使用量の調整や、柔軟に取得を行うことによる挿入のパフォーマンスの調整が可能になります。
この機能により、XMLIndex
の使用の柔軟性が高まります。XMLIndex
は、様々なアプリケーションで使用できます。この機能では、INSERT
およびUPDATE
操作と索引付けが別々に行われるため、アプリケーションのパフォーマンスが向上します。また、XMLIndex
を使用する際のパフォーマンス、柔軟性およびディスク使用量の調整も可能です。
次の各項では、Oracle Database 11gリリース1(11.1)の可用性の機能について説明します。
次の各項では、高可用性機能に関するEnterprise Managerインタフェースの改善内容について説明します。
この機能により、ブラウザベースのOracle Enterprise Manager Database ControlインタフェースをLogMinerで使用できるようになりました。旧リリースでは、管理者は、LogMinerを使用するにはスタンドアロンのJavaコンソールを使用する必要がありました。コンソールは残りのEnterprise Managerと統合されておらず、インストールは煩雑でした。この新機能により、管理者は、タスクベースで直感的な方法でLogMinerを使用できます。
この新機能によって、LogMinerの管理性が向上します。タスクベースのワーク・フローにより、ログのマイニングが可能になります。また、このワーク・フローはトランザクションのフラッシュバックに統合されます。
次の各項では、Oracle Data Guardの拡張機能について説明します。
この機能により、最大パフォーマンス保護モードに設定されたData Guard構成でファスト・スタート・フェイルオーバーを使用できるようになりました。最大パフォーマンス・モードでData Guardのフェイルオーバーが発生した場合にはデータが損失する可能性があるため、REDO損失公開が一定量を超えた場合、管理者はファスト・スタート・フェイルオーバーを実行しないことを選択できるようになりました。
この拡張により、さらに多くの障害時リカバリ構成で、Data Guardの自動フェイルオーバー機能を利用できるようになりました。
Oracle Data Guard構成内のスタンバイ・データベースに転送する必要がある場合には、ネットワークで送信する際にアーカイブREDOログを圧縮できるようになりました。
この機能により、Oracle Data Guard構成内のネットワーク・バンド幅の使用性が向上します。
REDO Applyがアクティブな場合にも、フィジカル・スタンバイ・データベースの問合せが可能になりました。
この新機能により、データ保護の実現のみでなく、プライマリ・データベースからの問合せのオフロードにフィジカル・スタンバイ・データベースを使用できるようになったため、Data Guardテクノロジの投資回収率が増加します。
この機能により、Oracle Data Guardのロール推移のパフォーマンスが向上します。
利点は、Oracle Data Guardを使用した障害時リカバリ構成の柔軟性と管理性が向上することです。
この機能を使用すると、管理者は、発生した場合にファスト・スタート・フェイルオーバーを開始する条件のリストを選択および構成できます。
この機能により、顧客の障害時リカバリ構成の柔軟性と管理性が向上します。
次の各項に示す新機能により、Oracle Data Guardの構成および使用が簡素化されます。たとえば、一部の機能で提供される統合されたパラメータはこれまでより数が少なく、SQL/Broker構文も統合されています。また、RMANおよびOracle RACなどその他の高可用性機能との統合も改善されました。その他の機能では、REDO転送、ギャップ解消、スイッチオーバー/フェイルオーバー時間、ロジカル・スタンバイ適用など、Oracle Data Guardの主要な機能のパフォーマンスが向上します。
SQL Applyを再起動せずに、特定のSQL Applyパラメータを構成できるようになりました。
この機能により、ロジカル・スタンバイ構成の管理性、稼働時間および自動化が改善されます。
このリリースの拡張内容は次のとおりです。
これらの拡張により、Data Guard Brokerをより幅広い障害時リカバリ構成に使用できるようになりました。
この機能により、Oracle Data Guardの管理関連のSQL文および初期化パラメータの使用が大幅に簡略化されます。
この機能の利点は、Oracle Data Guardを使用した障害時リカバリ構成の柔軟性と管理性が向上することです。
この機能では、SYNC
REDO転送の宛先に対するレスポンス時間に基づいて、NET_TIMEOUT
の適切な値がアドバイスされます。
利点は、Data Guardを使用した障害時リカバリ構成の柔軟性と管理性が向上することです。
フィジカル・スタンバイ・データベースは、レポートやテストなどの読取り/書込みアクティビティに対して、一時的にオープン(アクティブ化)できます。フィジカル・スタンバイ・データベースがそのような状態でも、プライマリ・データベースからREDOデータを受信できるため、データベース・ロールのレポート中でもプライマリ・データベースのデータを保護できます。
この機能には、障害時リカバリ、およびフィジカル・スタンバイ・データベースを使用したレポートやテストという2つの利点があります。
REDO転送のネットワーク・セッションを、SSLを使用して認証できるようになりました。これにより、厳密認証が可能になり、Data Guard構成でのリモート・ログイン・パスワード・ファイルの使用がオプションになります。
利点は、Oracle Data Guardを使用した障害時リカバリ構成のセキュリティが向上することです。
SQL Applyでは、プライマリ・データベースでパラレル・ヒント付きで実行された複数のDDLが、(パラレル・サーバーの可用性に基づいて)同時に実行されます。
プライマリ・データベースまたはスタンバイ・データベースのいずれかでOracle RACが使用されている環境で、ロジカル・スタンバイ・データベースにスイッチオーバーする場合、プライマリ・データベースでもロジカル・スタンバイ・データベースでもインスタンスを停止することなく、SWITCHOVER
コマンドを使用できます。
次の各項では、これまでOracle Data Guardでサポートされていなかったその他のデータベース・サーバー機能に対し追加されたサポートについて説明します。次に例を示します。
DBMS_SCHEDULER
パッケージが実行されたプライマリ・データベースのデータを、ロジカル・スタンバイ・データベースで保護できるようになりました。
この拡張により、Data Guard SQL Apply(ロジカル・スタンバイ・データベース)をより幅広いアプリケーションに使用できるようになります。
Oracleファイングレイン監査(FGA)を使用したプライマリ・データベースのデータを、ロジカル・スタンバイ・データベースで保護できるようになりました。
この新しいサポートにより、Data Guard SQL Apply(ロジカル・スタンバイ・データベース)をより幅広いアプリケーションに使用できるようになりました。つまりこの場合、セキュリティ機能が組み込まれたアプリケーションに使用できるようになりました。
ロジカル・スタンバイ・データベースを使用して、透過的データ暗号化(TDE)を使用しているプライマリ・データベース表のデータを保護できるようになりました。
この新しいサポートにより、Data Guard SQL Apply(ロジカル・スタンバイ・データベース)をより幅広いアプリケーションに使用できるようになりました。つまりこの場合、セキュリティ機能が組み込まれたアプリケーションを使用できます。
XMLType
データ型(CLOB
表現のみ)を含むプライマリ・データベース表のデータを、ロジカル・スタンバイ・データベースで保護できるようになりました。
この新しいサポートにより、Data Guard SQL Apply(ロジカル・スタンバイ・データベース)をより幅広いアプリケーションで使用できるようになります。
Oracle Virtual Private Database(VPD)を使用したプライマリ・データベース表のデータを、ロジカル・スタンバイ・データベースで保護できるようになりました。
この新しいサポートにより、Data Guard SQL Apply(ロジカル・スタンバイ・データベース)をより幅広いアプリケーションに使用できるようになりました。つまりこの場合、セキュリティ機能が組み込まれたアプリケーションに使用できるようになりました。
次の各項では、高可用性の一般的な改善内容について説明します。
トランザクションのフラッシュバックは、トランザクションおよびそれに依存するトランザクションを簡単にバック・アウトできる新機能です。このリカバリ操作では、UNDOデータを使用して、影響を受けるデータを元の状態に戻す対応する補正トランザクションが作成および実行されます。
この機能により、データベースはオンラインのまま、特定または一連のトランザクションおよびそれに依存するトランザクションが、1つのコマンドで簡単かつ迅速にバック・アウトされるため、論理リカバリ中の可用性が向上します。
メディア・リカバリの内部を一部最適化した結果、REDO Applyのパフォーマンスが大幅に向上しました。メディア・リカバリの待機イベント生成も拡張されました。
この機能により、メディア・リカバリおよびData GuardのREDO Apply(フィジカル・スタンバイ・データベース)のパフォーマンスが高速化されるため、より規模が大きく、トランザクションの多いデータベースのリアルタイムの障害時リカバリが可能です。
この機能により、LinuxおよびWindows間におけるデータベースの簡単な移動が可能になります。
これにより、LinuxおよびWindows間のトランスポータブル・データベースをクロス・プラットフォームのフィジカル・スタンバイとすることができ、LinuxおよびWindows間におけるデータベースの移動が簡単になります。
次の各項で説明する機能により、記憶域層の間での自動化されたポリシーベースのデータの移動が可能になり、保存および不変性の規則に準拠するためのメカニズムが提供されます。
履歴データ・ストアにより、存続期間中のレコードに対するすべてのトランザクションの変更内容を保存および追跡する機能が提供されます。
存続期間中のレコードのすべての状態は、データベースによって維持されます。このインテリジェント機能をアプリケーションに作成する必要はありません。この機能は、コンプライアンス・レポートおよび監査レポートに便利です。
これらの機能は、既存の機能の相互運用性、使用性、パフォーマンスおよび堅牢性に対する改善内容を説明します。
インスタンス・リカバリ中に破損ブロックが発生した場合、DBA_CORRUPTION_LIST
が自動的に移入されます。
バックアップ、メディア・リカバリおよびインスタンス・リカバリの各レベルで、ブロック検証が行われます。
旧リリースでは、ブロック・メディア・リカバリで、必要なアーカイブ・ログを適用する前に、ディスクまたはテープのバックアップから元のブロック・イメージをリストアする必要がありました。このリリースでは、フラッシュバック・ロギングが有効で、問題の破損ブロックの破損していない古いブロックが含まれている場合には、それらのブロックが使用され、リカバリ操作が高速化されます。
利点は、ディスクまたはテープのバックアップではなく、フラッシュバック・ログからブロック・イメージをリストアすることで、ブロック・メディア・リカバリにかかる時間が削減されることです。
KEEP
オプションを使用して作成された長期バックアップでは、バックアップの一貫性を保つために必要なアーカイブ・ログのみがバックアップされます。それ以上のアーカイブ・ログのバックアップは保存されません。
この機能では、長期バックアップのリカバリに必要なアーカイブ・ログのみをバックアップすることにより、オンラインのKEEP
長期バックアップに必要なアーカイブ・ログのバックアップ記憶域が削減されます。
この機能により、REDO検証が改善されます。
エンドツーエンドのREDO検証により、生成時におけるフォアグラウンドのREDOチェックサムが可能になります。これにより、チェックサム計算のCPUおよびキャッシュ効率が向上します。
新しいIMPORT CATALOG
コマンドにより、単一のカタログ・スキーマを別のカタログ・スキーマ(スキーマ全体または特定のデータベースIDのメタデータのみ)にマージできるようになります。
この機能では、異なるバージョンで作成された別々のカタログ・スキーマを単一のカタログ・スキーマにマージできるため、カタログ管理が簡略化されます。
大規模なデータファイルのバックアップで、各ファイルのワークロードを効率的に分散するために、複数のパラレル・サーバー・プロセスが使用されるようになりました。特に大規模ファイルの場合に便利です。
この機能では、各ファイルのワークロードがパラレル化されるため、大規模なデータ・ファイルのバックアップのパフォーマンスが向上します。
次の各項では、必要なリカバリの種類の決定とそれを適用するプロセスを自動化する機能を説明します。
データ・リカバリ・アドバイザは、データ障害を自動的に診断し、適切な修復オプションをレポートする組込みルールです。
データ・リカバリ・アドバイザにより、障害に対する適切な修復の実行が保証され、障害からのリカバリにかかる時間が削減されます。
この新機能により、自動データ修復(ADR)のサポートが追加されます。
自動データ修復(ADR)には、データベースが使用できない場合にメタデータを参照する機能が必要です。このプロジェクトでは、ADRをサポートするために既存のLogMinerの機能が拡張されます。
この機能では、新しい初期化パラメータDB_ULTRA_SAFE={off, data_only, data_and_index}
を作成することで、Oracle Databaseに影響を与える可能性のある、起こりうる様々なデータ破損からの保護を可能にする統合されたメカニズムを提供します。このパラメータは、DB_BLOCK_CHECKING
、DB_BLOCK_CHECKSUM
、DB_LOST_WRITE_PROTECT
などの関連するその他のパラメータの設定を制御します。また、Oracle Database内のその他のデータ保護動作(ASMへの順次ミラー書込みの要求など)も制御します。
この機能では、データ破損からの様々なレベルの保護を制御する統合メカニズムが提供されることにより、Oracle Databaseのデータ保護機能が強化されます。適切なタイミングでのデータ破損の検出を可能にすることにより、この機能では、Oracle Databaseに高可用性という重要な利点ももたらします。
書込みの欠落は、データベースに悪影響を与える可能性のある重大なデータ破損です。書込みの欠落は、実際には永続記憶域での書込みが発生していない場合に、I/Oサブシステムがデータベースのブロック書込みの完了を確認すると発生します。多くの場合、ハードウェアまたはソフトウェアの障害が原因で発生します。この機能により、プライマリ・データベースでの書込みの欠落の結果として発生するデータ破損の検出に、フィジカル・スタンバイ・データベースを使用できるようになります。
この機能は、フィジカル・スタンバイ・データベースを使用することでより包括的なデータ破損検出を可能にし、障害時リカバリへの投資以上の価値を生み出し、ビジネスの稼働時間要件の保守に役立ちます。
次に示す各機能を使用すると、アプリケーションのデータベース・オブジェクトの変更に必要な停止時間を大幅に削減できます。
データ定義言語(DDL)のコマンドには、内部構造の排他ロックが必要です。DDLコマンドが発行されると、これらのロックを使用できなくなる場合があり、DDLが直後に成功する可能性があっても文がすぐに失敗する原因になります。DDL_LOCK_TIMEOUT
初期化パラメータにWAIT
オプションを設定することで、この問題を解決できます。
WAIT
オプションは新しいデフォルトです。待機時間は(初期化パラメータ・ファイルで)インスタンス全体に指定され、セッション・レベルでの変更が可能です。
WAIT
オプションを指定すると、すぐにエラーを発生させるのではなく、そのようなコマンドの成功の猶予期間をより柔軟に定義できます。そのため、そのエラー処理には、追加のアプリケーション・ロジックが必要です。
列のデフォルト値は、NOT NULL
と指定された列のデータ・ディクショナリに保持されます。
デフォルト値でNOT NULL
制約付きの新規列を追加する場合に、すべての既存レコードにデフォルト値が保存されている必要はなくなりました。これにより、即時のスキーマ変更と既存のデータ・ボリュームからの独立が可能なだけでなく、領域も消費されません。
旧リリースでは、オブジェクト間の相互依存性は、オブジェクト全体の粒度を使用してメタデータにより記録されていました。たとえば、PL/SQLユニットP
がPL/SQLユニットQ
に依存するか、そのビューV
が表T
に依存するとします。これは、論理的な必要がない場合でも、依存オブジェクトが無効化される可能性があることを意味します。たとえば、ビューV
が表T
の列C1
、C2
およびC3
のみに依存し、新しい列C99
が追加される場合、ビューV
の妥当性は論理的には影響されません。それにもかかわらず、旧リリースでは、列C99
の追加によりV
が無効化されていました。
Oracle Database 11gでは、より粒度の高いレベルで依存性メタデータが記録されるため、C99
の追加でビューV
が無効化されることはありません。同様に、プロシージャP
がパッケージPKG
の要素E1
およびE2
のみに依存する場合に、要素E99
がPKG
に追加されても、プロシージャP
は無効化されません。(Oracle Database 10gでは、PKG
へのこの変更でプロシージャP
が無効化されます。)
依存しているオブジェクトへの変更による依存性オブジェクトの結果的な無効化を減らすことで、アプリケーションの可用性が向上します。開発環境および稼働中のアプリケーションの解析またはアップグレード時の両方に、利点があります。スキーマ・オブジェクトへの変更には互換性が必要で、結果的に無効化されることがないため、Oracle Databaseのパッチセットが適用される際に便利です。
非表示の索引は、索引の使用を禁止または削除するかわりの手段です。非表示の索引はDML操作に対して維持されますが、ヒントを使用して明示的に索引を指定しないかぎり、オプティマイザによって使用されることはありません。
アプリケーションを完全にオフラインにできない状態で、アプリケーションの変更が必要な場合があります。オンライン・アプリケーションのアップグレードなど、標準以外の特定の操作のために、既存のアプリケーションの動作に影響を与えずに、非表示の索引を一時的に作成します。さらに、非表示の索引を使用して、すぐに削除せずに索引の削除をテストできるため、本番環境でテストのための猶予期間を設けることができます。
このリリースでは、Oracle Databaseに、マテリアライズド・ビュー・ログにセッションレベルの制御が追加されました。マテリアライズド・ビュー(マテリアライズド・ビュー・ログ)の変更の取得は、その他のセッションで行われた変更のロギングを継続しながら、個々のセッションごとに無効化できます。
この機能により、アプリケーションのアップグレードのための停止時間が短縮されます。
この機能により、オンライン表の再定義後に、依存PL/SQLパッケージを再コンパイルする必要が最小化されます。再定義でPL/SQLパッケージが論理的に影響されない場合、再コンパイルは不要です。この最適化は、デフォルトでオンにされています。
この機能により、オンライン表の再定義後に、依存PL/SQLを手動で再コンパイルする時間と作業が削減されます。また、再定義により論理的に影響されないビュー、シノニムおよび表に依存するその他のオブジェクト(トリガーを除く)も含まれます。
高並列環境で、オンラインの索引作成および再構築の最初と最後にDMLブロックのロックを取得することにより、待機中のDML操作が増加するため、システム使用率の急な降下および上昇の原因になります。データベースの全体的な問題ではありませんが、システム使用率のこの異常が原因でオペレーティング・システムのアラート・レベルが上がる可能性があります。この機能により、オンライン索引の作成または再構築時にDMLブロックのロックの必要がなくなります。
旧リリースのオンライン索引の作成および再構築には、再構築の開始時と終了時に短期間のDMLブロックのロックが必要でした。つまり、DMLアクティビティが中断されるポイントが2回ありました。このDMLブロックのロックが不要になり、オンライン索引操作が完全に透過的になりました。
旧リリースでは、ログまたはマテリアライズド・ビューが定義されている場合には、表を再定義できませんでした。
この機能により、その制限がなくなりました。
トリガー、索引およびその他の類似の依存オブジェクトと同じように、マテリアライズド・ビュー・ログを個別にクローニングできるようになりました。再定義が終わると、ROWID
ログが無効化されます。まず、すべての依存マテリアライズド・ビューを完全にリフレッシュする必要があります。
Oracle Database 11gには、新しいALTER TABLE
構文が導入されています。次に例を示します。
ALTER TABLE <name> READ ONLY および ALTER TABLE <name> READ WRITE
所有者に対してもファイルを読取り専用にするために、オペレーティング・システムにより先例が設定されます。旧リリースでは、表の所有者以外のユーザーに対して、(SELECT
のみを付与することにより)表を読取り専用にすることができました。この機能では、所有者が意図せずに表に対してDMLを実行することも防げます。
次の各項では、Oracle Database 11gリリース1(11.1)のRMANの統合、簡略化およびパフォーマンスの機能について説明します。
この機能には、次の拡張内容が含まれます。
CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY
を使用して指定されます。
BACKUP .. DELETE INPUT
またはDELETE ARCHIVELOG
を使用して削除できます。
この機能により、複数のコンポーネントで使用する場合のアーカイブ・ログの管理が簡略化されます。また、アーカイブ・ログのバックアップ時や、フラッシュ・リカバリ領域のアーカイブ・ログが存在しない場合またはアクセス不可になった場合の可用性が向上します。この場合、バックアップはオプションのアーカイブ・ログの宛先にフェイルオーバーされ、アーカイブ・ログのバックアップが継続されます。
フィジカル・スタンバイ・データベースで、ブロック変更の追跡を有効化できます。増分バックアップでは、RMANにより変更トラッキング・ファイルが使用され、最後の増分バックアップ以降に変更されたブロックが迅速に特定され、それらのブロックのみの読取りおよび書込みが実行されます。
この機能により、フィジカル・スタンバイ・データベースにおいて、旧リリースよりも高速な増分バックアップが可能です。
このリリースでは、圧縮されたバックアップ・セットを作成する際のパフォーマンスが、旧リリースよりも大幅に向上しています。
バックアップ圧縮のパフォーマンスの向上が利点です。
Data Guardとの統合の改善には、次の内容が含まれます。
カタログを使用している場合、この機能により、すべてのプライマリおよびフィジカル・スタンバイ・データベースにおけるバックアップおよびリカバリ操作が簡略化されます。
拡張されたDUPLICATE
コマンドを使用し、既存のバックアップなしで、リモート・サイトのクローン・データベースを、ネットワーク上で直接簡単に作成できるようになりました。ASMからASMへのネットワーク上のDUPLICATE
もサポートされています。
この機能により、DUPLICATE
コマンドを実行する前に、バックアップをリモート・サイトにコピーまたは移動する必要がなくなりました。これにより、DBAの時間と作業を削減し、リモート・サイトの追加のコピー用の記憶域をなくすことができます。
バックアップ中、バックアップのリカバリに不要なUNDO(すでにコミットされているトランザクションなど)はバックアップされません。これまでのリリースでは、すべてのUNDOがバックアップされていました。この新しい機能は、CONFIGURE BACKUP UNDO OPTIMIZATION
を使用して有効化します。バックアップのUNDO_RETENTION
期間内のアクティブなUNDO(今後のフラッシュバック問合せまたはフラッシュバック表の操作用など)を保存する場合には、UNDO_RETENTION
期間外の無効なUNDOを削除する目的でのみ使用できるオプションがあります。
バックアップの開始時間までにコミットされていたトランザクションに適用されるUNDOはアックアップしないことにより、バックアップ全体の時間および記憶域が削減されることが利点です。
読取り専用であるか読取り/書込みモードであるかにかかわらず、転送された表領域をバックアップできます。この機能により、バックアップを作成する前に、転送された表領域を読取り/書込み可能にする必要があるという旧リリースでの制限がなくなります。
この機能により、読取り/書込み可能にせずに、転送された表領域をすぐにバックアップできます。
次の各項では、Oracle Database 11gリリース1(11.1)のデータベース機能全体について説明します。
データベース・ユーティリティを使用すると、パフォーマンス、信頼性および管理性が高い状態で、Oracleデータベース間で大量のデータおよびメタデータを移動できます。このカテゴリには、アップグレード/ダウングレード、データ・ポンプ・エクスポートおよびデータ・ポンプ・インポート、メタデータAPIおよびSQL*Loaderユーティリティが含まれます。
データ・ポンプを使用すると、ダンプ・ファイル・セットのメタデータを圧縮できます。これにより、ダンプ・ファイルは10〜15%縮小されます。
このリリースでは、データ・ポンプにより、データやメタデータを含むダンプ・ファイル・セットを圧縮する機能が追加されます。
この機能を使用すると、メタデータ、行データまたはダンプ・ファイル・セット全体の圧縮を指定できます。
データ・ポンプAPIは、障害後にデータ・ポンプ・ジョブを終了せずに個々のワーカー・プロセスを再起動できるよう拡張されました。この拡張によって、データ・ポンプのパラレル機能を使用する際の可用性が向上します。
新しいDATA_REMAP
APIを使用すると、エクスポートまたはインポート中にデータに適用する変換を指定できます。本番システムからテスト環境へデータを移動する際に必要になる可能性のあるデータ型、構造または形式を維持したまま、機密データを不明瞭化する必要がある場合に便利です。
Oracle Database 11gのアップグレードには、情報収集およびレポートの拡張された機能が含まれています。アップグレード前の情報ユーティリティではリソースの見積りが改善され、アップグレード後のステータス・ツールではエラー・メッセージの生成と表示が改善されました。
過去3つのデータベース・リリースに渡り、手動アップグレードおよびDatabase Upgrade Assistant(DBUA)を使用して実行されるアップグレードの両方を簡略化するため、改善が行われてきました。この機能により、データベースのアップグレードの複雑さがさらに削減され、データベースのアップグレードが成功したかどうかの判断に使用できるより多くの情報がDBAに提供されます。
Oracle Database 11gより前、ダイレクト・パスAPIを使用している場合には、オブジェクト列またはオブジェクト表にロードできるオブジェクト・タイプは1つのみでした。
この機能ではそのサポートが拡張され、ダイレクト・パス・インサートを使用して、列オブジェクトまたはオブジェクト表に複数のサブタイプをロードできるようになりました。これにより、オブジェクトおよびXMLスキーマ・データのサポートが強化されます。データ・ポンプで、XMLデータのエクスポートおよびインポートがサポートされるようになりました。
このリリースでは、データ・ポンプにより、データやメタデータを含むダンプ・ファイル・セットを暗号化する機能が追加されます。暗号化された列、メタデータ、行データ、すべてまたは暗号化されたものを除く暗号化を指定することで、ダンプ・ファイル・セットの一部またはすべての暗号化を選択できます。
顧客のニーズは、ダンプ・ファイルに存在する機密データを保護することです。
メタデータAPIの異機種間オブジェクト型が拡張され、元のエクスポート(exp)で現在サポートされているすべてのオブジェクト型がサポートされています。具体的には、XMLスキーマおよびスキーマベースの表がサポートされるようになりました。
データ・ポンプでは、編集可能なXMLもサポートされています。ディクショナリからメタデータを抽出して操作し、同一または別のデータベースでオブジェクトを再作成できるよう、そのメタデータをDDLに変換します。
TABLE_EXPORT
異機種間オブジェクト型は、AQ表を正しくサポートするよう拡張されています。これにより、AQ表をエクスポートできます。表のすべての依存オブジェクトもエクスポートできます。
メタデータAPIを使用すると、単一のパーティションで定義されたローカル索引を、パーティション化されていない表の索引に変換できます。
旧リリースのデータ・ポンプでは、外部表の行エラーは表全体のロードが中止される原因となり、表の再ロードが必要でした。
この機能を使用すると、行エラーは表のロードが中止される原因にならないため、ロード時間が節約されます。
旧リリースでは、データ・ポンプのトランスポータブル表領域メカニズムは、エクスポートする物理表領域の指定にのみ使用できました。この機能により、表全体の移動やパーティションまたはサブパーティションの交換を行わずに、表の1つ以上のパーティションまたはサブパーティションの移動に使用できるパーティション・モードが追加されます。
また、既存の表の一部または各パーティションの別の表として、パーティションをターゲット・データベースにインポートできます。
SQL*Plusの問合せで、BLOB
列がサポートされるようになりました。
この機能を使用すると、BLOB
列のコンテンツを検証できます。
次の各項では、Oracle Database 11gリリース1(11.1)のビジネス・インテリジェンスおよびデータ・ウェアハウスの機能について説明します。
これらの機能により、操作および分析データベースの統合が強化され、情報がより高品質で最新になります。
旧リリースでは、チェンジ・テーブルをパージすると、消費済のすべての変更データがチェンジ・テーブルから削除されました。変更データのパージの拡張機能により、変更データのパージに日付範囲ベースのモデルを使用できるようになりました。
この機能により、チェンジ・テーブルからの変更データのパージの柔軟性が向上します。ユーザーは、データをパージする日付範囲を指定できます。
このリリースでは、変更データのサブスクリプション・ウィンドウを前後に移動できます。
この機能を使用すると、データを変更するためのサブスクリプション・ウィンドウの維持が簡単になります。サブスクリプション・ウィンドウの定義に対するユーザーの制御が強化されます。
この機能により、同期チェンジ・データ・キャプチャ(CDC)が開始されたらオフにし、必要な際にオンにできるインタフェースが追加されます。
この機能を使用すると、ユーザーは必要に応じて、柔軟に同期CDCの使用を制御できます。
拡張されたDML追跡機能により、ダイレクト・パス・ロードおよびパーティション・メンテナンス操作を含む、すべてのDML操作に対するチェンジ・キャプチャが可能になります。チェンジ・テーブルの別のレコードは、そのような操作が行われたことを示します。この機能により、非同期モードのCLOB
、NCLOB
およびBLOB
を含むデータ型に対するチェンジ・データ・キャプチャのサポートも拡張されます。
以前のチェンジ・データ・キャプチャでは、パーティション・メンテナンス操作の結果であるダイレクト・パス・ロード操作または暗黙的なデータ変更は必ずしも取得されませんでした。拡張されたDML追跡機能では、この制限が取り除かれました。
新しいカタログ・ビューでは、マテリアライズド・ビュー・データのどのセクションがリフレッシュまたは失効されたかを示すことで、指定されたマテリアライズド・ビューのパーティション・チェンジ・トラッキング(PCT)情報が表示されます。
これは、マテリアライズド・ビューのパーティションの失効情報を参照できるユーザーには重要な情報です。マテリアライズド・ビューの使用性およびメンテナンス性に影響があります。
このリリースでは、インライン・ビューを含む問合せをサポートするために、クエリー・リライトが拡張されました。
この機能を使用すると、より多くの問合せがクエリー・リライトの対象になるため、システムのスループットおよびパフォーマンスが向上します。
このリリースでは、表がリモートの場合に問合せをサポートするために、クエリー・リライトが拡張されました。
この機能を使用すると、より多くの問合せがクエリー・リライトの対象になるため、システムのスループットおよびパフォーマンスが向上します。
次の改善内容により、マテリアライズド・ビューのリフレッシュ操作がより高速になりました。
この機能により、マテリアライズド・ビューのリフレッシュに必要な時間が短縮されます。
後続の各項の新機能の内容は次のとおりです。
コンポジット・リスト・ハッシュ・パーティション化により、パーティション・ワイズ結合など、リスト・パーティション化されたオブジェクトのハッシュ・サブパーティション化が可能になります。
コンポジット・リスト・ハッシュ・パーティション化により、ビジネス・ニーズをオブジェクトのパーティション化に最適にマップするための別のモデル化計画が提供されます。
コンポジット・リスト・リスト・パーティション化により、2つのディメンションに従って論理的なリスト・パーティション化を実行できます。たとえば、country_id
によるリスト・パーティションやsales_channel
によるリスト・サブパーティションです。
コンポジット・リスト・リスト・パーティション化により、ビジネス・ニーズをオブジェクトのパーティション化に最適にマップするための別のモデル化計画が提供されます。
コンポジット・リスト・レンジ・パーティション化により、指定されたリスト・パーティション化計画内での論理的なレンジ・サブパーティション化を実行できます。たとえば、country_id
によるリスト・パーティションやorder_date
によるレンジ・サブパーティションです。
コンポジット・リスト・レンジ・パーティション化により、ビジネス・ニーズをオブジェクトのパーティション化に最適にマップするための別のモデル化計画が提供されます。
コンポジット・レンジ・レンジ・パーティション化により、2つのディメンションに従って論理的なレンジ・パーティション化を実行できます。たとえば、order_date
によるパーティションやshipping_date
によるレンジ・サブパーティションです。
コンポジット・レンジ・レンジ・パーティション化により、ビジネス・ニーズをオブジェクトのパーティション化に最適にマップするための別のモデル化計画が提供されます。
この新しいパーティション化計画では、範囲のパーティション作成が完全に自動化されます。つまり、新しいパーティションは必要な時に作成されます。間隔基準を定義することで、データベースは新規または編集されたデータの新しいパーティションの作成時期を認識します。
新しいパーティション作成の管理は、面倒で非常に繰返しの多いタスクです。これは、特に新規の日次パーティションの追加など、狭い範囲を対象とするパーティションの予測可能な追加の場合に当てはまります。必要に応じてパーティションを作成することで、時間隔パーティション化により、この操作が自動化されます。
このリリースでは、組込みのすべてのOracle SQL操作およびファンクションのメタデータには、ディクショナリの固定表を介してアクセスできます。
この機能を使用すると、アプリケーション層にファンクション使用メタデータを重複して維持せずに、すべてのサード・パーティ・ツールで、組込みの任意のOracle SQL操作またはファンクションを利用できます。
Oracleの圧縮機能では、ヒープ表を圧縮形式で保存できるため、ディスク・ストレージ、I/OおよびREDOログを大幅に節約できます。この機能により、OLTP環境への圧縮機能が拡張されるため、すべてのDMLに対して圧縮がシームレスに機能します。
Oracleのヒープ・セグメント圧縮(HSC)は、データ・ウェアハウス環境で高い評価を受けてきました。この機能により、圧縮がOLTP環境に拡張されるため、一般的なINSERT
、UPDATE
およびDELETE
を含むすべてのDMLで圧縮が適切に機能します。
パーティション化キーは、アクティブな主キーまたは外部キー制約によって強制された既存の親子関係を介して解決されます。
この機能の利点は、キー列を複製せずに親表からパーティション・キーを継承することで、親子関係のある表を論理的に同一レベル・パーティション化できることです。論理的な依存性によりパーティション・メンテナンス操作も自動的にカスケードされるため、アプリケーション開発がより簡単になり、ミスも発生しにくくなります。
ピボットおよびアンピボット演算子は、SELECT
文のFROM
句にある表の式に対する拡張です。ピボットでは、処理中のデータが集計され、値は複数行から複数列に分散されます。一般的にピボットは、ソース・データよりも列が多く行が少ない結果セットの作成に使用されます。ピボット演算子では、複数のピボット列、複数集計、ワイルドカードおよび別名がサポートされています。アンピボットでは、データはピボットとは反対の方向に移動されます。各入力行において、アンピボットでは値が複数列から複数の出力行に移動されます。このプロセスにより、ソース・データよりも列が少なく行が多い結果セットが作成されます。アンピボットでは、複数のアンピボット列、複数のメジャー列および別名がサポートされています。
ピボットでは、多数の行がコンパクトな結果セットに凝縮された集計済のクロス表出力が作成されます。たとえば、各行に1か月分の売上が保持された入力データは、1行に12か月の売上が保持され、それぞれの列に各月の売上が入力された出力に移動されます。ピボットは、複数の入力行の単一の出力行への結合にも使用できるため、表を自己結合せずに行間の比較を実行できます。アンピボットは、後続の関係操作に便利な形式にデータを変形します。たとえば、ソース・データ・セットで1行に12か月の売上値が保持されている場合、アンピボットでは、各ソース行をそれぞれ1か月の売上データを保持する12の出力行に再形成できます。同様に、アンピボットの結果は、ソース・データ・セットで使用されるSQLよりさらに簡単で効率的なSQLを使用して操作できます。
システムのパーティション化により、任意の表および索引に対するアプリケーション制御のパーティション化が可能になります。データベースにより、データ配置ルールを必要とせずに、オブジェクトをパーティションに分解する機能が提供されます。データの配置および取得はすべて、アプリケーションによって制御されています。
システムのパーティション化により、よく知られたパーティション化の利点(スケーラビリティ、可用性および管理性)がもたらされますが、パーティション化および実際のデータの配置はアプリケーションによって制御されています。
仮想列は、その結果が表の列のメタデータになる式を評価することによって定義されます。仮想列は、表の作成時または変更時に定義できます。
仮想列により、アプリケーション開発者は、領域を消費せずに表の列(メタデータ)の定義として計算および変換を定義できます。これらの仮想列に関する追加の統計がオプティマイザに提供されることにより、問合せの最適化が拡張されるだけでなく、この機能によりアプリケーション開発はより簡単になり、ミスが発生しにくくなります。
Oracle Database 11gでは、表の仮想列で定義されたキー列をパーティション化できます。
オブジェクトを論理的にパーティション化するためのビジネス要件が、既存の列に1対1で一致しないことがあります。Oracleのパーティション化機能は、仮想列でのパーティション計画の定義を可能にし、ビジネス要件がより広範囲で一致するよう拡張されました。
次の各項では、リレーショナル・データ・ウェアハウスに対するOLAPのメリットを高め、OLAPの中心となる機能を拡張するための、OLAPと関連テクノロジの統合について説明します。
キューブのコストベース集計では、キューブの効率的な更新と問合せの両方を実現するために、統計ベースの方法で事前集計および保存に最適なキューブ内のデータが判断されます。
コストベース集計により、DBAには、汎用目的のサマリー管理ソリューションとして、使用しやすいキューブの最適化方法が提供されます。DBAが指定する必要があるのは、サマリー・データを最適化するタスクに適用する必要のあるリソースの量のみです。コストベース集計により、非定型問合せおよびキューブのレポートをサポートするために最善のサマリー管理計画が自動的に確認および実行されます。これにより、リフレッシュ時間が短縮され、問合せ時間も改善されます。
キューブにより編成されたマテリアライズド・ビューでは、SQLベースのアプリケーション用のキューブは、リフレッシュおよびクエリー・リライトの両方に使用できるマテリアライズド・ビューとして表されます。キューブにより編成されたビューは、OLAPキューブを使用して保存または計算されたデータにアクセスするメタデータ・オブジェクトで、キューブから新しい記憶域へのデータのレプリケートは行いません。
キューブにより編成されたマテリアライズド・ビューにより、ディメンションおよびキューブの更新が簡単で効率的になり、問合せのパフォーマンスが向上します。
キューブにより編成されたマテリアライズド・ビューを使用すると、データベース管理者は、Oracle Databaseのマテリアライズド・ビュー・リフレッシュ・システムを使用してOLAPディメンションおよびキューブの更新を管理できます。そのため、これまでのDBAの技術やマテリアライズド・ビュー・ログ表を使用した増分的なデータのロードを活用できます。
キューブにより編成されたマテリアライズド・ビューでは、SQLベースのアプリケーションによる詳細なリレーショナル表の問合せが可能で、OLAPキューブ内のサマリー・データに自動的かつ透過的にアクセスできるため、問合せのパフォーマンスが向上します。
キューブのパーティション化のスケーラビリティが向上したことにより、キューブで効率的に維持できるパーティションの数が増加しました。
OLAPキューブのファイングレイン・パーティション化により、より大規模なキューブがサポートされ、キューブの更新処理がより効率的になります。ファイングレイン・パーティション化を使用すると、より多くのディメンション・メンバーでキューブをパーティション化できます(Oracle Database 10gリリース2と比較した場合)。さらに多くのパーティションに対するサポートを使用して、より大規模なキューブ(より長い時間間隔を保持するキューブなど)を作成できます。少数のパーティションは、キューブ更新中により迅速に処理されます。
OLAPキューブおよびディメンションのセキュリティは、アナリティック・ワークスペース、キューブおよびディメンションに対するOracle Databaseのオブジェクト権限(SELECT
、INSERT
、UPDATE
およびDELETE
)をサポートするよう拡張されています。たとえば、GRANT SELECT ON sales_cube
です。
OLAPディメンションおよびキューブに対するファイングレイン・アクセス・コントロールは、ディメンションおよびキューブ内のデータに対するアクセス権限(SELECT、INSERT、UPDATEおよびDELETE)の付与をサポートします。このファイングレイン・アクセス・コントロールは、OLAP 11gおよびAnalytic Workspace Managerでもサポートされています。
マルチディメンション・データ型をよりセキュアで管理しやすくすることを目的とし、一般のOLAPまたはデータベース・ユーザーのために、この一連の機能で、マルチディメンション・データ型とデータベースの標準の操作機能の統合が強化されます。
SQLオプティマイザにより、OLAPキューブおよびディメンションの統計や、キューブとディメンション間の結合のOLAPキューブへの送信に対するサポートが追加されます。最適化には、リレーショナル表、およびディメンションとキューブのビューの間の効率的な結合も含まれます。
SQLオプティマイザでOLAPキューブおよびディメンションがサポートされることにより、全体的なパフォーマンスが向上します。また、キューブに対して効率的に実行される様々な種類のSQL(件数および結合を含む)がサポートされています。主な利点は、様々なSQLベースのツールおよびアプリケーションで、キューブの問合せを簡単に実行できることです。
この新機能により、圧縮キューブの内部的なスケーラビリティが高まり、パフォーマンスが向上します。
この機能では、大規模な圧縮キューブがサポートされており、多様なデータ・セットが含まれるよう圧縮キューブの適用の幅が広がります。
統合されたOLAP APIのメタデータ変更管理には、アナリティック・ワークスペース(AW)ディメンション・オブジェクトの初期デプロイ、これらのオブジェクトの依存性追跡、新バージョンのAWおよびAWメタデータのサイト固有のカスタマイズでのマージが含まれます。
統合されたOLAP APIのメタデータ変更管理により、ディメンション・モデルにサイト固有の変更を行うことができます。この機能は、主にOracleアプリケーションでサポートされています。
Oracle Database 11gでは、データ・マイニング処理の管理の簡素化、データ・マイニングとSQLの統合の強化、および新しい分析機能の導入が行われています。
Oracle Database 11gのこの新機能では、次のことを実行できます。
この機能により、データ・マイニング処理の最も難しい部分である、データの準備の自動化がサポートされます。その他の利点は、モデル作成およびモデルのスコアリング・アクティビティを簡略化する全体的なデータの準備処理の簡略化と自動化です。
Oracle Database 10gリリース2では、データ・マイニング・モデルは、データベースにおいてその他のDBMSオブジェクトと同じクラス・レベルでは定義されませんでした。Oracle Database 11gでは、モデルおよびData Mining環境は次のように拡張されました。
DMSYS
スキーマの廃止(必要な情報はSYS
に移行)
現在では、データ・マイニング・モデルは、その他のデータベース・オブジェクトに類似しています。これにより、アクセス権の割当て、さらに、一般的にはデータ・マイニング・モデルの完全なデータベース・オブジェクトとしての管理が可能です。
Oracle Data Mining Java APIにより、多重線形およびロジスティック回帰など、Oracle Data Mining 11gの新機能のためのアルゴリズムとファンクションが提供されます。これにより、11gでは、SQLとPL/SQL API、およびJava API間で同等の機能が維持されます。
Oracle Data Mining Java APIの拡張内容は、Java Data Mining標準(JSR-73)に準拠しています。
多変量線形回帰(MLinR)を使用すると、データ・アナリストは、一連の入力属性とターゲット(数値)の出力属性との関係を示す伝統的な統計モデルを作成できます。また、MLinRでは、変数間の関連の強さが検出されます。Oracle Data MiningのMLinRでは、多数の入力属性がサポートされています。大部分のMLinR実装ではこれが十分にサポートされていないため、この点が差別化要因となっています。MLinRモデルでは、Oracle Database 10gリリース2で導入されたPREDICTION
演算子を使用してデータをスコアリングできます。また、グローバルおよび属性レベルの両方でレポートできる、複数のモデル診断があります。
Oracle Database 11gでは、Oracle Databaseで使用可能な統計機能の強化として、多変量線形回帰のサポートがOracle Data Miningに対して追加されています。
多変量ロジスティック回帰(MLogR)を使用すると、データ・アナリストは、一連の入力属性とターゲット(カテゴリ)の出力属性との関係を示す伝統的な統計モデルを作成できます。また、MLogRでは、変数間の関連の強さが検出されます。Oracle Data Miningの多変量ロジスティック回帰(MLogR)では、多数の入力属性がサポートされています。大部分のMLogR実装ではこれが十分にサポートされていないため、この点が差別化要因となっています。MLogRモデルでは、Oracle Database 10gリリース2で導入されたPREDICTION
演算子を使用してデータをスコアリングできます。また、グローバルおよび属性レベルの両方でレポートできる、複数のモデル診断があります。
Oracle Database 11gリリース1(11.1)では、データベースで使用可能な統計機能の強化として、多変量ロジスティック回帰のサポートがOracle Data Miningに対して追加されています。
Oracle Database 10gリリース2で導入された予測分析(PA)パッケージでは、統計に関する知識がなくてもData Miningを活用できるよう、ビジネス・ユーザー向けに非常に簡単なインタフェースが提供されました。また、Oracle Database 10gリリース2では、PREDICT
(分類および回帰)およびEXPLAIN
(属性の重要性)に関数が提供されていました。Oracle Database 11gでは、指定されたターゲット属性のプロファイルを開発するために、新しい予測分析(PA)の方法が追加されました。PROFILE
では、ディシジョン・ツリー・アルゴリズムが使用されます。
PROFILE
予測分析では、ビジネスの問題を特定する指定されたターゲット属性を考慮して、レコードが自動的にソートされ、類似するレコード(または顧客)のパターンおよび関係が検出されます。たとえば、PROFILE
を使用して、回転売買を行う顧客と行わない顧客の様々なプロファイルを検出できます。同様に、PROFILE
は、重要な顧客、不正を働く顧客、病気の患者などのプロファイルの検出にも使用できます。
Data Miningのスコアリング用のSQL組込み機能(PREDICTION
など)は、Oracle Database 10gリリース2で追加されました。Oracle Database 11gリリース1は、次の内容を実現するよう拡張されています。
PREDICTION
ファミリのコスト・マトリックスの識別で見積りを下げ、コストごとに簡単で最適な予測を提供
GET_MODEL_DETAILS_*
ファンクションに詳細を追加
PREDICTION_BOUNDS
を導入次の各項では、Oracle Database 11gリリース1(11.1)のクラスタ化機能について説明します。
次の各項では、Oracle RACやクラスタ化のどちらにも不慣れなユーザーでも、クラスタ化およびOracle RACの設定とインストールを簡単に実行できるようにするためのOracle RACの拡張内容について説明します。
この機能により、Enterprise ManagerのGUIインタフェースを使用したOracle RACのパフォーマンス監視および診断が改善されます。特に、次の機能が改善されます。
この拡張されたGUIインタフェースにより、Oracle RACの管理が簡単になります。
この機能により、Oracle RACの全機能のグラフィカル構成ユーティリティ(DBCA、DBUAおよびNetCA)が更新されます。また、シングル・インスタンスASMをクラスタASMに変換するため、rconfig
ユーティリティが拡張されました。
ウィザード駆動のGUI管理ツールを使用することで、クラスタ・データベース環境の管理コストが削減されることが利点です。
Oracle RAC環境では、サービス用のセッション・プールでサービス・メトリックを使用して、ランタイムにおける異なるインスタンス間でのセッションのロード・バランシングが行われます。OCIおよびOCCIアプリケーションでは、必要なイベントがオンの状態で、この機能がデフォルトで有効化されています。
OCIセッション・プールを使用するアプリケーションでは、提供されたリソースのスループットが最適になります。アプリケーションの変更は不要です。ロード・バランシングは、サービスに指定された目標を実現します。インスタンスがハングまたは応答不能状態になると、接続は、サービスの提供が可能なその他のインスタンスに移動されます。
パラレル実行はサービス定義に対応しており、自動的に適切なPARALLEL_INSTANCE_GROUP
設定が利用されるため、サービスに制御されている情報のグリッド環境にPARALLEL_INSTANCE_GROUP
を明示的に設定する必要はありません。
Oracle RACサービスおよびパラレル実行用の適切なノードの制御は、サービスの設定によって統合および制御されています。これにより、Oracle RACサービスに制御されている環境では、パラレル実行が完全に透過的になります。
単一のXAトランザクションで、複数のOracle RACインスタンスに対応できるようになりました。個々のブランチには、クラスタ内の異なるインスタンスで実行する機能があります。
この機能により、XAを使用するアプリケーションはOracle RAC環境を完全に活用できるため、アプリケーションの高可用性とスケーラビリティが向上します。
次の各項では、コンテンツ管理サービスの拡張内容について説明します。
次の各項では、Oracle SecureFilesと呼ばれる、このリリースのLOBインフラストラクチャの拡張内容について説明します。拡張には、組込みの圧縮および暗号化が含まれます。
Oracle Databaseでは、デフォルトで、大規模なセッション・データ・ユニット(SDU)が使用されます。ネットワーク・セッションのSDUサイズを最適化すると、大量のデータ転送のパフォーマンスが大幅に向上します。
この機能では、ネットワーク・レベルにおけるゼロコピーおよびベクトルI/Oも利用されています。
高速のバルク・データ転送を使用すると、大量のデータ転送のパフォーマンスが大幅に向上します。
OCIでは、最適化された情報を取得する際(特にデータ・サイズが小さい場合)にプリフェッチするLOBデータの量を、プログラムで設定できるようになりました。
データのサーバーへのラウンド・トリップが少ないため、比較的小さなLOBに頻繁にアクセスするビジネス・アプリケーションは高速で稼働します。
この機能により、完全に再設計されたラージ・オブジェクト(LOB)データ型が導入され、パフォーマンス、管理性およびアプリケーションの開発のしやすさが大幅に改善されます。また、新しい実装により、優れた圧縮や透過的な暗号化など、高度な次世代機能が提供されます。
この機能により、Oracle Databaseのネイティブのコンテンツ管理機能が大幅に強化されます。
この機能を使用すると、SecureFilesを明示的に圧縮し、ディスク、I/OおよびREDOログを節約できます。
この機能の利点は次のとおりです。
Oracle Databaseでは、重複したSecureFiles LOBデータを自動的に検出し、コピーを1つのみ保存することにより領域を節約できるようになりました。
この機能により、SecureFiles用のディスク・ストレージ、I/OおよびREDOログの節約が実装されます。
この機能により、SecureFilesに新しい暗号化機能が導入されます。暗号化データはインプレース保存され、ランダム読取りおよび書込みに使用できます。
この機能の利点は、データ・セキュリティの拡張です。
次の各項では、次の内容を含むTextの管理性について説明します。
Oracle Database 11gには、Oracle Textによる様々な言語のドキュメント処理を向上させる多言語および言語のサポートが含まれています。新しいコンポーネントが2つ導入されました。
Oracle Textでは、すべてのUnicode言語のキーワード検索がサポートされています。ただし、ステミングや代替スペルなどの高度な機能には、異なる言語でのレクサーのサポートが必要です。新しい多言語および言語のサポートにより、アラビア語、ヘブライ語およびロシア語を含む28言語で拡張検索が可能になります。
この機能では、大規模なテキスト索引の作成を容易にする3つの拡張が行われました。
大規模なテキスト・ウェアハウスでは、アプリケーションは、継続的に索引付けプロセスを実行することはできません。この機能では、扱いやすい方法で、アプリケーションによる大規模な索引の作成を可能にするインタフェースが提供されます。
この機能では、Oracle Textに対するOracle Enterprise Managerのサポートが改善されました。
DBAは、Oracle Enterprise ManagerからOracle Textを管理できるようになりました。
この機能により、アプリケーションが変更された索引に切替え可能になるまで不要な問合せ結果を生成せずに、Oracle Textの索引を再作成できるようになります。
ユーザーは、再作成中に元表のDMLおよび問合せ機能を維持したまま、新しいプリファレンス値を使用してOracle Textの索引を再作成できます。ユーザーは、一度の操作で索引を再作成できます。または、再作成の各ステージを手動で順に実行することも可能です。
次の各項では、スケーラビリティの向上を目的としたOracle RACとの機能の統合、およびパフォーマンスの向上を目的とした、オプティマイザなどのその他のサブシステムとの機能の統合について説明します。
この機能により、ORDER BY
構造化基準、構造化範囲またはその両方の組合せが容易になります。これは、索引の作成時におけるFILTER BY
およびORDER BY
構造化列の指定を可能にすることで実現されます。
この機能により、今日のWebアプリケーションに必要なリレーショナルおよびテキスト述語を含む、複合問合せのパフォーマンスが向上します。
この機能により、構造化/ソート・データ(SDATA
)と呼ばれる新しいタイプのドキュメント・セクションが導入されます。SDATA
セクションのコンテンツは入力され、トークン化されません。SDATA
セクションでは、範囲および等価問合せ操作がサポートされています。
この機能の利点は、より多くのメタデータをTextの索引に送信することで、ドキュメント・メタデータの問合せが高速になることです。
これまで、許可される最大パーティション数は9,999でしたが、制限が1,223,054に増加されました。
この増加は、Textユーザーにとって大きな利点です。
ユーザー定義のスコアリングにより、CONTAINS
問合せでのテキスト・コンテンツのスコアリング方法を定義するメカニズムが提供されます。このメカニズムでは、DEFINESCORE
またはDEFINEMERGE
演算子を使用できます。
日付のような構造化値に基づいてドキュメントをスコアリングする方法を、より直接的に制御することでアプリケーションが改善される場合もあります。ユーザー定義のスコアリング機能により、アプリケーションでテキスト・コンテンツのスコアリングをカスタマイズできます。
次の各項では、XMLベースのコンテンツ管理の拡張内容について説明します。
この機能では、非構造化および準構造化コンテンツの両方において、JSR-170 1.0で定義された操作がサポートされています。また、次のものを含む、包括的なOracle独自のコンテンツ管理プラットフォームも提供されています。
この機能により、コンテンツ中心の中間層アプリケーションの作成時にOracle XML DB内のデータの移動、問合せ、アクセスおよび操作を行うための、シンプルで一貫性がある標準ベースの一連のAPIが提供されます。この機能により、インターネット・アプリケーションの開発が効率化され、Oracle XML DBへの顧客の取込みおよびパートナの統合が促進されます。
次の各項では、Oracle XMLデータベースのテクノロジの拡張内容について説明します。
DAV ACL標準は、WebDAV環境でセキュリティを定義するための業界標準です。DAV ACLのサポートにより、XML DBリポジトリは、DAV ACL標準に対応しているその他のツールと直接対話できます。
この機能を使用すると、Oracle XML DBリポジトリおよびDAV ACL標準を実装するプログラムやツール間の相互運用が可能になります。業界標準を使用したドキュメントレベルのセキュリティの実装が可能で、コストの削減と生産性の向上につながります。さらに、企業は、ビジネス・ニーズに最適なオーサリングおよびセキュリティ製品を導入できます。
この機能を使用すると、サービス指向アーキテクチャ(SOA)環境においてOracle Databaseが別のサービス・プロバイダとして扱われます。データベースでは、PL/SQLパッケージ、プロシージャおよびファンクションをWebサービスとして公開できます。また、データベースで動的XQueryおよびSQL問合せを実行できます。
これらの拡張により、Oracleまたはサード・パーティのソフトウェア・コンポーネントを追加せずに、SOA環境でデータベースHTTPサーバーがネイティブWebサービスを公開できるようになったため、複雑さとコストが低減されました。この機能を使用すると、Oracle中間層ソフトウェアによりOracle DatabaseにすでにSOA機能が提供されている場合には、旧アーキテクチャのパフォーマンスが向上します。
旧リリースでは、Oracle XML DBドキュメントのあるノードは、64000文字のテキストに制限されていました。64000文字は約32ページ分のテキストに相当するため、多くの場合、これは問題ではありませんでした。ただし、XMLドキュメント内にXML以外のドキュメントが埋め込まれている場合には、この制限が重大な問題になる可能性があります。
たとえば、テキスト・ノードに、抽象またはWebページなどの埋込みのHTMLまたはRTFドキュメントが含まれている場合があります。または、XMLドキュメントに、JPEGイメージ、Wordドキュメント、PDFファイルなど、埋込みのバイナリ・コンテンツが含まれている場合もあります。
XML標準では、XMLドキュメントにバイナリ・コンテンツを含むことはできないため、base64、binHexまたはUUENCODEなどのアルゴリズムを使用して、埋め込まれたドキュメントのコンテンツを文字ベースの形式にエンコードする必要があります。結果のテキスト・ノードは、簡単に64000文字を超えてしまいます。
この機能を使用すると、テキスト・ノードのサイズに対する現在の64000文字という制限がなくなり、メモリーに効率的な方法で大量のテキストを含むノードの操作を可能にするストリームAPIが提供されるため、Oracle XML DBでこのクラスのXMLドキュメントを処理できます。
この機能により、リポジトリ操作に関連する一連のイベントが提供されます。開発者は、データベース・トリガーにコードを追加するのと同じ方法で、これらのイベントにコードを追加できます。このコードでは、トリガーによりデータベース・トリガーの操作に基づいてアプリケーション・コードの実行が可能になるのと同じ方法で、リポジトリ・イベントに基づいてアプリケーション・ロジックが実行されます。
この機能により、Oracle XML DBリポジトリに基づいて優れたコンテンツ管理システムを開発するためのフレームワークが提供されます。ビジネス・ロジックとOracle XML DBリポジトリを使用するドキュメント中心のアプリケーションとの関連付けが可能なため、コストが削減され、コンプライアンスが保証されます。企業は、SOX法などの法律のドキュメントおよびコンテンツ管理の規則に確実に準拠できます。
この機能により、Oracle XML DBで、非常に再帰的な構造を含むXMLドキュメントに対するXPathベースの操作のパフォーマンス実行が改善されます。すべての述語が、再帰的な構造内の任意の深さに存在するノードで稼働する場合に、XPathリライトが可能です。
非常に再帰的な構造を簡単に説明して操作できることが、XMLパラダイムの主な利点です。このプロジェクトにより、このような性質のXMLスキーマベースのドキュメントがOracle XML DBを使用して保存および操作される場合に、パフォーマンスが大幅に向上します。
Oracle XML DBリポジトリで、複雑なフォルダ制限付き問合せのパフォーマンスが向上しました。
この機能により、Oracle XML DBリポジトリの特定種類のSQL操作に対するレスポンス時間が向上します。
これまで、HTMLまたはテキスト形式のドキュメントの生成にXML DBのXSLT機能を使用することはできませんでした。この機能により、XSLT処理でCLOB
または出力ストリームに直接書き込むことが可能になり、この制限がなくなりました。また、インフラストラクチャを追加せずに、これまでより多様な状況でXML DB XSLT機能を使用できます。
この機能では、ソフトウェア・コンポーネントを追加せずに、大規模なHTMLおよびテキスト形式のドキュメントをデータベースから直接生成できるため、コストおよび複雑さが低減されます。
この機能により、SQL:2005標準の一部であるXMLExists
およびXMLCast
演算子が実装されます。また、この機能では次の内容も追加されます。
XMLForest(*)
の*
演算子に対するサポートの追加。
XMLType
列のDLLのSTORE AS CLOB
句にある複雑な記憶域パラメータに対するサポートの追加。
XMLAgg
演算子の拡張。XMLAgg
演算子は、関連する表からXMLを生成する際、または内部オブジェクト表現からXMLを再構築する際によく使用されます。XMLAgg
は、生成されるドキュメント内に1つの要素が何度も出現する場合に必要です。推奨された最適化により、ターゲット・ノードの集計に必要なリソースが大幅に削減され、これらの操作のパフォーマンスが顕著に向上します。
この機能を使用すると、一般的なXML生成操作に関連するパフォーマンスが大幅に向上します。一般的なXML中心のタスクの実行に必要なコードの量が減ることで、コーディングおよびメンテナンスのコストも削減されます。関連するSQL標準のサポートが改善されたことで、より移植性の高いアプリケーション・コードの開発が可能になります。
この機能により、次のような、Oracle XML DBへの様々なリンクのサポートが追加されます。
この様々なリンクにより、XMLコンテンツ・リポジトリが拡張されます。
Oracle Database 11gには、汎用的なW3C標準を使用して、XMLドキュメント間の参照整合性のXML等価が用意されています。XBRL検証、XLink検証および複合ドキュメントのサポートのすべてが有効化されています。
この機能を使用すると、企業はW3C勧告のXLinkを使用して、ドキュメント間の関係に関するその他のルールを定義できます。XLinkは、XML中心の方法で整合性規則やその他の関係の指定を可能にする一般的なW3C標準です。XLinkの仕様は、アメリカのFDICやSECなど、多数の世界的な規制機関に採用されているXBRL(eXtensible Business Reporting Language)を含む、多くの重要なXML標準に使用されています。
XLinkのサポートにより、企業はデータベースへのXMLドキュメントの保存方法に関しても柔軟に対応できます。たとえば、本を章の集まりとして保存することが可能で、粒度と柔軟性が向上します。
XLink対応リポジトリでは、コンテンツがOracle XML DBリポジトリに保存されている間はXLink言語で指定されたルールが確実に実行され、XML言語の使用が必要不可欠になります。
Oracle Streamsで、データベース内またはあるデータベースから別のデータベースへのデータ・ストリームにあるデータ、トランザクション、イベントを伝播および管理できるようになりました。ストリームでは、パブリッシュされた情報がサブスクライブ済の宛先にルーティングされます。その結果、イベントの取得と管理、および別のデータベースやアプリケーションとのイベントの共有に関して、従来のソリューションより機能性と柔軟性が増します。変更が必要な場合には、既存の機能を犠牲にせずに、Oracle Streamsの新機能を実装できます。
Oracle Streamsおよびロジカル・スタンバイを、XMLType
データ型と併用できるようになりました。
Oracle Streamsにより、今日の企業の複雑な情報共有のニーズを満たす共通のインフラストラクチャが提供されます。これらの機能は拡張されたため、Oracle XMLType
データ型によってサポートされるすべての記憶域パラダイムとともに使用できます。
XMLコンテンツの一部またはすべての基礎となる記憶域がCLOB
あるいはCSX
(バイナリXML)の場合、この機能では、XQueryおよびXPath操作をコストベースで最適化できます。これにより、このような構造に対する問合せのパフォーマンスが大幅に向上します。
この機能を使用すると、スキーマベースの記憶域モデルを使用できない、または使用しない企業も、アプリケーションのパフォーマンスを向上できます。
XMLドキュメントの一部のクラスに対する操作で、言語に対応できるようになりました。その結果、XMLドキュメントに対する操作で戻される情報は、ユーザーの選択した言語に基づきます。この拡張により、ユーザーが使用する言語に依存しないアプリケーションの開発に必要なコードの量が大幅に削減されます。これまで、この機能を使用できるのは、バイナリXML記憶域モデルを使用して保存されたドキュメントのみでした。
この機能により、ターゲット・ユーザーの使用する言語に依存しないアプリケーションの開発に関連するコストが削減されます。
この機能を使用すると、既存のドキュメントに対する更新、削除および挿入操作が実装される方法が大幅に最適化されます。アプリケーションに対して完全に透過的であるこの変更により、内部的に実行されるコード、および既存のドキュメントの構造が更新される際に生成されるI/Oやログの量が大幅に減ります。
データベースに保存されているXMLコンテンツに対する更新操作のパフォーマンスは、大きく向上します。
XMLIndex
は、CTXSYS.CTXXPATH
索引の設計および操作に固有の厳密な制限に対応します。XMLIndex
の利点は次のとおりです。
XMLType
用の特別な記憶域モデルは不要です。
ora:contains()
XPath拡張関数を介して、textNodeおよび属性値のテキストベースの検索がサポートされています。
この機能を使用すると、索引付けされるXMLの形式またはコンテンツに関する明確な予備知識がなくとも、XMLドキュメントを効率的に索引付けできます。索引付けされたXMLコンテンツの非常に効率的なXPathベースの検索が完全にサポートされます。
この機能により、データベース内のSQL/XMLおよびXQuery用の多数の領域のパフォーマンスが向上します。
XQueryおよびSQL/XMLの拡張により、現行リリースへのアップグレード時に、パフォーマンスが改善されます。
Oracle XQueryは、W3C XQuery標準の最終バージョンおよびJSR 225 XQJ標準に準拠しています。
Oracle XQuery標準に準拠しているため、ユーザーは業界標準に基づいて移植可能なアプリケーションを作成できます。
この機能では、等価XQuery式に再度操作を書き込んでXQueryを実行することにより、XSLT変換の一部のクラスが最適化されます。XQueryがXQuery最適化の対象となるため、反復実行ではなくセットベースの実行になります。これにより、パフォーマンスが大幅に向上します。
一般的に、XSLT変換は、XMLのある形式から別の形式を生成するために使用されます。この機能を使用すると、XMLからXMLへの変換における一部のクラスでパフォーマンスが大幅に向上します。
次の各項では、Oracle Database 11gリリース1(11.1)の診断機能について説明します。
次の各項では、自動情報生成、問題またはエラーのパッケージ化および診断を簡略化するツールの新機能について説明します。
コンポーネント間のデッドロックの自動検出では、データベース内にそのような状況が発生するか存在する場合に、デッドロックの検出が自動的に実行されます。
この機能では、データベースおよびアプリケーションをアップグレードするための停止時間を最小限にするOracle Database 11gのその他の機能に必要なインフラストラクチャも提供されます。
ハング・マネージャは、Oracle RACおよびASMデータベースを含むOracle Database環境のハングに関する診断情報を自動的に検出、分析および破棄します。
この機能では、データベースのハングをより迅速に解決できるため、データベース管理が簡素化されます。
ユーザーにとって、Oracleサポートまたは開発に適切な情報を報告するのは面倒で時間のかかる作業です。IPSにより、製品の例外(インシデント)に関連付けられた診断およびテスト・ケースのデータを自動診断リポジトリ(ADR)から抽出し、オラクル社への転送用にそのデータをパッケージ化する機能が提供されます。
IPSでは、SQLテスト・ケースなどのテスト・ケースを自動的に生成するメカニズムも提供されるため、サポート・センターの職員は、分析および解決するために社内で問題を簡単に再現できます。
SQLテスト・ケース・ビルダーは、別のシステムで問題を再現するために必要な顧客サイトの情報をすべて収集するPL/SQLパッケージです。
再現可能なテスト・ケースを取得することは、問題を迅速に解決する上で唯一かつ最も重要な要因です。SQLテスト・ケース・ビルダーは、SQLインシデントに関連する情報を可能なかぎり収集し、問題を再現できる方法でパッケージ化します。
次の各項では、障害発生時の診断情報の完全で効率的な取得について説明します。
自動診断リポジトリ(ADR)は、トレース・ファイルおよびその他のエラー診断データを保存して編成するための、新しいシステム管理のリポジトリです。ADRには、データベースで発生したすべての深刻なエラーの包括的なビューが用意されており、問題の診断やそれらの問題の最終的な解決策に必要なすべての関連データが保持されます。
自動診断リポジトリ(ADR)により、すべてのデータベース診断情報を保存、書式設定および検索するための同一で一貫性のあるメカニズムが提供されます。ユーザーは、Oracle RAC、Oracleクラスタウェア、OCI、Netおよびプロセスなど、様々なコンポーネントのエラーを関連付けできます。ADRでは、深刻なエラーのインシデントが自動的に生成され、インシデント管理機能が提供されます。その結果、ADRにより、ユーザーの問題解決の時間が大幅に短縮されます。
この機能では、様々なクライアントに対するOracle Net診断をデータベース・インフラストラクチャと統合し、診断情報を標準化された読取り可能な形式で提供することにより、ネットワーク診断が拡張されます。クライアント、アプリケーション・サーバーおよびデータベースなど、Oracle製品のネットワーク診断情報は、自動診断リポジトリ(ADR)に保存されます。
Oracle Netで、Oracle Databaseと同じ診断インフラストラクチャを使用できるようになりました。この機能は、Oracle Net関連の問題をこれまでのリリースより簡単に診断する際に役立ちます。
OCIアプリケーションで問題を診断しやすくなるよう、Oracle Database 11gに次の拡張内容が追加されました。
拡張されたOCIの診断メカニズムのサポートにより、顧客の問題をより迅速に解決できるようになりました。
次の各項では、問題の修復と解決を補助するシステム機能について説明します。
これまでのリリースでは、RMANによって検出されたブロック破損はV$DATABASE_BLOCK_CORRUPTION
に記録されていました。Oracle Database 11gでは、現在のブロック破損もこのビューに記録されます。このビューは、ブロック・メディア・リカバリまたはデータファイル・リカバリなどを使用して破損が修復されると、自動的に更新されます。
この機能により、ブロック破損を検出する時間が短縮されます。
問題のあるSQL文が特定されると、SQL修復アドバイザによりそのSQLがリロードされ、より詳細な診断モードで再コンパイルされます。SQL修復アドバイザにより、インシデントに関するより詳細な情報が収集され、回避策またはDBAへの推奨事項が提示されます。
SQL修復アドバイザは、DBAによる問題のあるSQL文の診断に役立ち、自動的に回避策を提示する新しいツールです。
次の各項では、問題の深刻化を避け、損害を1つのシステムに収めるために、早期の問題検出を積極的に行う機能について説明します。
自動状態監視は、データベースの状態を積極的に確認し、データベースに影響を与える問題を特定します。ユーザーが問題に陥る前や、損害が広範囲に及ぶ前に検出されます。自動状態監視の結果は、DBAがデータベースの状態を素早く把握できるように設計された簡単なメーター(診断メーター)に反映されます。自動状態監視を使用すると、DBAは、データベースに影響を与えている問題の修復方法のみでなく、データベースの現在の状態を包括的に捉えることができます。
自動状態監視は、ライフサイクルの早期に積極的に問題を検出し、DBAにユーザーへの影響と実行する推奨アクションを通知します。コンポーネントまたは状況に応じ、自動状態監視は、問題のあるコンポーネント/リソースを隔離するか問題の解決策を提示します。この機能により、ビジネスの停止時間を最小限に抑え、早めに停止に対応できます。
この機能により、破損したUNDOセグメントが自動的に隔離され、後続のトランザクションで同じUNDOセグメントが使用されるのを防ぐことができます。
この拡張により、破損の伝播が制限されるため、システムで発生した損害が制限されます。
大規模な索引の場合、ANALYZE VALIDATE CASCADE
操作には非常にコストがかかります。この機能により、不一致な条件を検証するためのハッシング・スキーマが導入されます。
ハッシングは、従来のカスケード検証よりも大幅に高速です。ハッシュは、表の完全スキャンおよび索引の高速完全スキャンの両方が同じハッシュ値を生成するよう設計されています。
多くのユーザーがANALYZE TABLE ... VALIDATE STRUCTURE CASCADE
文を使用して、表と索引の非互換性または破損を検出します。大規模な表の場合、旧リリースのANALYZE
操作には長い時間がかかり、診断またはメンテナンス・ウィンドウを終了できませんでした。この機能を使用すると、これらのANALYZE
操作を非常に高速で実行できます。
この機能では、トランザクション・エンジンの全体的な状態を確認するために、多数の状態チェックが実行されます。トランザクションの一貫性に関してデータおよび索引のブロックが積極的に調査され、起り得る破損の有無についてUNDOセグメントが検証されます。破損が検出されると、そのブロックに関連するすべてのREDOが破棄されます。
この機能により、ソフトウェアおよびハードウェアの障害からユーザー・データが保護され、破損の伝播が阻止されます。
次の各項では、ユーザー向けのEnterprise ManagerのGUIワークベンチの機能を説明し、データベース・エラーの診断および解決が簡単になるようサポートします。
サポート・ワークベンチにより、データベースの状態に関連するシステム上のインシデントを、そのインシデントの管理方法に関する情報とともにタイミングよくDBAに通知する、使いやすいインタフェースが提供されます。DBAによる複数のOracle製品(Net、クライアント、ASM、Oracle RACなど)からの診断情報の参照、状態チェックの実行、Oracleサポート用のインシデント・データのパッケージ化、およびインシデントの管理を実行する際にも役立ちます。
サポート・ワークベンチでは、インシデント・データの表示や診断を行いOracleサポート用にパッケージ化するための簡単なワークフロー・インタフェースが提供されるため、ユーザーの問題の解決時間が大幅に短縮されます。
次の各項では、Oracle Database 11gリリース1(11.1)の情報の統合機能について説明します。
次の各項では、次のサポート内容について説明します。
イベント通知を時間間隔ごとにグループ化できるため、複数の個別イベント通知ではなくグループに対して単一のバッチ通知を実行できます。クライアントを使用できない場合、通知はユーザーが指定した期間保存されます。
通知の構成および管理がより柔軟になりました。
Streamsの伝播および通知用にスケジュールされたジョブを、DBMS_SCHEDULER
パッケージを使用して管理できるようになりました。
標準のOracle Schedulerへの変換により、Streamsの管理が簡略化されます。
通知サーバー(EMON)が、5つのプロセスで構成されるマルチプロセス・サーバーになりました。
この機能により、システム全体で大量の同時通知が可能になります。
後続の各項の新機能の内容は次のとおりです。
Messaging GatewayエージェントをOracle Schedulerで起動できるようになりました。SchedulerではOracle RACサービス機能が使用されます。ユーザーはこの機能を使用して、Messaging Gatewayエージェントのホストとなるプライマリ・インスタンスおよび関連付けられたマシンを指定できます。プライマリ・インスタンスが停止すると、サービスは別のインスタンスにフェイル・オーバーします。Messaging Gatewayは、そのインスタンスのホスト・マシンで起動され、そのノードのインスタンスに接続します。
この機能により、Oracle RACサービスを使用してMessaging Gatewayのフェイル・オーバー先を制御できるようになったため、すべてのデータベース・インスタンスでMessaging Gatewayエージェントを稼働する準備をせずに可用性を高めることができます。
この機能により、単一のデータベースにおける複数のMessaging Gatewayエージェントの実行がサポートされます。複数のOracle RACインスタンス間でワークロードを調整することにより、インスタンスの数でメッセージ・ワークロードを計測できるようになりました。
この機能を使用すると、複数のOracle RACインスタンス全体を対象とする、スループットの高いメッセージ・ソリューションを作成できます。
拡張された新しいPL/SQL APIにより、伝播サブスクライバと伝播スケジュールが新しい伝播ジョブに統合されます。
Messaging Gatewayの伝播ジョブの作成およびスケジュールが簡単でわかりやすくなりました。新しいAPIにより、これらのジョブを構成するより直感的な方法が提供されます。
この機能を使用すると、Oracle以外のシステムから大量のデータをロードする際のパフォーマンスが大幅に向上します。ゲートウェイ全般のパフォーマンスも向上します。
この機能によって、Database Gatewayのパフォーマンスが向上します。
Oracle Database 11gでは、Adabas用のDatabase Gatewayが提供されます。
Adabas用のDatabase Gatewayを使用すると、標準のOracle SQLを使用してAdabasからのデータを統合できます。
Oracle Database 11gでは、IMS用のDatabase Gatewayが提供されます。
IMS用のDatabase Gatewayを使用すると、標準のOracle SQLを使用してIMSからのデータを統合できます。
Oracle Database 11gでは、VSAM用のDatabase Gatewayが提供されます。
VSAM用のDatabase Gatewayを使用すると、標準のOracle SQLを使用してVSAMからのデータを統合できます。
次の各項では、連続問合せ通知の拡張内容について説明します。
連続問合せ通知は、サーバーで問合せの結果セットが変更された場合に通知を送信するよう拡張されました。これらの通知は、表レベルのみではなく、行レベルで登録できます。そのため、選択した特定の行への変更が変更された場合にのみアラートが送信されます。
Radio Frequency Identification(RFID)などのアプリケーションで、この機能をアプリケーションに作成するのではなく、データベースから直接通知を受信できるようになりました。
次の各項では、次のサポート内容について説明します。
Streamsでは、XMLType
データ型および透過的データ暗号化(TDE)がサポートされています。
アプリケーションおよびデータベース間でより簡単にデータを共有できます。
後続の各項の新機能の内容は次のとおりです。
このリリースでは、インターネット、地理空間、メディア指向アプリケーションで使用される業界トップの空間およびマルチメディア機能がさらに拡張されます。新しいWebサービス、XMLサービスおよび使用性の機能により、主流のビジネス・アプリケーションがサポートされます。
3次元データ、大規模なネットワーク・データ・モデルおよびGeoRasterデータ・モデルの拡張により、行政、国家防衛、生命科学、公共施設、エネルギ探査、輸送、都市計画、シミュレーションおよび地球工学における、ビジネスに重要なアプリケーションがサポートされます。
Oracle Spatialでは、ネイティブの記憶域が提供され、問合せ、および点、線、等高線、不規則三角形網(TIN - ラスターの代替)、点群などの3次元(3D)データの取得が可能です。SpatialのRツリー索引付けで、3Dデータがサポートされるようになりました。3Dデータ用のSQL演算子および分析関数も用意されています。
Oracle Spatialでは、都市モデル、点群、地形モデルなどの大規模な3Dデータ・セットがサポートされています。都市計画や設計、行政、国家防衛、軍隊、石油やガスの探査、輸送工学、ゲームやシミュレーション、地球工学およびLIDARベースの地図作成用のオープンでセキュアかつスケーラブルな改善されたデータ管理が可能です。
Oracle Webサービスでは、様々なクライアント・テクノロジおよびプラットフォームで、次に示すXMLベースの地理空間Webサービス標準がサポートされるようになりました。
Oracle DatabaseおよびOracle Application Serverでは、これらのWebサービス標準に、認可、認証およびトランスポートの秘匿性と整合性などのセキュリティが提供されます。JavaおよびPL/SQLクライアントAPIが用意されています。
Oracle Spatial Webサービスには位置が用意されており、ルーティング、ジオコーディング、ディレクトリ、カタログ、地物およびマッピング用にパブリッシュされた任意のサービスにアクセスして組み込むための、セキュアでサービス指向のトランザクション・アーキテクチャ・プラットフォームを提供するために、Oracle DatabaseおよびOracle Application Serverと強力に統合されています。
Oracle Spatialのルーティング・エンジンにより、ドイツ語、フランス語、スペイン語、イタリア語による運転案内、および回転固有の形状が生成されるようになりました。
Oracle Spatialのルーティング・エンジンでは、様々な西欧の言語での運転案内と、線形資産管理および旅行や輸送アプリケーション用の回転ダイアグラムが提供されます。
Oracle Spatialのネットワーク・データ・モデルでは、スレッド・セーフなJava APIを使用してApplication Serverの複数の同時リクエストがサポートされ、Webサービス問合せ用のXMLインタフェースがサポートされています。
分析およびモデリングの新機能には、ユーザーまたはアプリケーション固有属性のデータベース・レベルの処理が含まれます。これらの機能を使用すると、ネットワーク・データ・モデルで非接続性関連情報を管理できます。また、SQLのようなフィルタを使用して、ネットワークのセブセットを選択して抽出できます。その他の拡張には、パスの加算、減算、論理積、比較および期間のモデリングなど、パスの計算が含まれます。
Oracle Spatialのネットワーク・データ・モデルには、サービス指向アーキテクチャ、およびフィールド・サービス・スケジューリングやロジスティクスなど、問合せ量の多いアプリケーション用にJavaやXML APIが提供されています。
分析およびモデリングの新機能は、公共施設、ロジスティクス、輸送、生命科学、Web情報管理など、属性や関係が複雑で非常に大規模なネットワークを分析するアプリケーションに提供されます。
Oracle Spatialでは、メモリー内分析の制限として物理メモリーが削除されているパーティション化されたネットワークでの、ロードオンデマンドがサポートされるようになりました。大規模ネットワークを管理しやすいサブネットワークにパーティション化し、パフォーマンスおよびスケーラブル分析での必要に応じて少しずつメモリーにロードできます。パーティション化ユーティリティは、大規模な空間ネットワークをパーティション化する場合に使用可能です。
Oracle Spatialのネットワーク・データ・モデルでは、メモリーにネットワーク全体をロードせずに大規模なネットワークを分析できます。この機能は、ユーティリティおよび街路網などのアプリケーションに便利です。
GeoRaster DMLトリガーは、システムにより自動的に作成および監視されます。新しいツールにより、GeoRasterのアップグレード、移行および使用が自動化されます。GeoRasterでは、Workspace Managerのロング・トランザクションおよびファイングレインLabel Securityがサポートされています。
現在では、より多くのメタデータおよびデータ型がサポートされています。GeoRasterでは、修正されていない空中写真や衛星画像の直接線形変換および高速な位置指定機能地形参照を含む、汎用的な多項式の地形参照モデルがサポートされています。また、ビットマップ・マスク、複数のNODATA
値および値範囲もサポートされており、データ型のサポートは限られています。
高度なモザイク、GeoRasterオブジェクトまたはレイヤーの結合、GeoRasterテンプレートおよび関連機能に高度な操作が追加されました。GeoRasterでも、GeoTIFF地形メタデータおよびDigitalGlobe RPCファイル形式のロードおよびエクスポートも完全にサポートされています。
追加のラスター処理機能には、GeoTIFF地形メタデータ、ロードおよびエクスポートが含まれます。
Oracle Spatial GeoRasterでは、より多くのデータ型とファイル形式、ロング・トランザクション・バージョニングを使用した画像およびグリッド・データの編集、ファイングレイン・セキュリティおよび新しい管理ツールと機能がサポートされています。
Workspace Manager操作のユーザー指定のオプティマイザ・ヒントがサポートされるようになりました。パーティション操作(ADD
、DELETE
、MERGE
およびEXCHANGE
など)は、バージョニングされた表でサポートされています。バージョニングされた表での新しいオンライン操作には、別の表領域への表の移動や空き領域の割合の変更を含む、ALTER INDEX
およびALTER TABLE
操作があります。行レベル・ロックは、マージおよびリフレッシュ操作用に実装されます。圧縮は、RemoveWorkspace操作のオプションです。
このリリースのWorkspace Managerでは、ワークスペース操作に対する問合せのチューニングの改善と、より多くの物理記憶域オプションがサポートされています。マージおよびリフレッシュ操作は、それらを同時に実行し、ワークスペースが削除されている場合にはガベージ・コレクションをオプションにすることで、より高速で実行できます。
Oracle Label Securityポリシーを、バージョニングされた表で設定および変更できるようになりました。参照整合性制約に関連する表の変更は、グループとしてマージできます。履歴行を作成および撤収するワークスペースの名前が記録されます。
Workspace Managerを使用すると、Oracle Label Securityポリシーをロング・トランザクションに適用および変更できます。表のグループへの変更は、セットとしてマージできます。データへの変更は、プロジェクトごとに追跡できます。
このリリースでは、有効期間付きの履歴行の一意のROWID
を問合せに使用できます。最初の有効期間のタイムスタンプ値は、表がバージョニングされる際に指定できます。有効期間のタイムスタンプは、WM_PERIOD
オブジェクト型を使用するかわりに、TIMESTAMP WITH TIME ZONE
スカラー型として提供できます。有効期間のタイムスタンプへの変更は、参照整合性制約の親表に保存されているOracle Spatialの機能で許可されています。
有効な日付とも呼ばれる有効期間は、バージョニングされたデータを、データが有効な期間を示す関連する時間範囲とともに保存することを可能にするWorkspace Managerの機能です。この機能には、いくつかの使用性の拡張が含まれます。有効期間を使用した特定の履歴変更はユーザーに提供できます。有効期間のタイムスタンプ値は、表がバージョニングされている場合にユーザー定義の値で初期化できます。また、タイムスタンプは、Microsoft .Net環境で単純なスカラー値として使用できます。有効期間のタイムスタンプは、Oracle Spatialの機能が参照整合性制約に参加している場合にはいつでも更新できます。
Oracle interMedia(現在はOracle Multimedia)オブジェクト型(ORDImage
、ORDAudio
、ORDVideo
およびORDDoc
)の旧バージョンでは、4GBまでの電子メディア・オブジェクトの保存が可能でした。Oracle Database 11gでは、このメディア・サイズの制限がBLOB
のサイズ制限である8〜128TBに拡張されました。
また、Oracle Multimediaでは、縮小およびサムネイル生成機能に使用されるメモリーが少ないため、この方法で処理されるイメージの実際の制限が引き上げられます。
セキュリティ、メディアやエンターテイメント、医療および生命科学の市場のアプリケーションでは、より詳細で忠実度の高いデジタル・メディアが生成されます。取得テクノロジの発展やストレージのコストの低下により、より多くの大規模なデジタル・イメージ、オーディオおよびビデオの編成が必要になりました。これまでは、個々のデジタル画像、オーディオおよびビデオがGBを超えることはほとんどありませんでした。Oracle Database 11gでは、Oracle Multimediaにより、単一のマルチメディア・ファイルに数十GBを要する新興アプリケーションをサポートします。
次の各項では、医療および生命科学の画像に関するDICOM形式の医療データを管理するための新機能について説明します。
Oracle Multimediaで、医用画像の標準として広く認められた形式である、Digital Imaging and Communications in Medicine(DICOM)バージョン3が完全にサポートされるようになりました。MultimediaのJAVAおよびPL/SQL APIを使用して、アプリケーションでDICOMコンテンツを保存、管理および操作できます。
単一フレームや複数フレームの画像、波形、3次元ボリュームの断片、ビデオ・セグメントおよび構造化レポートなど、Oracle Databaseの強力なツールを使用して管理および保護されている医療コンテンツの大規模なアーカイブを作成することが一般的になってきました。DICOMメタデータが完全にサポートされているため、調査用のDICOMコンテンツを非常に簡単に索引付けおよび検索できます。DICOMコンテンツの中央記憶域により、遠隔治療が現実的になります。データベースにDICOMコンテンツを取り込むことにより、オラクル社やその他のサード・パーティ・ベンダーの強力なアプリケーション開発ツールを使用して、電子医療レコード・アプリケーションを作成できるようになります。
Multimediaの新しいオブジェクト型ORDDicom
は、単一または複数フレームの画像、波形、構造化レポートなどのDICOMコンテンツに関連付けられたデータを保持し、DICOMコンテンツを操作するメソッドを実装するよう定義されています。Javaのプロキシ・クラスOrdDicom
も定義されています。JavaアプリケーションのJDBCを介して、ORDDicom
データベース・オブジェクトにアクセスできます。すでにBLOB
またはBFILE
にDICOMコンテンツが直接保存されているアプリケーションの場合には、リレーショナル・インタフェースも提供されます。
オブジェクトとしてデータベースに保存されているDICOMコンテンツを提供することにより、アプリケーションの短時間での開発と、大規模な医療アーカイブの簡単でセキュアな管理の両方が可能になります。
Oracle Multimediaの初期リリースにおけるDICOMのサポートでは、DICOMコンテンツと関連付けられた最も重要なメタデータ・タグを、特定の条件に一致するDICOMコンテンツを検索するために索引付けおよび検索が可能なXMLドキュメントに抽出できました。Oracle Database 11gでは、完全で拡張可能なメタデータ抽出を提供できるようこのサポートが拡張されています。ユーザーは、提供されたDICOMマッピング・ドキュメントを使用してメタデータをXMLドキュメントに抽出することも、独自のマッピング・ドキュメントを作成してプライベート・タグまたは標準のDICOMメタデータ・タグのサブセットに対するサポートを指定することもできます。抽出されたメタデータを表に保存すると、標準またはプライベートのDICOM属性に基づくDICOMコンテンツの検索を容易にできます。
DICOMメタデータ抽出機能に対するこの大規模な拡張により、調査に非常に有益となるDICOMコンテンツの大規模なアーカイブの作成が可能になります。DICOMマッピング・ドキュメントをカスタマイズすることにより、標準およびプライベートの両方のメタデータ・タグに基づいて、単一および複数フレームの画像、波形、構造化レポートなどのDICOMコンテンツに対する高度に分化した索引を簡単に作成できます。
DICOMコンテンツおよびユーザー指定の一連の準拠ルールがある場合、Oracle MultimediaはDICOMコンテンツがその準拠ルールに従っていることを検証できます。
DICOMコンテンツは、多くのモダリティによって生成されます。多くのコンテンツはDICOM標準に準拠していますが、一部は準拠していません。標準に準拠していないDICOMコンテンツを特定できるのは便利です。DICOMコンテンツが準拠しているかどうかを検証することにより、DICOMアーカイブの一貫性が保証されます。これにより、複数のソースからデータベースにDICOMコンテンツを取り込み、DICOMメタデータの整合性が検証されます。
Oracle Multimediaには、医療画像デバイスで生成された画像をネイティブでサポートするためのORDDICOM
データ型が含まれています。このリリースでは、画像をコピーしてDICOMからJPEG、GIF、PNG、TIFFおよびその他の形式に変換し、スケール変更されたバージョンやサムネイルを生成するためのメソッドおよび関数が追加されています。
WebアプリケーションにDICOM形式で保存されている医用画像を表示するには、画像の形式を再度設定してブラウザ対応の形式に変換する必要があります。Oracle Database 11gには、DICOM画像の形式を再設定し、一般的な業界標準の画像形式を必要とするアプリケーションに配信する方法が用意されています。
Oracle Database 11gには、makeAnonymous()
メソッドが用意されています。このメソッドを使用すると、DICOM医療アーカイブのユーザーが、表示を認可されているメタデータのみを参照することが保証されます。
DICOMコンテンツを匿名にするためのルールは、匿名にする必要のある属性のセットおよびそれぞれを不明瞭化する方法を指定する匿名ドキュメントでカスタマイズできます。
臨床医は、DICOMコンテンツに含まれている、治療する患者のすべてのメタデータを表示できる必要があります。研究者は同じDICOMコンテンツを参照できる必要はありますが、プライバシ保護の規制のため、使用される同じDICOMコンテンツから個人識別情報は参照できない必要があります。
データベースに匿名サービスを提供することで、Oracle Multimediaでは、データへのアクセスに使用されるアプリケーションにかかわらず、DICOMアーカイブのユーザーの様々なクラスにふさわしい適切なアクセスが可能です。
Oracle Multimediaのこのリリースには、デジタル画像を関連付けられたDICOMメタデータのXML表現と結合することで、新しいDICOMコンテンツを生成する機能が含まれています。この操作の結果である適格な検証済のDICOMコンテンツをデータベースの表に保存するか、DICOMビューアに配信できます。
紙またはフィルムベースの医用画像を保存および探すにはコストがかかり、間違いが発生する可能性もあります。ただし、多くの古い画像は長期間保存する必要があり、研究と医療の両方の目的で便利な場合もあります。スキャンした画像を、DICOM形式のこれらの画像に関する既知のメタデータとともに保存することにより、DICOM以外の画像が再び実用的になり、保存および検索の両方のコストが削減されます。新しいDICOM形式のコンテンツを生成し、この技術を使用して元のDICOMコンテンツのメタデータのエラーを修正することも可能です。
Oracle Multimedia DICOMの実行時の動作のサポートは、ユーザーによる構成が可能な一連のドキュメントによって決定されます。このドキュメント・セットは、DICOMデータ・モデル・リポジトリで一緒に管理されます。管理者は、このデータ・モデル・リポジトリを変更して、特定のデータベース・インスタンスのDICOM機能を構成できます。この設計により、アクティブなDICOMアーカイブの妨げにならずに、いつでもDICOM機能を更新できます。
病院では、DICOMアーカイブを一年中いつでも使用できる必要があります。DICOM標準の新しいバージョンへの更新、新しい機器用のプライベート・タグの取込み、DICOMの準拠ルールの変更、または抽出されたタグから生成するDICOMコンテンツやXMLドキュメントから抽出するタグ・セットの変更のために、システムを停止することはできません。この機能によりデータ・モデル・リポジトリが実装されたため、ユーザーはシステムを更新して、アーカイブの操作を妨げることなく、新しい機器および標準に適応することができます。
次の項では、センサーおよびRFIDデータの管理について説明します。
新しい識別コード・オブジェクト型は、カスタム、Electronic Product Code(EPC)および国防総省の標準タグ形式をサポートするためにOracle Databaseに実装されます。メタデータは、任意のタグ情報を識別コード・オブジェクトにエンコードおよびデコードするためのルールの定義に使用されます。すべてのEPC標準タグ・タイプおよびメタデータ標準がサポートされています。
この新機能を使用すると、アプリケーション開発者は、Oracle Database 11gにおいてより速く、これまでよりも少ないプログラミングで、識別コード・タグを定義および処理できます。
次の各項では、セマンティック・データの新機能について説明します。
Oracleには、ネイティブの記憶域、推論、および多数のトリプル(正規のResource Description Framework(RDF)の<主語述語目的語>形式でのモデル)が含まれていることの多いセマンティック・データ・セットの問合せが提供されています。大量のトリプルを処理する機能が大幅に改善された、新しいバルク・ロード・ユーティリティが導入されています。クエリー・リライト技術およびOracle Databaseのオプティマイザを使用して、セマンティック・データに対する問合せ(特に大規模な結果セットを戻す問合せ)のパフォーマンスが向上されました。セマンティック・データにおける入力済リテラルのサポートが拡張され、xsd:date
およびxsd:time
が含まれました。また、タイムゾーン付きのxsd:dateTime
もサポートされています。
Oracle Databaseには、W3C標準を使用して記述された大規模なセマンティック・データ・セットの保存、推論および問合せを実行するために、スケーラブルかつセキュアで、統合された効率的なサポートが提供されています。セマンティック・データのロードおよび問合せのパフォーマンスが向上したため、防衛や諜報、生命科学および地理空間の分野で使用される大規模なデータ・セットのスケール変更が可能です。日時情報(オプションでタイムゾーン付き)を保存および問い合せできます。
Oracle Database 11gでは、OWL-DL標準の実際のサブセットであるネイティブで軽量のWeb Ontology Language(OWL)推論を使用してセマンティック機能が拡張されています。オントロジ(用語のセット、関連付けられたプロパティおよびそれらの中での関係)をデータベースに保存し、新しい演算子SEM_RELATED
およびSEM_DISTANCE
を使用してオントロジに記述された関係に基づいて検索できます。
推論のサポートには、OWL-DL構成メンバーのサブセットに対する効率的でスケーラブルな推論、および推測されたトリプルの証拠を生成し、セマンティック・データ・セットの非一貫性を検出するためのAPIが含まれます。上級ユーザーは、カスタムの推論ルールを開発できます。
セマンティックの演算子は、セマンティックの関連(SEM_RELATED
)に基づいたフィルタ処理に使用でき、近接測定(SEM_DISTANCE
)を使用してその結果をさらに制限またはソートすることができます。新しい索引タイプ(SEM_INDEXTYPE
)では、そのような問合せの効率的な実行が可能で、大規模なデータ・セットに対するパフォーマンスのスケーラビリティが向上します。
これらの新しいセマンティック演算子により、Oracle Databaseで、キーワードの一致のみでなく、キーワードに関連する概念および用語を使用したリレーショナル・データの問合せが可能になります。オントロジに支援されたこれらの問合せは、列値データとオントロジの用語のセマンティックの関係に基づいています。これにより、データ・セットに関する予備知識がそれほどなくても、より完全な検索結果を得ることができます。OWL推論機能により、RDFおよびOWLデータの新しい関係を検出できます。これは、生命科学、医療およびビジネス・エンタープライズ情報統合のアプリケーションに便利です。W3Cは、セマンティック・データを表現するための標準としてRDF、RDFSおよびOWLを採用しました。
次の各項では、Oracle Database 11gリリース1(11.1)のサーバーの管理性機能について説明します。
自動ストレージ管理(ASM)の新機能により、ストレージ管理の自動化が拡張され、スケーラビリティが向上し、Oracle Databaseのファイルの管理がさらに簡素化されます。
新しいSQL文ALTER DISKGROUP ... DISK ONLINE
は、障害ディスクの修復後に実行できます。まず、コマンドにより、書込み用にディスクがオンラインになるため、新規の書込みが欠落することはありません。その後、ディスク上で失効とマークされているすべてのエクステントが、冗長コピーからコピーされます。
この機能により、障害ディスク・グループの修復に要する時間が大幅に短縮されます。時間単位から分単位に短縮される可能性もあります。修復時間は、障害後に書込みまたは変更が行われたエクステントの数に比例します。
ASMの管理性の新しいストレージ管理機能には、次の内容が含まれます。
いくつかのASMの新機能を有効化するには、compatible.rdbms
およびcompatible.asm
という新しい2つのディスク・グループの互換性属性を使用できます。これらの属性では、それぞれ、データベースおよびASM用のディスク・グループの使用に必要な最低ソフトウェア・バージョンを指定します。この機能により、異機種間環境で、Oracle Database 10gおよびOracle Database 11gのどちらのディスク・グループも使用できるようになります。デフォルトで、どちらの属性も10.1に設定されています。新機能を利用するには、これらの属性を活用する必要があります。
ASMCMDを使用すると、より高速なリカバリを実現するために、ASMのディスク識別、ディスクの不良ブロックの修復、バックアップやリストア操作をASM環境で実行できます。
ディスク・グループがRESTRICTED
モードの際に発生するリバランス操作により、Oracle RAC環境のASMインスタンス間のエクステント・マップ・メッセージのロックおよびアンロックがなくなるため、全体的なリバランスのスループットが向上します。
これらのASM管理機能により、Oracleデータベースのストレージ管理が簡素化および自動化されます。
ASM障害グループが定義されると、ASMは、常にプライマリ・コピーを読み取るのではなく、最も近いエクステントからの読取りを開始できます。新しい初期化パラメータASM_PREFERRED_READ_FAILURE_GROUPS
を使用すると、ASM管理者は、クラスタ内の各ノードの優先読取りディスクを含む障害グループ名のリストを指定できます。
拡張されたクラスタ構成では、ローカル・コピーから読取りを行うことで、パフォーマンスが大幅に向上します。それぞれのノードで、ローカル・ディスク・グループ(障害グループ)から読取りを実行できるため、効率が高まってパフォーマンスが向上し、ネットワーク・トラフィックが減少します。
ローリング・アップグレードは、クラスタ内の1つ以上のノードのソフトウェア・バージョンが異なる場合に機能する、クラスタ化されたソフトウェアの機能です。ソフトウェアのバージョンが多様であっても相互の通信が可能で、単一のシステム・イメージが実現されます。ローリング・アップグレード機能は、Oracle Database 11gリリース1(11.1)からのアップグレード時に使用できるようになります。
この機能により、データベースの可用性に影響を与えることなく、ASMクラスタの独立ノードを移行またはパッチ適用できます。ローリング・アップグレードにより、稼働時間が長くなり、新しいリリースに正常に移行できます。
この機能により、サポート可能な最大データファイル・サイズが128TBに増加されます。どの冗長性モードでも、ASMでは128TBを超えるファイル・サイズがサポートされます。これにより、将来容量が増加してもほぼ無制限に対応できます。ASMのファイル・サイズの制限は次のとおりです。
ユーザーも、ディスク・グループの割当て単位サイズを2MBから64MBに増加できます。
これらの拡張により、データベース起動時間およびメモリー要件が削減されて、より大きなASMファイルのサポートが可能になり、数百TBまたはPBのOracleデータベースをASMに実装できるようになります。割当て単位を大きくすると、順次読取りパフォーマンスが改善されます。
この機能では、すべてのノードに明示的にASMを構成することにより、非クラスタASMデータベースのクラスタASMデータベースへの変換がEnterprise Manager内でサポートされます。また、Oracle RAC変換ユーティリティでスタンバイ・データベースがサポートされるように、単一インスタンスが拡張されています。
変換を簡略化することで、データベースの移行が簡単になり、Oracle RACによって提供されるスケーラビリティと高可用性のメリットを享受しやすくなります。
この機能により、新しいSYSASM
権限が導入され、データベース管理と記憶域管理の職責の分離が可能になります。
SYSASM
権限を使用すると、管理者は複数のデータベースで共有可能なディスク・グループを管理できます。SYSASM
権限により、SYSDBA
権限からの明確な業務の分離が実現されます。
次の各項では、影響を分析するために、変更前後のワークロードを自動的に取得およびリプレイするための新機能を説明します。
ハードウェアやソフトウェアのアップグレードなどの変更を行う前に、企業では通常、変更を検証する広範囲に及ぶテストが実施されます。ただし、テストが現実的なワークロードで実行されていないため、本番システムに変更を行うと問題が発生する場合も多々あります。複数のユーザーを含む統合ワークロードを作成するためのツールも販売されています。ただし、それらのツールでは、同時アクティビティと予測不可能なワークロード・プロファイル間の通信など、実際のワークロードの複雑さを適切にシュミレートできません。
データベース・リプレイ機能は、本番システムで実際のデータベース・ワークロードを取得してテスト・システムでリプレイすることにより、ユーザーが実際のテストを実行できるようにしてこのニーズに対応しています。また、起こり得る問題(エラーの発生やパフォーマンスの異常など)を明らかにするための分析やレポート、および推奨される問題の処置方法も提供されます。
データベースのアップグレード、初期化パラメータの変更、索引の追加や削除などのシステム変更中は、SQLのパフォーマンスの低下が常に懸念されます。SQL Performance Analyzerの機能を使用すると、変更前後のレスポンス時間を比較および対照することにより、SQL文のパフォーマンスに対する変更の影響を評価する簡単な方法が提供されるため、この懸念がなくなります。SQL Performance Analyzerにより、本番データベースなどのソース・システムからSQLワークロードを取得し、変更を適用済のテスト・システムでリプレイできます。
SQL文のレスポンス時間の違いや実行計画の低下などがレポートされ、パフォーマンスの低いSQL文のチューニング方法に関する詳細な推奨事項が提示されます。
次の各項では、データベース管理を容易にするEnterprise Managerソリューションについて説明します。
以前のリリースでは、アドバンスト・レプリケーションはトリガーベースのレプリケーション方法でした。Oracle Database 11gでは、この機能は、WebベースのEnterprise Manager Database Controlに対する既存の機能のカットオーバーです。
この機能では、11gのEnterprise Manager Database Controlからのアドバンスト・レプリケーションの管理を可能にすることにより、既存のアドバンスト・レプリケーション・ユーザーがサポートされます。
この機能により、Enterprise Managerのユーザー・インタフェースに、拡張された複数のASM機能が提供されます。
Enterprise Managerは、ASMファイル・アクセス制御、ASMのOCRと投票ディスク、ディスク再同期化、ASMローリング移行、ディスク・ゾーン、ASMの管理性とインフラストラクチャ、ACL拡張および統合セキュリティのセキュリティ・クラスに対応する拡張されました。
この機能は、複数のサイトにアプリケーションをデプロイする際や、複数のサイトで古いバージョンのアプリケーションを現行バージョンにアップグレードする際に役立ちます。
ユーザーは、データベースまたは複数のデータベース・ターゲットへのベースラインから、メタデータ定義および複数のデータを伝播できるようになりました。
この機能により、Enterprise Managerのデータベースのクローニング・ページに次の拡張が行われました。
これらの拡張により、Enterprise Managerからの新しいRMAN機能を使用したデータベースのクローニングが簡単になりました。
この新機能により、データベース構成(ECMコレクション)のメンテナンスが拡張されます。
利点は、構成コレクション・フレームワークの改善です。
この機能により、データベースのホーム・ページおよびパフォーマンス・ページに新しいグラフが提供され、レイアウトが変更されました。また、より詳細な情報が表示されるようになり、その他の改善も行われました。
データベースのホーム・ページおよびパフォーマンス・ページの改善により、ユーティリティの質と使いやすさが向上しました。
DBCAに次の拡張内容が追加されました。
Database Configuration Assistantを使用して、Oracle Database 11gの次のオプションを構成できます。
これは、メモリーの割当てを自動化するOracle Database 11gの新しい初期化パラメータです。Database Configuration Assistantは、SGA_TARGET
およびPGA_AGGREGATE_TARGET
に個々の値を指定するかわりに、デフォルトでMEMORY_TARGET
を使用するようになりました。Database Configuration Assistantのメモリー管理ページには、自動メモリー管理を選択するための新しいオプションがあります。
Oracle Database 11gでは、SYS
ユーザーとしてcatproc.sql
スクリプトを実行する際にデータ・マイニング・メタデータが作成されます。このオプションは、Database Configuration Assistantの「データベース・オプション」画面では構成できなくなりました。
ORACLE_BASE
および診断先の構成Oracle Universal InstallerでORACLE_BASE
を要求された際に指定するディレクトリは、Oracleホーム・インベントリに格納されます。この値は、Database Configuration Assistantにより、デフォルトのデータベースの場所およびDIAGNOSTIC_DEST
パラメータを導出するために使用されます。診断先の場所には、すべてのADRディレクトリ(アラート・ログなどの診断ファイル)が含まれます。Oracle Database 11gリリース1(11.1)から、バックグラウンド・ダンプ、ユーザー・ダンプおよびコア・ダンプの保存先の初期化パラメータ設定は診断先に置き換えられます。
Oracle Database 11gに、監査およびパスワード・プロファイルの新しいデフォルトが追加されました。Database Configuration Assistantには、データベースの作成および既存のデータベース構成中に新しいセキュリティ設定を有効にする新しい画面が追加されました。
旧リリースでは、Database ControlまたはGrid Controlのいずれかを使用してデータベースを構成する機能は、Database Configuration Assistantに含まれていました。データベースは作成中に構成することも、後から構成することも可能でした。ただし、データベースをDatabase ControlからGrid Controlに再構成するには、非常に多くの手動での作業が必要でした。Oracle Database 11gでは、Database Configuration AssistantによりEnterprise Manager構成プラグインが提供され、データベースの構成をDatabase ControlからGrid Controlに切り替えるプロセスが自動化されます。
DBUAに次の拡張内容が追加されました。
単一インスタンス・データベースでは、Oracle Database Upgrade Assistant構成ユーティリティを使用すると、Oracle Database Express Edition(Oracle Database XE)をOracle Database 11gにアップグレードできます。XEデータベース・ファイルは、パスORACLE_BASE/oradata/XE
に存在します。これらのファイルは、アップグレード後にユーザーがXEホームを削除する時に、新しい場所にコピーする必要があります。
アップグレードの一部として、ASM、OFSまたはその他のストレージ・デバイス(ストレージ・エリア・ネットワーク(SAN)およびネットワーク・エリア・ストレージ(NAS)など)にデータファイルを移動できます。アップグレード中にデータベース・ファイルを移動する場合、ディスクをリバランスし、SAN、NASまたはASMなどのより優れたストレージ・デバイスにファイルを移動することで、この表領域の一般的な停止時間を活用できます。
ORACLE_BASE
および診断先の構成Oracle Universal InstallerでORACLE_BASE
を要求された際に指定するディレクトリは、Oracleホーム・インベントリに格納されます。この値は、Database Upgrade Assistantにより、デフォルトのデータベースの場所およびDIAGNOSTIC_DEST
パラメータを導出するために使用されます。診断先の場所には、すべてのADRディレクトリ(アラート・ログなどの診断ファイル)が含まれます。この診断先ディレクトリは、旧リリースのOracle DatabaseをそのデータベースのOracle Database 11gリリースにアップグレードする際に必要です。すでにORACLE_BASE
ディレクトリが存在している場合には、Oracle Database Upgrade Assistantにより自動的にこの情報が取得され、そのパスが移入されます。Oracle Database 11gリリース1(11.1)から、バックグラウンド・ダンプ、ユーザー・ダンプおよびコア・ダンプの保存先の初期化パラメータ設定は診断先に置き換えられます。
AUTOEXTEND
システム・ファイルへのコマンドライン・オプションコマンドライン・オプションAUTOEXTEND
により、アップグレードの一部としてのデータファイルの自動拡張が簡単になります。このオプションを使用すると、アップグレード中にデータファイルが自動的に拡張され、アップグレード後に自動拡張が元の設定に戻されます。このオプションは、ディスクに十分な領域があり、新しいデータファイルの追加や手動によるファイル・サイズの増加が不要な場合に便利です。
これらの機能により、XEユーザーはStandard EditionまたはExpress Editionのデータベースにアップグレードして、サポートやスケーラビリティを向上できます。
また、これらの機能により、アップグレードの一部としてより優れたストレージ・デバイスに移動する機能も提供されます。データファイルをOFA標準に準拠するように移動できます。
適応メトリックしきい値機能により、データベース・パフォーマンス・メトリックのアラートしきい値の選択が簡略化および改善されます。主な拡張内容は次のとおりです。
この機能は、ベースライン・ドリブンの高機能なパフォーマンス・アラートしきい値をDBAが最小限の労力で構成するために役立ちます。
この機能は、Enterprise ManagerにおけるFusionに関する次の要件を満たします。
tnsnames.ora
のグループ・コピー
init.ora
の監視および検証
この機能を使用すると、監視および構成関連のタスクの多くに、Oracle Application ServerでEnterprise Managerを使用できます。
この機能では、Oracle Textの索引の管理をサポートするユーザー・インタフェースが提供されます。
Oracle Enterprise Managerには、次の内容を含む、Oracle Textを構成、メンテナンスおよび管理するためのインタフェースが用意されています。
Enterprise Managerの「データベースのASMへの移行」のページは、ジョブが一時停止された場合の通知と、表領域レベルの移行のサポートを含むよう拡張されました。
この機能により、Enterprise Managerを使用して、ASM以外のデータベースを簡単にASMに移行できるようになります。
Enterprise Managerは、記憶域や監査レポートおよびメトリックの質が改善されるよう拡張されました。
この機能により、記憶域領域および監査領域の監視が簡単になります。
Enterprise Managerは、エクスポート、インポート、データ・ポンプ、記憶域管理、スキーマ管理、OLAP、サマリー管理およびパーティションのメンテナンスの領域で拡張されました。
この機能では、一部の内容に関するEnterprise Managerのサポートが改善されました。
これまで、Oracle Enterprise Managerでは、待機アクティビティのドリルダウンの詳細はグラフ形式で表示されていました。
この機能により、Oracle Enterprise Managerのクライアント、サービス、モジュールおよびアクションに関するページのより詳細な待機アクティビティ情報が提供されます。
Oracle Enterprise ManagerのWorkspace Manager機能用のインタフェースは、作業領域の圧縮、管理システム・パラメータ、権限管理、FindRICSet
などのサポートが含まれるよう拡張されました。
この機能により、Oracle Enterprise ManagerからのWorkspace Managerの管理が容易になりました。
次の各項では、データベース全体の全体的で統合的な管理および制御の拡張について説明します。
ADDMは、クラスタ全体の包括的なパフォーマンス診断およびチューニング・アドバイスを提供するよう拡張されました。ADDMの特殊モードではOracle RACデータベースが分析され、個々のインスタンスのみでなく、クラスタ全体に影響を与えている問題がレポートされます。
この機能は、I/Oやインターコネクト・トラフィックなどのグローバル・リソースのチューニングに特に便利で、Oracle RACデータベースのチューニングがより簡単で詳細になります。
この項では、自己管理を可能にする、統計、アラート、アドバイザおよび自動化されたメンテナンス・タスクのインフラストラクチャについて説明します。
Oracle Database 11gでは、自動タスクにより、管理性ウィンドウで大量のジョブが実行されます。この機能により、非常に管理性の高いジョブ・ロードを自動的に管理するために、必要なスケジューラ・インフラストラクチャが追加されます。
この機能により、大量のジョブの処理に必要なインフラストラクチャである自動タスクが提供されます。
この機能を使用すると、自動オプティマイザ統計コレクションや自動セグメント・アドバイザなど、様々なデータベース・メンテナンス・タスク間のリソース分散(CPUおよびI/O)をすぐに管理できます。CPUは自動的に管理されます。I/Oは、I/Oリソース・マネージャが有効な場合にのみ管理されます。
この機能を使用すると、メンテナンス操作中の作業が影響されず、完了に必要なリソースがユーザー・アクティビティに割り当てられます。
自動ワークロード・リポジトリ(AWR)のベースラインは、特定の期間を今後の比較対象とする基準の期間としてタグ付けする機能を提供することにより、正確なパフォーマンスの比較を可能にします。この期間の関連するすべてのパフォーマンス統計が維持され、別の期間とのパフォーマンス分析に使用できます。
AWRベースラインにより、動的な今後のベースラインを定義するための強力な機能が提供され、比較目的のパフォーマンス・データの作成および管理プロセスが大幅に簡略化されます。
このリリースでは、V$SYSSTAT
およびV$SYS_TIME_MODEL
インフラストラクチャが、単一の拡張コンポーネントに統合されました。
この機能では、待機および汎用統計を、システムの自動および手動のチューニングに便利な区分に分割するモデルも実装されます。
アクティブ・セッション履歴のインフラストラクチャは、データベース・パフォーマンスの診断および監視の改善を見越して拡張されました。
この機能には、問合せの進捗監視および時間モデル統計に関する行ソース情報への拡張が含まれます。
このリリースでは、アドバイザ・フレームワークが拡張され、状態モニター機能がサポートされています。
アドバイザ・フレームワークでは、AWRのインポートおよびエクスポート機能もサポートされています。
軽量のジョブの作成オーバーヘッドは低く、REDOも非常に少ないです。短く頻繁に実行されるジョブを大量に作成しても、パフォーマンスを維持できるようになりました。
この新機能を使用すると、外部ジョブ(シェル・スクリプトなど)を作成し、ジョブを実行する必要のあるターゲット・マシンのリストを生成できます。たとえば、シェル・スクリプトx.sh
をマシンA、BおよびCで実行するようスケジューリングできます。ターゲット・マシンに、必ずしもOracleデータベースがインストールされている必要はありません。ジョブは中央の場所から管理されます。
この機能により、ジョブを中央の場所から管理しながら、複数のノードに外部ジョブをスケジューリングできます。
このリリースのいくつかの拡張により、サーバー・パラメータ・ファイルおよび初期化パラメータの値の管理が簡単になりました。これらの拡張内容の一部は次のとおりです。
SPFILE
SPFILE
の欠落からのより簡単なリカバリ
SPFILE
への無効なパラメータ値設定の防止
この機能では、サーバー・パラメータ・ファイルおよび初期化パラメータ値の変更の管理を簡略化することにより、データベースの管理性が向上します。
次の各項では、リソースの管理性の拡張内容について説明します。
DBAは、PL/SQLファンクションDBMS_RESOURCE_MANAGER.CALIBRATE_IO()
を使用して、データベースの記憶域システムのI/Oキャパシティを評価できます。このルーチンにより、データベースのファイルに非常にI/O集中型の読取り専用ワークロードが発行され、維持できる最大IOPS(1秒当たりのI/Oリクエスト)およびMBPS(1秒当たりのI/OのMB)が評価されます。このデータは、I/O測定結果が格納されたDBA表、DBA_RSRC_IO_CALIBRATEを使用していつでも再調査できます。
大量のI/Oワークロードと通常のワークロードが相互に支障となるのを最小限に抑えるため、測定は、データベースがアイドル状態の場合およびオフピーク時に実行する必要があります。
I/O測定は、記憶域サブシステムのパフォーマンスを把握するため、およびI/Oパフォーマンスの問題がデータベースまたは記憶域サブシステムの原因であるかどうかを明らかにするために使用できます。様々な外部I/O測定ツールとは異なり、このツールではOracleコード・スタックが使用され、I/Oが順次ではなくランダムに発行されます。そのため、その結果は、実際のデータベース・パフォーマンスにより正確に一致します。
I/O統計では、次の項目ごとに、すべてのデータベース・クライアントから一貫性があり完全な統計が提供されます。
収集されたI/O統計は、AWRで監視、診断およびチューニングに使用されます。この情報は、I/Oリソース・マネージャによっても使用されます。
Oracleの旧リリースでは、DBAは、コールの中断、セッションの中断、または新しいコンシューマ・グループへのセッションの移行など、あるアクションが行われるまでにセッションが稼働できる最長時間を指定できました。この機能は、リソース・プランでコンシューマ・グループごとに構成されます。
Oracle Database 11gでは、DBAは、I/Oリクエストの最大数、または同じアクションのセットが実行される前にセッションが発行できる最大I/OのMBも指定できます。
この機能は、2つの目的で使用されます。1つは、リソース集中型の問合せを自動的に識別することです。もう1つは、優先順位の低いコンシューマ・グループに長時間実行されるコールを実行するセッションを移動することです。
AWRには、リソース・マネージャ統計の新しい履歴ビューが含まれます。これらの新しいビューDBA_HIST_RSRC_PLAN
およびDBA_HIST_RSRC_CONSUMER_GROUP
には、ビューの統計の履歴バージョンV$RESOURCE_PLANおよびV$RESOURCE_CONSUMER_GROUP
が含まれます。AWRには、リソース使用量用の分単位のメトリック、およびビューV$RSRCMGRMETRIC
にリソース・マネージャに起因する待機も含まれています。
この機能により、リソース・マネージャの履歴統計の表示が容易になります。
この機能によって、高機能で新しい組込みのリソース・プランが提供されます。
OLTPおよびDSS/バッチ・ジョブを含む複合環境のリソース管理が提供されます。
データ・ウェアハウス環境のリソース管理が提供されます。
メンテナンス・ウィンドウのリソース管理が提供されます。
リソース・プランはデータベースとともに出荷されており、多くの顧客の状況ですぐに効果をあげるリソース管理ディレクティブが提供されます。
次の各項では、Oracle Databaseの管理を簡素化する方法について説明します。
データベース・インストール・プロセスが、ORACLE_BASE
環境変数に基づくよう再設計されました。これまで、この変数の設定はオプションで、必要な変数はORACLE_HOME
のみでした。この機能を使用すると、ORACLE_BASE
のみが必要な入力で、ORACLE_HOME
の設定はORACLE_BASE
から導出されます。この変更により、Oracleソフトウェア・インストールの編成方法が簡素化されるため、進行中の管理が簡単になります。
この機能では、デフォルトのOracle DatabaseインストールがOptimal Flexible Architecture(OFA)の仕様にさらに準拠するため、管理性が向上します。
自己管理型のデータベース領域、オブジェクトおよびトランザクションについて説明します。
自動UNDO管理(AUM)は、デフォルトで有効化されています。それぞれの環境に合せてUNDO表領域を適切なサイズにできるよう、PL/SQLプロシージャが提供されています。
この機能により、新しいリリースにアップグレードされるデータベースからAUMへのシームレスな移行が簡単になるため、AUMのすべての利点を利用できるようになります。
パーティション化されたオブジェクトの改善された統計収集プロセスでは、かわりにサマリーが使用されるため、アクセスされていないパーティションに関する統計を再収集する必要がありません。
パーティション化されたオブジェクトは大規模化する傾向があり、次第に統計収集(特にグローバル統計収集)に時間とリソースがかかるようになります。この機能により、パーティション化されたオブジェクトの統計収集の速度と精度が大幅に向上します。
次の機能により、一時領域の管理が簡略化されます。DBAは、使用中の一時領域の量、一時領域を使用中のユーザーおよび一時領域がさらに必要かどうかを簡単に判断できます。
この機能は、一時領域の不適切な構成が原因のエラーの削減に役立ちます。また、リソース集中型の問合せなど、アプリケーション設計の問題を特定できます。
次の各項では、自己管理型の問合せパフォーマンスおよびアクセス方法について説明します。
この機能では、自己学習機能を追加することにより、自動SQLチューニングのレベルを向上させます。
Oracle Databaseでは、適切なSQLプロファイルを作成することにより、高負荷のSQL文が自動的に検出され、メンテナンス・ウィンドウで必要に応じてチューニングされるようになりました。また、高負荷のSQL文のパフォーマンスを大幅に向上させる索引など、新しいアクセス構造を作成するための積極的なアドバイスも発行されます。
統計の発行が、統計の収集と切り離されました。
オプティマイザ統計の変更は、実行計画に悪影響を及ぼす可能性があります。オプティマイザで統計収集を完全に使用可能にしないことにより、アプリケーション開発者およびDBAが、実行計画に対する新しい統計の影響を評価する機会ができます。
単一の表の任意の列セットの複数列統計を収集できるようになりました。この拡張により、2列以上が関連する複数列のフィルタ条件や結合など、多くのSQL構文の見積りの精度が向上します。
収集されるオプティマイザ統計のタイプを拡張すると、オプティマイザが精度の向上する最善の計画を選択する際に役立ちます。
SQLアクセス・アドバイザは、SQL文のパフォーマンスを向上させるために、表、マテリアライズド・ビューおよび索引をどのようにパーティション化するかに関するアドバイスが含まれるよう拡張されました。
Oracle Databaseには、適切に使用するには専門知識と時間が必要な様々なパーティショニング・オプションが用意されています。この機能では、最適なパフォーマンスを実現するために特定のオブジェクトをどのようにパーティション化するかに関して正確で優れたアドバイスを提供することにより、それぞれの環境に最適な方法で誰でも簡単にパーティショニングを使用できるようになります。
SQL計画の管理機能により、オプティマイザで、SQL文の実行計画の履歴を維持できます。オプティマイザは、実行計画の履歴を使用して、SQL文の計画変更を表す新しい計画を検出します。オプティマイザにより新しい計画が検出されると、新しい計画は保存されてパフォーマンス検証用にマークされ、(現在最適な計画として認識されている)古い計画が使用されます。オプティマイザにより新しい計画が使用されるのは、古い計画よりパフォーマンスがよいことが検証された後のみです。
SQL文の実行計画の変更は、システムのサーバー・パフォーマンスの低下に繋がる場合があります。実行計画の変更は、新しいバージョンのオプティマイザ、オプティマイザ統計のリフレッシュ、オプティマイザのパラメータの変更など、システムの変更によって発生します。この新しいSQL計画の管理機能により、実行計画の変更が原因のパフォーマンスの低下を防ぐことができます。
次の各項では、自己管理型のStreams(レプリケーションおよびAQ)操作の拡張内容について説明します。
アラートは、Streamsプロセスが無効化された場合に自動的に生成されます。アラートは、主要なStreamsメトリックに対するユーザー定義のしきい値に基づいて生成することもできます。
アラートにより、重要なStreamsコンポーネントに関する直接の情報がStreams管理者に提供されます。
DBMS_COMPARISON
パッケージを使用すると、データベース間の表データを比較できます。また、データの相違を解決する機能が提供されます。
この機能は、単一のデータベース内またはデータベース全体のデータの一貫性の検証に使用できます。
管理者は、レプリカを使用できない場合にストリームを分割でき、将来そのストリームをレプリケートできます。分割されたストリームを使用するレプリカが到着したら、ストリームを再び1つのストリームにマージできます。
この機能を使用すると、ストリームのレプリケーションの使用不可能なレプリカの影響を最小限にできます。
この機能により、LCRがプロセス間およびStreams内のデータベース全体を移動する経路を追跡する簡単な方法が管理者に提供されます。Streamsのメッセージ・トラッキングは、特定のセッションのプロシージャ経由で開始されます。そのセッションで生成される後続のLCRアクティビティがマークされます。LCRがストリームを移動すると、そのLCR上のアクションがトレースされ、その情報をランタイム・ビューで参照できます。
Streamsのメッセージ・トラッキングにより、管理者はStreams構成内の問題を簡単に診断できます。
この機能により、アドバイザはStreamsの使用中に、構成およびパフォーマンスの問題を診断できます。Streamsのパフォーマンス・アドバイザは、すべてのStreamsコンポーネントのパフォーマンスをレポートし、パフォーマンス・チューニングの提案を示します。
Streamsのパフォーマンス・アドバイザにより、Streams構成の設定および管理に関する有益な情報が提供されます。
この機能により、Streamsトポロジを検出するためのPL/SQLパッケージおよび一連のデータ・ディクショナリ・ビューが提供されます。トポロジ・ディスカバラは、データベース・リンクおよび関連データベースに対する権限付きの単一のスキーマを使用し、関連するコンポーネントを特定してストリーム識別子を割り当てるため、各データベースにあるStreamsの様々なコンポーネント(取得、伝播の送信者/受信者、適用)を移動します。管理者は、データベース・ビューでStreamsトポロジの詳細を参照できます。
管理者は、Streamsトポロジ・ビューを使用してStreamsの設定を簡単に確認できます。また、Streamsを管理および監視するために、Streamsアドバイザをこの機能と組み合せて使用することも可能です。
この機能により、データベース表への変更をユーザー・トランザクションの一部として取得できます。
同期的なStreamsの取得により、データベース表の小規模なサブセットをレプリケートするためのリソース要件が最小限になります。
次の各項では、Oracle Database 11gリリース1(11.1)のパフォーマンス機能について説明します。
次の各項では、全体的なサーバー・パフォーマンスの拡張内容について説明します。
この機能により、Oracle Databaseカーネルの一部としてNFSクライアントが実装されます。
この機能の主な利点は、パフォーマンスおよび管理性の向上です。直接NFSクライアントを使用すると、Oracle固有の最適化が組み込まれ、オペレーティング・システムにおけるNFSプロトコルのカーネル・モード実装で従来検出されていた追加のオーバーヘッドがなくなることにより、I/Oパフォーマンスが向上します。また、NFSクライアント・パラメータの大部分を手動でチューニングする必要がなくなったため、構成が簡略化されます。
パーティション・プルーニングで、副問合せプルーニングではなくブルーム・フィルタ処理と呼ばれる新しいフィルタリング機能が使用されるようになりました。副問合せプルーニングはコストベースの判断でアクティブ化され、内部(再帰的)リソースを消費しましたが、新しいスキーマに基づくプルーニングは、消費される追加のリソースが最小限であるため常にアクティブ化されます。
パーティション・プルーニングのパフォーマンスが拡張されました。さらに、パーティション・プルーニングは、パーティション・オブジェクトとのすべての結合で自動的にアクティブ化されます。
この機能は、カーソルが共有されるかどうかの判断に役立ちます。たとえば、既存のカーソルをその計画とともに無分別に再利用するかわりに、オプティマイザでは、カーソルの共有可能性を評価する際に安全な値の範囲が考慮されます。
カーソルの共有は、より高機能な共有モデルに拡張されました。これにより、共有される文のバインド変数固有の計画最適化を保持したまま、カーソルの共有をより汎用的に利用できます。
Oracle Database 11gには、NLS関連の機能に対する段階的なパフォーマンスの拡張が含まれます。
この機能により、NLSの機能を使用するユーザーに対するパフォーマンスが改善されます。
次の各項では、基本的なSQLおよびPL/SQL文のパフォーマンスの向上について説明します。
この機能により、OCIアプリケーションで不連続なバッファを指定し、定義またはバインド・コールの読取りまたは書込みを実行できます。
頻繁な読取り/書込みがある分散データソースを持つアプリケーションでは、不連続なメモリーにデータが存在することが多々あります。この機能を使用すると、これらのアプリケーションのパフォーマンスが高速になり、連続したチャンクにコピーするメモリーのオーバーヘッドがなくなるため、使用するメモリーが少なくなります。
索引構成表のビットマップ結合索引により、別のIOTまたはヒープ表の列に基づき、単一のIOTまたはヒープ表の行へのアクセスが提供されます。IOTに対するビットマップ結合索引のサポートでは、事前に制限を実行することにより、表の実際の結合を回避でき、結合されるデータ量を削減できます。ビットマップ結合索引は、領域の使用効率がよく、ビット単位操作で問合せを高速化できます。
この機能により、索引構成表(IOT)に対するビットマップ結合索引のサポートが提供され、パフォーマンスが向上します。
様々なSQL実行ステップおよび内部変換のコストベースが、より正確な方法で決定されるようになりました。
オプティマイザの内部見積りメカニズムの拡張により、実行計画生成の精度が向上し、より最適な計画が生成されます。
この機能により、OCI/ネットワーク層を介したスループットが向上し、データ変換のオーバーヘッドが低減します。
この拡張により、大量のデータ変換に関わる文のみでなく、SQL文のパフォーマンスも向上します。
OCI記述子は、OCIによる解析のみを目的とした不透明なデータ構造ですが、OCIDateTime
およびOCILobLocator
などのデータを示すためにアプリケーションによって使用されます。
これまで、一度に割り当てられる記述子は1つのみでした。この機能を使用すると、記述子の配列を同時に割当ておよび解放できます。
OCIリソースを多数使用するアプリケーションでは、新しい記述子の配列の割当てインタフェースを使用してこれらのリソースをより簡単に割り当てられます。これにより、コード・メンテナンスが減り、メモリーを割当ておよび解放するためのCPUオーバーヘッドが少なくなります。
この機能により、配列のフェッチを実行中に位置0で定義されたメモリーに、SELECT...FOR UPDATE
問合せの結果としてフェッチされた行のROWID
を明示的にフェッチする機能が提供されます。ユーザーは、ROWID
をフェッチする問合せを、他の列とともに明示的に変更する必要はありません。
配列のフェッチを利用しているアプリケーションで、必要に応じて個々の行を更新できるようになったため、高パフォーマンスのアプリケーションがさらに柔軟になります。
Oracle Database 11gの新機能は、同じパラメータ値がコールされた場合に、次のアクセスで再計算するのではなく、参照できるようその結果をキャッシュする必要があることを示すために、PL/SQLファンクションをマークする機能です。このファンクションの結果キャッシュにより、領域と時間が大幅に節約されます。これは、入力値を参照キーとして使用して透過的に実行されます。キャッシュはシステム全体であるため、ファンクションを起動するすべての個別セッションにメリットがあります。指定された値のセットの結果が変更される場合には、構成メンバーを使用してキャッシュ・エントリを無効化できるため、次のアクセスで正しく再計算されます。この機能は、スキーマレベルの表から選択されたデータで計算された値が、ファンクションにより戻される場合に特に便利です。そのような使用方法の場合、無効化構成メンバーは単純で宣言的です。
この機能を使用する複数ユーザーの同時アプリケーションでは、レスポンス時間が改善されます。セッションのプライベート・スキーマを実装するアプリケーションでは、この機能を使用することで使用されるメモリーが非常に少なくなり、スケーラビリティが向上します。
多くのプラットフォームにおいて、サード・パーティのCコンパイラを使用せずに、PL/SQLコンパイラでプロセッサ固有のネイティブ・コードをPL/SQLソース・コードから直接生成できるようになりました。Oracle Database 10gと同じように、生成されたコードはデータベース・カタログに標準的に保存されます。ユニットが必要な場合は、Oracle実行可能ファイルにより、.DLL
または.so
ファイルを使用してユニットをステージングせずに、コードがカタログからメモリーに直接ロードされます。
ネイティブでコンパイルされたPL/SQLプログラムの実行速度は、Oracle Database 10gより遅くなることはなく、規模に合せて改善される場合もあります。
この機能のあるプラットフォームでは、Oracle Database 10gパラメータplsql_native_library_dir
およびplsql_native_library_subdir_count
は不要で、設定する必要もありません。Oracle Database 10gからアップグレードする場合、これらのディレクトリにある既存のファイルは安全に削除されます。
PL/SQLのネイティブのコンパイルの利点は、Oracle Database 11gで自動的に使用できることです。サード・パーティのソフトウェアは不要です(CコンパイラもDLLローダーも不要です)。
Oracle 11gの最初のリリースでは、この機能を使用できないプラットフォームもあります。特定のプラットフォームでこの機能を使用できない場合、ネイティブ・コンパイルのOracle Database 10g実装はそのプラットフォームでは変更されません。プラットフォーム固有のドキュメントで、使用しているプラットフォームでこの機能を使用できることを確認してください。
キャッシュされた結果の保存および取得に、別々の共有メモリー・プールが使用されるようになりました。問合せ結果のキャッシュからの問合せの取得は、問合せを再実行するよりも高速です。問合せ結果のキャッシュを使用している場合、頻繁に実行される問合せのパフォーマンスは向上します。
新しい問合せ結果のキャッシュにより、データベース・メモリーへの明示的な結果のキャッシュが可能になります。キャッシュされた結果を使用する後続の問合せでは、パフォーマンスが大幅に向上します。
次の各項では、Linux、WindowsおよびIntelなどのプラットフォームでのプラットフォーム固有の最適化について説明します。
Oracle ODBCドライバは、Windowsでは設定DDLを使用して、LinuxおよびSolarisではodbc.ini
を介して設定可能な次のオプションで拡張されました。
コード変更はほとんどせずに、ODBCアプリケーションがより高速で稼働するようになります。
次の各項で説明される機能には、セキュリティおよびコンプライアンスが含まれます。
次の各項では、Oracle Advanced Securityの機能について説明します。
この機能では、Oracle Kerberos実装がレルム間認証をサポートするよう更新されます。あるレルムのKerberosプリンシパルで、別のレルムのプリンシパルに認証を与えることができます。
この機能の利点は、証明書や公開鍵インフラストラクチャ(PKI)を管理するためのオーバーヘッドのない強力な認証を求めるユーザーにとって、Kerberosがより現実的な選択肢になることです。
SYSDBA
およびSYSOPER
として作成された接続を含み、データベースへのすべての接続で、強力な認証を使用できるようになりました。
Oracle8i以来、PKI、KerberosおよびRadiusを介して、SYSDBA
またはSYSOPER
として作成された接続を除き、データベースへのすべての接続で強力な認証がサポートされてきました。この機能で、強力な認証の機能をSYSDBA
およびSYSOPER
としての接続に拡張することで、オラクル社の強力な認証のサポートが完成します。
表領域の暗号化は、Oracle Advanced Securityの透過的データ暗号化ソリューションの拡張です。表領域の暗号化を使用すると、表領域内のすべてのデータが暗号化され、表領域全体を暗号化できます。データベースが表領域にアクセスすると、関連するデータ・ブロックがアプリケーションに対して透過的に復号化されます。
透過的データ暗号化表領域の暗号化では、表領域全体の暗号化が可能なため、透過的データ暗号化列の暗号化の代替方法が提供されます。これにより、暗号化する列を決定するためにアプリケーション(特に、個人情報(PII)を含む列が大量にあるアプリケーション)を細かく分析する必要がなくなります。表領域の暗号化を使用すると、表全体の暗号化が可能になり、個人情報(PII)が含まれる列を特定する必要がなくなります。暗号化するデータの量が少ないユーザーは、透過的データ暗号化列の暗号化ソリューションを引き続き使用できます。
この機能を使用すると、セキュリティをより強化するために、透過的データ暗号化(TDE)のマスター鍵を外部のハードウェア・セキュリティ・モジュール(HSM)に保存できます。
マスター鍵をオペレーティング・システムに保存することが心配なユーザーの場合、この機能を使用することで、透過的データ暗号化(TDE)のマスター鍵のセキュリティをより強化できます。
次の各項では、パスワード保護の強化、セキュア・ファイル権限、オプションのデフォルト監視設定、データベースからのネットワーク・コールアウトに対する新しいコントロールが用意された即時利用可能でセキュアな構成について説明します。
この機能により、データベースが自動的に監査用に構成され、データベース接続などの特定のイベントに対して監査が有効化されます。
監査は、セキュリティ・レイヤーの重要な部分です。ユーザーがデータベースへの接続を追跡しやすくするために、デフォルトで一部の監査設定が有効化されています。
この機能により、『Oracle Databaseセキュリティ・ガイド』に記述されているパスワードの複雑性ルーチンがデータベースに組み込まれます。
この組込み機能は簡単に有効化でき、パスワードの設定または再設定時に、必ず複雑なパスワードが使用されます。
この機能では、組込みのプロファイルが提供されるため、データベース・ユーザーとプロファイルの関連付けが簡単になります。
組込みのプロファイルを使用して、パスワードの有効期限を強制し、ポリシーを再利用できます。
パッケージUTL_TCP
、UTL_INADDR
、UTL_HTTP
、UTL_SMTP
およびUTL_MAIL
を使用すると、OracleユーザーはRaw TCPまたはRaw TCPに作成された高レベルのプロトコルを使用して、データベースからのネットワーク・コールアウトを作成できます。これまで、各パッケージにおいて権限の粒度はexecute
のみで、指定されたインターネット・ホストのリストにユーザーがアクセスできる方法はありませんでした。新しいパッケージDBMS_NETWORK_ACL_ADMIN
では、XML DBによって実装されたACLを使用して、詳細に制御できます。
この機能により、DBAは提供されたPL/SQLパッケージを使用して、Oracleユーザーがどのインターネット・ホストにアクセスできるかを慎重に制御できます。
この機能により、リスナーを使用したセキュアなサービスの登録が実現されます。リスナー管理はデフォルトで保護されています。新しいモデルにより、簡単で管理しやすいオプションのプロセス管理と登録が提供されます。
このセキュリティの向上により、リモートおよびローカル操作の不正な使用を防ぐことができます。
この機能には、次の拡張内容が含まれます。
この機能は、データの安全な維持に役立ちます。
この機能により、ネットワーク・ネーミングに対する非匿名のLDAP参照のサポートが提供されます。よりセキュアなLDAPアクセスでは、ユーザーは、名前参照の前にクライアントが自らを特定する必要があることを指定できます。
この機能により、LDAPとNetネーミング間のセキュリティが向上しました。
次の各項では、Enterprise Security Manager、Oracle Policy Manager、Selective Audit、Audit VaultのUIのJava/Enterprise Manager SDKへの置換えおよび統合について説明します。
Enterprise Security ManagerおよびOracle Policy Managerで以前提供されていた機能は、Enterprise Managerに統合されました。また、透過的データ暗号化などの新機能の管理性もEnterprise Managerに追加されました。
長年にわたり、Oracle製品には、データベース・セキュリティを管理するための様々なツールがありました。それらのツールのすべての機能が、Enterprise Managerに統合され、データベースのセキュリティ管理が大幅に簡素化されました。
この拡張により、カタログ管理者は特定のRMANユーザーに、カタログ内の登録済データベースの参照を許可できるようになりました。
この機能では、RMANユーザーにそのユーザーに認証および登録されたカタログ内のデータベースのみの表示が許可されるため、カタログのセキュリティが強化されます。RMANユーザーは、登録済のすべてのデータベースを参照することはできなくなりました。
次の各項では、Oracle Database 11gリリース1(11.1)の認証機能について説明します。
この機能では、Oracleパスワードの保存に使用されるベリファイアまたはハッシュが変更されています。
この機能により、業界標準のアルゴリズムに基づいて、保存されたデータベース・パスワードがより強力に保護されます。また、パスワードにおける大/小文字の混在を許可することにより、パスワードベースの認証のセキュリティが向上します。
次の各項では、Oracle Database 11gリリース1(11.1)のWindowsの機能について説明します。
これらの機能により、Windowsで稼働するOracleデータベースに対して新しい拡張されたサポートが提供されます。これらの機能は、Active Directoryおよびボリューム・シャドウ・コピー・サービスのサポートとの統合の改善を含み、Windowsサービスとネイティブに統合されます。
この機能では、デフォルトのActive Directory構成との統合の改善によりセキュリティが拡張され、Active Directoryを使用したOS認証のサポートが追加されます。
この機能により、Microsoft Active Directoryに対するNetネーミングのサポートが改善されます。
Oracle VSSライターを使用すると、Oracle DatabaseでVSSにより開始されたWindows 2003以上でのバックアップおよびリカバリに関与できます。VSSは、次の3つの参加者で構成されるWindowsインフラストラクチャです。
いくつかの主要なバックアップおよび記憶域のベンダーにより、リクエスタおよびプロバイダ・アプリケーションが提供されるようになりました。Oracle VSSライターを使用すると、ユーザーは、これらのベンダーのコンポーネントと相互に運用するVSS環境で、Oracleデータを確実にバックアップおよびリカバリできます。
この機能により、Windows 2003以上のボリューム・シャドウ・コピー・サービス(VSS)インフラストラクチャとの完全な相互運用性が実現されます。
|
Copyright © 2001, 2008 Oracle Corporation. All Rights Reserved. |
|