SQL問合せのガイドライン
データの抽出に使用するSQL問合せは、慎重に使用してください。
ログ・データを抽出するためのSQL問合せを記述する場合、次のガイドラインに従います:
-
読取り専用問合せのみを使用します。
-
問合せを実行するために提供する資格証明には、必要なデータの抽出に必要な権限のみを付与してください。
-
問合せパフォーマンスも重要な考慮事項です。これは、同じホストで実行されているターゲット・データベースと他のソフトウェアの両方に影響する可能性があるためです。
-
問合せには、データベース・レコードの順序付けに使用できる列を少なくとも1つ含める必要があります。これは、ある種の順序番号またはタイムスタンプ列のいずれかです。新しいエントリごとに、古いレコードの値以上の値をこの列に割り当てる必要があります。SQL問合せは、新しいデータを抽出するために一定間隔で実行されます。Oracle Logging Analyticsでは、この列を使用して、前の収集以降に導入された新規レコードを識別します。全表スキャンを回避するため、この列には索引を付けることをお薦めします。
-
timeまたはsequenceフィールドでは
ORDER BY
句またはWHERE
句を使用しないでください。これは、Oracle Logging Analyticsによって行われるためです。必要なフィルタリングおよびソートは、指定した問合せでOracle Logging Analyticsによって適用されます。ただし、他のフィールドにはWHERE
句を使用できます。