次に、バージョン 10.0.1 で導入された Ultra Light の追加機能を示します。
SQL パフォーマンスの改善 これまで Ultra Light では、クエリに既存のインデックスを使用することに利点がないと Ultra Light クエリ・オプティマイザが判断した場合に、プライマリ・キー・インデックスがデフォルトで使用されていました。
このバージョンでは、プライマリ・キーを使用するのではなく、データベース・ページから直接ローにアクセスします。これによりローはプライマリ・キー・インデックスの順でなくなるため、これまでのリリースとは異なる順序でクエリの結果が返されることがあります。データの順序が重要である場合、クエリで ORDER BY 句を使用してください。ダイレクト・ページ・スキャンの使用とインデックス・スキャンの使用を参照してください。
SQL によるデータベース・プロパティとオプションのアクセシビリティ 以前のバージョンでは、各 Ultra Light API のメソッドを使用した場合だけ、データベース・プロパティやオプションにアクセスすることが可能でした。今回のバージョンでは、Ultra Light SQL に次の文と関数が導入されたため、SQL (Interactive SQL を含む) を使用してプロパティやオプションを設定したり取得したりすることができるようになりました。
SET OPTION 文。Ultra Light SET OPTION 文を参照してください。
DB_PROPERTY 関数。DB_PROPERTY 関数 [システム]を参照してください。
同時接続数の増加 Ultra Light では、より多くの同時接続数をサポートするようになりました。データベース 1 つあたりの接続数は 14 のままです。しかし、全体の同時データベース接続数は次のように増えました。
Palm OS と Symbian OS の場合はデータベース数が 8、同時接続数が 16
その他のすべてのプラットフォームの場合はデータベース数が 32、同時接続数が 64
エンジンへの接続に使用できる SQLCA の合計数は 31 です。データベース・マネージャあたり 1 つの SQLCA と 接続あたり 1 つの SQLCA を使用するコンポーネントがあることをふまえて、この値を使用してください。つまり、Ultra Light.NET API を使用するアプリケーションでは、実際の接続制限は合計で 30 に減ってしまいます。
コミット・フラッシュ操作 これまでは、COMMIT 文または API 呼び出しによって実行されたコミット操作は、Ultra Light がトランザクションを安全に記憶領域にフラッシュした後でのみ完了していました。このリリースでは、これらの動作を設定したり、独立した操作として論理的に分けたりすることができるようになりました。
論理コミットでは、アプリケーションでトランザクションをロール・バックできるようになりました。
チェックポイントでは、エラー後のリカバリ・ポイントを使用できるようになりました。これにより、メモリにフラッシュ済みの、最後にコミットされたトランザクションまでリカバリすることができます。
ただし、オートコミット機能を使用する Ultra Light アプリケーションのパフォーマンスを強化することもできます。特にグループ・コミット・フラッシュを使用する場合に有効です。Ultra Light でのデータのバックアップとリカバリと単一のトランザクションまたはグループ化されたトランザクションのフラッシュを参照してください。
この新しい動作は、次の機能でサポートされます。
CHECKPOINT 文。Ultra Light CHECKPOINT 文を参照してください。
Ultra Light Embedded SQL API と C++ API コンポーネントでの Checkpoint メソッド。その他の言語では、代わりに CHECKPOINT 文を使用する必要があります。次の項を参照してください。
COMMIT_FLUSH 接続パラメータ。Ultra Light COMMIT_FLUSH 接続パラメータを参照してください。
commit_flush_timeout データベース・オプションと commit_flush_count データベース・オプション。Ultra Light commit_flush_timeout オプション [テンポラリ]とUltra Light commit_flush_count オプション [テンポラリ]を参照してください。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |