インデックス処理の強化 今回のリリースでは、インデックス処理が次のように強化されています。
インデックス共有処理のサポート プライマリキー、セカンダリキー、外部キー、または一意性制約を作成するときに、物理インデックス (ディスク上の実際のインデックス構造) を指す論理インデックスを作成できるようになりました。データベースサーバーは、論理インデックスを満たすために新しい物理インデックスが必要かを自動的に判断します。このモデルを使用すると、物理インデックスの共有処理が可能になり、重複した物理インデックスを作成したり管理したりすることがなくなり、ディスク領域を無駄にすることがなくなります。高度:論理インデックスと物理インデックスを参照してください。
インデックス情報の記憶領域の向上 データベースでインデックス情報が編成される方法が向上されました。たとえば、プライマリキーと外部キーのインデックスを含むすべてのインデックスのリストが、単一のシステムテーブル ISYSIDX に格納されるようになりました。高度:カタログ内のインデックス情報を参照してください。
3 つの新しいシステムテーブル ISYSPHYSIDX、ISYSIDXCOL、ISYSFKEY によって、ISYSIDX にリストされているインデックスの追加情報が提供されます。
インデックスコンサルタントの強化 インデックスコンサルタントが強化され、クラスタードインデックス、負荷時のデータベースとサーバーのステータス、負荷統計値の完全なレポートに関する推奨事項が改善されました。インデックスコンサルタントはアプリケーションプロファイリングツールに統合されました。
インデックスの作成方法の制御が向上 アプリケーションが参照整合性制約 (プライマリキー、外部キー、または一意性の制約) を作成すると、データベースサーバーは制約のキーを構成するカラムでインデックスを暗黙的に作成することで、その制約を確保します。データベースサーバーで、インデックスの作成方法を指定できるようになりました。制約キーのカラムの順序を指定したり、インデックスの各カラムに値のシーケンス (昇順または降順) を指定できます。また、外部キーのカラムの順序やシーケンスを、対応するプライマリキーや一意性制約と一致させる必要はありません。
その他に、次の機能も強化されています。
プライマリキーの順序を変更するときに、テーブルのカラムを並べ替える必要がなくなりました。
すべての制約インデックスのカラムのシーケンスを、アプリケーションの要件を満たすように指定できるようになりました。
プライマリテーブルの設計と関連させなくても、外部キーのインデックスを外部キーテーブルに関するアプリケーションの要件に適合させることができるようになりました。
外部キーに一意性制約を設定できるようになりました。
新しい外部ジョインの削除によるリライト最適化 外部ジョインがクエリから削除されてもそのクエリが元のクエリと意味が変わらないときは、クエリの実行前に外部ジョインが削除されます。クエリ処理中に実行される最適化を参照してください。
日付フォーマット文字列での文字長セマンティックの使用 日付フォーマット文字列で、フォーマット指定子に置き返されるテキストの量を制御するために、文字長セマンティックを使用するようになりました。以前はバイト長セマンティックが使用されていました。たとえば、文字列 MMM を使用して日付をフォーマットする場合、以前は月を格納するために 3 バイトを使用することを示していましたが、3 文字を意味するようになりました。
ディレクトリアクセスサーバー ディレクトリアクセスサーバーを作成することで、データベースサーバーを実行しているコンピューターのディレクトリ構造にアクセスするリモートサーバーを作成できるようになりました。ディレクトリアクセスサーバーを参照してください。
ノルウェー語の照合 1252NOR が追加され、ノルウェー語がサポートされるようになりました。ノルウェー語の Windows システムで照合が指定されていない場合、データベースサーバーは、新規データベースのデフォルトの照合として 1252NOR を選択します。サポートされている照合と代替照合を参照してください。
UTF8BIN の照合 UTF8BIN 照合が追加され、バイナリデータのソート処理が向上しました。この新しい照合は、廃止予定の UTF8 照合に代わるものです。サポートされている照合と代替照合を参照してください。
データベースサーバーメッセージウィンドウの強化 データベースサーバーメッセージウィンドウが、次のように強化されました。
新しいウィンドウタイトルバーの右クリックメニュー サポートされるすべての Windows プラットフォーム (Windows CE を除く) で、データベースサーバーメッセージウィンドウのタイトルバーを右クリックすると、[バージョン情報] または [メッセージ領域のクリア] を選択できるようになりました。[バージョン情報] を選択すると、データベースサーバーの情報が表示されます。[メッセージ領域のクリア] を選択すると、データベースサーバーメッセージウィンドウのすべてのメッセージが消去されます。このウィンドウのレプリカ (データベースサーバーメッセージログファイル、Sybase Central の [サーバーメッセージと実行された SQL] ウィンドウ枠、SQL Anywhere コンソールユーティリティ) は、消去操作の影響を受けません。
データベースサーバーで使用される環境変数がデータベースサーバーメッセージウィンドウにロギングされる -ze サーバーオプションを使用すると、データベースサーバーメッセージウィンドウにデータベースサーバーの環境変数のリストが表示されます。この機能は NetWare または WindowsCE では使用できません。-ze dbeng12/dbsrv12 オプションを参照してください。
開始時のウィンドウ最小化の制御 データベースサーバーが起動すると、デフォルトでデータベースサーバーメッセージウィンドウは最小化されます。データベースサーバーの起動後に、データベースサーバーメッセージウィンドウが最小化されないにするには、-qn オプションを指定します。-qn dbeng12/dbsrv12 サーバーオプションを参照してください。
テーブルの前回更新日時の追跡機能 データベースサーバーが、前回テーブルが更新された日時を追跡できるようになりました。SYSTAB システムビューの新しい last_modified_at カラムを使用します。
ミラーリング中に別のサーバーに切り替わったときに SNMP トラップ SQL Anywhere SNMP Extension Agent とミラーリング中のサーバーとの接続が切断されて、別のサーバーとの接続が新しく確立された場合、SQL Anywhere SNMP Extension Agent によってトラップが送信されるようになりました。
このトラップは、元のサーバーがダウンしていて、ミラーとして動作していたサーバーがプライマリになったことを示します。トラップを参照してください。
要求のロギングの変更 要求のログはカンマ区切りのテキストフォーマットで格納されるようになり、元のサイズの約 3 分の 1 にまで小さくなりました。また、可能な場合は通常の時刻エントリではなく、等号 (=、ログで直前のエントリと同じ時刻という意味) または +nnn (nnn はログで直前のエントリから経過したミリ秒数) として時刻が記録されるようになりました。また、追加情報も記録されるようになりました。たとえばクエリでは、独立性レベル、フェッチされたローの数、カーソルタイプが記録されます。INSERT、UPDATE、DELETE 文の場合は、影響を受けたローの数と起動されたトリガーの数が記録されます。要求ロギングを参照してください。
sa_get_request_times システムプロシージャーでは新しい要求のログフォーマットだけをサポートします。ただし、tracetime Perl スクリプト tracetime.pl は新旧両方の要求のログフォーマットを処理します。tracetime スクリプトでは、新しいフォーマットのログの方が高速に処理できます。この違いは要求のログのサイズが大きいとより顕著になります。
ODBC ドライバーの強化 SQL Anywhere は、Adaptive Server Enterprise と DB2 のデータベースに接続するときに、新しいドライバーを使用してリモートデータアクセスを行います。Mobile Link、QAnywhere、リモートデータアクセスで使用される ODBC の変更を参照してください。
SQLANYSAMP10 環境変数 SQLANYSAMP10 環境変数は、demo.db や custdb.db サンプルデータベースなどの SQL Anywhere 10 のサンプルがあるディレクトリのロケーションを指定します。SQLANYSAMP12 環境変数を参照してください。
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |