次に、SQL Anywhere バージョン 11.0.0 の主な機能を示します。
テーブルのマージのサポート SQL Anywhere では、テーブル、ビュー、システム・プロシージャの結果をテーブルまたはビューにマージできるようになりました。MERGE 文を参照してください。
ログイン・ポリシーのサポート SQL Anywhere では、ログイン・ポリシーがサポートされるようになりました。ログイン・ポリシーは、ユーザに対してデータベース接続が確立されるときに適用するルールを定義する一連のオプションです。SQL Anywhere には、すべてのログイン・ポリシーのデフォルト値を含むルート・ポリシーがあります。ルート・ログイン・ポリシーに優先する設定を含む個別のログイン・ポリシーを作成できます。ログイン・ポリシーは各ユーザに個別に割り当てます。各ユーザが所属するグループからログイン・ポリシーを継承することはありません。特定のユーザへのポリシーの割り当ては、必要に応じて変更できます。ログイン・ポリシーの管理の概要を参照してください。
この機能を使用するには、データベースをアップグレードする必要があります。SQL Anywhere のアップグレードを参照してください。
全文検索のサポート SQL Anywhere で全文検索がサポートされるようになりました。全文検索を行うと、データベース内で特定の単語が出現するすべての箇所を簡単に検索できます。全文検索は、単語単位であるという点、またテーブルのローをスキャンするのではなくテキスト・インデックスを使用する点で、LIKE、REGEXP、SIMILAR TO などの述部を使用した検索とは異なります。全文検索を参照してください。
全文検索機能を使用するには、データベースをアップグレードする必要があります。SQL Anywhere のアップグレードを参照してください。
正規表現のサポート SQL Anywhere では、REGEXP と SIMILAR TO の 2 つの探索条件を使用した正規表現がサポートされるようになりました。REGEXP 探索条件とSIMILAR TO 探索条件を参照してください。
正規表現の概要とLIKE 探索条件、REGEXP 探索条件、SIMILAR TO 探索条件も参照してください。
データベース・オプション設定のトランザクション・ログへの記録 LOAD 操作時に有効なデータベース・オプション設定がトランザクション・ログに記録されるようになりました。このため、最初の LOAD 操作と、リカバリ時にトランザクション・ログを適用して実行される最後の LOAD 操作で、date_order や nearest_century などのオプションが違っても、データの矛盾が生じません。
オプティマイザでのインデックス使用の強化 SQL Anywhere のインデックス機能がいくつかの点で強化されました。これらの新機能を使用するには、データベースをアップグレードする必要があります。SQL Anywhere のアップグレードを参照してください。
複合インデックス・スキャンのサポート オプティマイザが強化され、複数のインデックス (最大 4 つまで) を考慮して、ベース・テーブルの複数の述部に基づいてテーブルからデータが取り出されるようになりました。これまでは、クエリのインデックス・ヒントとしてインデックスを 1 つだけ指定できました。SELECT 文の WITH 句の新しいインデックス・ヒントを使用すると、複合インデックス・スキャンを使用可能なことを指定できます。FROM 句を参照してください。
複合インデックス・スキャンという新しいテーブル・アクセス・アルゴリズムが追加されました。MultipleIndexScan 方式 (MultIdx)を参照してください。
インデックス専用取得のサポート オプティマイザが強化され、インデックス専用取得がサポートされるようになりました。インデックス専用取得では、テーブル内の対応するローにアクセスする必要がなく、インデックスのデータを使用してクエリが処理されます。オプティマイザは、可能な場合は常にインデックス専用取得を実行します。INDEX ONLY {ON | OFF} ヒントを使用して、インデックス専用取得を実行するかどうかを制御できます。インデックスを使用して述部を満たすことができるとFROM 句を参照してください。
データのロードとアンロードの強化 データのロードとアンロードが次のように強化されています。
クライアント・コンピュータにあるファイルからのデータのロードとファイルへのデータのアンロード データベース・サーバでは、これまでも SQL 文や関数を使用して、データベース・サーバのコンピュータにあるデータの読み込みと書き込みがサポートされていました。今回実装された新しい機能では、この機能をクライアント・コンピュータにあるファイルにも適用できるようになったので、クライアントのファイルをデータベース・サーバのコンピュータにコピーする必要がなくなりました。このデータの転送は効率的に行われる一方、クライアント・コンピュータ上のデータに対するセキュリティとアクセス制御が実現します。
クライアント・コンピュータにあるファイルの実際の読み込みはクライアント・ライブラリによって透過的に行われます。したがって、既存のクライアント・アプリケーションで新しい SQL 言語のサポートを使用することで、この新機能をすぐに利用できます。
この新機能を利用するには、クライアントとデータベース・サーバの両方が SQL Anywhere バージョン 11.0.0 であり、またクライアントで Command Sequence 通信プロトコル (CmdSeq) を使用する必要があります。
クライアント・コンピュータ上のデータへのアクセスを参照してください。
変数へのデータのアンロード UNLOAD 文が強化されて INTO VARIABLE 句が追加され、変数にデータをアンロードできるようになりました。UNLOAD 文を参照してください。
別のテーブルのカラムからのデータのロード LOAD TABLE 文が強化されて USING COLUMN 句が追加され、別のテーブルのカラムからデータをロードできるようになりました。LOAD TABLE 文とLOAD TABLE 文を使用したデータのインポートを参照してください。
この新機能を使用するには、データベースをアップグレードする必要があります。SQL Anywhere のアップグレードを参照してください。
値 (BLOB) からのデータのロード LOAD TABLE 文が強化されて USING VALUE 句が追加され、関数やシステム・プロシージャの結果などの値式からデータをロードできるようになりました。LOAD TABLE 文とLOAD TABLE 文を使用したデータのインポートを参照してください。
この新機能を使用するには、データベースをアップグレードする必要があります。SQL Anywhere のアップグレードを参照してください。
LOAD TABLE 文のリカバリとミラーリングの強化 これまでは、ミラーリングされたデータベース構成で LOAD TABLE 文を使用してファイルからデータをロードできませんでした。これは、LOAD TABLE 文だけがトランザクション・ログに記録され、ロード対象のデータは記録されなかったからです。また、データベースをリカバリするときに、LOAD TABLE 文を使用してロードされたデータは、リカバリ時に元のロード・ファイルがないかぎり回復不能でした。
LOAD TABLE 文が強化され、WITH CONTENT LOGGING、WITH ROW LOGGING、WITH FILE NAME LOGGING の 3 つの新しいログ・オプション句が追加されました。これらの句を使用すると、ロードするデータをトランザクション・ログに記録するかどうかを制御できます。データベースのミラーリング・システムでは、このデータを使用してミラー・データベースをロードできます。また、リカバリ時にロード・ファイルがなくてもリカバリが可能になります。LOAD TABLE 文を参照してください。
この機能を使用するには、データベースをアップグレードする必要があります。SQL Anywhere のアップグレードを参照してください。
マテリアライズド・ビューの強化 マテリアライズド・ビューのサポートが次のように強化されました。
即時マテリアライズド・ビューのサポート 基本となるテーブル内のデータの変更がマテリアライズド・ビュー内のデータに影響する場合に、マテリアライズド・ビューをすぐにリフレッシュするように設定できます。このようにすぐにリフレッシュするビューを「即時ビュー」と呼び、すぐにリフレッシュされないビューは今後「手動ビュー」と呼びます。このリリースの前に作成されたマテリアライズド・ビューは手動ビューと見なされます。また、新規に作成するマテリアライズド・ビューはデフォルトで手動ビューになります。
手動ビューと即時ビューの詳細については、マテリアライズド・ビューの操作と手動マテリアライズド・ビューと即時マテリアライズド・ビューを参照してください。
この機能をサポートするシステム・プロシージャを使用するには、データベースをアップグレードする必要があります。SQL Anywhere のアップグレードを参照してください。
複数のマテリアライズド・ビューの同時リフレッシュ これまでは、マテリアライズド・ビューは一度に 1 つずつリフレッシュする必要がありました。各リフレッシュ操作の間で基本となるデータが変更された場合、マテリアライズド・ビューの間で矛盾が生じる可能性がありました。このリリースでは、同じデータを使用するマテリアライズド・ビューをリフレッシュするときに、REFRESH MATERIALIZED VIEW 文にマテリアライズド・ビューのリストを指定できるようになりました。REFRESH MATERIALIZED VIEW 文と手動ビューのリフレッシュを参照してください。
REFRESH MATERIALIZED VIEW 文の新しい WITH SHARE MODE 句 REFRESH MATERIALIZED VIEW 文に、新しい句 WITH SHARE MODE が追加されました。このモードでは、リフレッシュ操作中に、基本となるテーブルを他のトランザクションで読み込むことができます。この句を指定すると、基本となるすべてのテーブルの共有テーブル・ロックが取得されてから、リフレッシュ操作が実行されます。マテリアライズド・ビューが IMMEDIATE REFRESH と定義されているか、データベースのスナップショット・アイソレーションが有効になっていないかぎり、デフォルトのモードは WITH SHARE MODE になります。リフレッシュのデフォルト動作の詳細については、REFRESH MATERIALIZED VIEW 文を参照してください。
ファイルまたは BLOB 文字列の内容の問い合わせのサポート FROM 句の新しい OPENSTRING 句を使用して、ファイルや BLOB 文字列のデータを問い合わせることができるようになりました。OPENSTRING 句では、問い合わせるオブジェクト、またデータのスキーマやその他の解析情報を指定できます。FROM 句を参照してください。
OPENSTRING 操作が実行されると、新しいプラン項目 OpenString が実行プランに表示されます。OpenString アルゴリズム (OpenString)を参照してください。
圧縮インデックスのサポートの向上 圧縮インデックスのサポートが向上された結果、データベースをアンロードしてから再ロードして再構築すると、再構築されたデータベースが元のデータベースよりも小さくなる場合があります。このデータベースのサイズの縮小は、問題や、データが失われたことを示すものではありません。
ミラー・サーバで実行されているデータベースへの読み込み専用アクセス データベース・ミラーリングを使用している場合に、ミラー・サーバで実行されているデータベースに接続できるようになりました。したがって、プライマリ・サーバの可用性を維持しながら、リソースを大量に使用する可能性があるレポート操作の負荷をミラー・サーバに割り当てることができます。ミラー・データベースに接続するには、読み込み専用のミラー・データベースへのアクセスに使用できる -sm サーバ・オプションでデータベース・サーバ名を指定します。-sm データベース・オプションとミラー・サーバで実行されているデータベースへの読み込み専用アクセスの設定を参照してください。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |