ColumnStoreでのデータロードと操作

ColumnStoreは数通りのデータ投入方法をサポートします。

  • cpimportはデータの投入に最も高速な方法で、特定のパフォーマンスモジュールへ紐づけることを可能とします。 通常はこの方法が最初の選択肢となります
  • LOAD DATA INFILEはデータ一括挿入のもう一つの方法です。
    • 通常は、この方法は内部的にcpimportプロセスへデータを流します。ユーザーモジュール上にいくらかのメモリオーバーーヘッドが必要となり、そのため大きなデータのインポートには堅実な方法ではありません。
    • トランザクションモードでは、DMLのinsertは明らかに処理が遅く、binlogトランザクションファイルと、ColumnStoreバージョンバッファーファイルの双方が必要となります。
  • INSERT、UPDATE、DELETEのようなDMLは行レベルの変更をもたらします。ColumnStoreは一括操作に最適化されており、こういった操作はInnoDBよりも遅くなります。
    • 現在ColumnStoreはレプリケーションのスレーブのターゲットとしては動作しません。
  • 一括のDML操作は、一般的には個別の操作よりもよいパフォーマンスをもたらします。
    • 自動コミットとINSERT INTO SELECTの組み合わせは、LOAD DATA INFILEと同様の動きとなるため、内部的にはcpimportへ変換されて動作します。
    • 小さなステージングテーブルとのJOIN操作に基づく一括更新は、単一のカラムの更新であれば、特に酵素行に動作します。
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.