SAP SQL Anywhere におけるヒントを使用した SQL リクエストのカスタマイズ – パート 2
この記事のオリジナルは、Glenn Paulley が sybase.com に 2009 年 6月に掲載したものです。その中で、Glenn は SQL Anywhere におけるヒントを使用したクエリーセマンティクスのカスタマイズについて継続して解説しています。ブログの中で語られているように、状況によってはヒントは非常に便利です。
しかしながら、クエリーと DML の 効率的な実行において、ほとんどの場合は SQL Anywhere が稼働するすべてのコンテキストを考慮し、SQL Anywhere のクエリーオプティマイゼーションが「正しいこと」を行う、という素晴らしい仕事をしてくれるので、ヒントは経験豊富なユーザーが特定のシナリオでのみ使用するべきでしょう。
SQL リクエストのヒントに関するパート 1 の投稿で、私は特定の SQL 文によるコンカレンシーコントロールセマンティクスの修正テクニックについて解説しました。この 2 回目の投稿では、クエリーオプティマイゼーションにおいて、SQL Anywhere でサポートされている追加のヒントの機能について解説したいと思います。
明確にするために繰り返しますが、私はヒントの使用を推奨しているわけではありません。
ヒントを使用する場合には、かなりの注意を払う必要があります。なぜならば、インデックスヒントは、クエリーオプティマイザーの判断ロジックを上書きしてしまうからです。
また、メンテナンスの観点からも、問題となりやすいものです。特定の問題の回避策として、経験豊富なユーザーのみが使用することを推奨します。
ユーザー特有の選択性の見積もり
SQL Anywhere は、自己管理型のテーブルとカラム統計を(2009 年時点で)20 年前からサポートしています
続きはこちら:SAP SQL Anywhere におけるヒントを使用した SQL リクエストのカスタマイズ – パート 2
SAPのSAP SQL Anywhere製品ページはこちら