データベース内の理解範囲述語とピボット分割

  • 概要概要

    [1]から、さまざまなインデックススキャンのコストと生産性を判断するために、Rdbオプティマイザーで予測推定がますます使用されています。

    特定のクエリが実行されると、行選択式の条件であるSQLステートメントの「where」句によって、選択される行が決まります。

    これらの条件または述語を使用して、データ行を見つけるためにスキャンされるインデックスの部分を制限できます。

  • 述語

    述語は、trueまたはfalseのブール値に評価される条件式です。

    述語は次のように使用できます。

    • ではSELECT文のWHEREFROM句またはHAVINGWHERE句特定のクエリに関連するどの行を決定します。
    • 結合操作に関連する行を決定するJOIN操作のON句内
    • UPDATEorDELETEステートメントのWHERE句で、どの行を変更するを決定します
    • ではWHERE CURRENT OF文のAND
    • トリガーされたアクションコードをいつ適用するかを決定するCREATE TRIGGERステートメントのWHEN
  • Actian:SQLの述語

    述語は、2つの式の間の関係を指定するキーワードです。

  • パーティション

    パーティションは、別個の独立した部分に論理データベース又はその構成要素の一部門です。

    これは、各パーティションが複数のノードに分散し、ノードのユーザーがパーティションでローカルトランザクションを実行する分散データベース管理システムで人気があります。

    現在のハイエンドRDMSは、データベースを分割するためのさまざまな基準を提供します。パーティショニングキー取得し、特定の基準に基づいてパーティションを割り当てます。

    • 範囲分割

      パーティショニングキーが特定の範囲内にあるかどうかを判断して、パーティションを選択します

    • リストの分割

      パーティションには値のリストが割り当てられます。パーティションキーにこれらの値のいずれかがある場合、パーティションが選択されます。

    • 複合パーティショニング

      上記のパーティションスキームの特定の組み合わせが可能です

    • ラウンドロビン分割

      最も単純な戦略であり、均一なデータ分散を保証します

    • ハッシュ分割

      パーティション番号を生成する属性にハッシュ関数を適用します

  • ピボットテーブル

    ピボットテーブルは、より広範なテーブルのデータを要約統計の表です。

    この要約には、合計、平均、またはその他の統計が含まれる場合があり、ピボットテーブルはこれらを意味のある方法でグループ化します。

    データのピボットはかなり一般的な問題であり、さまざまな種類があります。基本的に、要件は、複数の行のデータを1つの行の列に転置することです。

  • 参考文献

  1. データベースのパフォーマンスとチューニングのガイド:述語の見積もりOracleRdbの機能

  2. InterSystems:述語の概要

  3. Microsoft SQLドキュメント:述語

  4. Actian:SQLの述語

  5. ピボット-行から列へ

おすすめ

転載: blog.csdn.net/The_Time_Runner/article/details/115333533