SQLダンプから大規模データセットを抽出する

複数のINSERT文にわたる何百もの行を含むSQLダンプを処理します。大規模抽出のパフォーマンスとプレビュー制限について学びます。

Multi-Row INSERT

詳細な説明

大規模SQLダンプの処理

何百、何千もの行を含むデータベースダンプからデータを抽出する必要がある場合、SQLからCSVツールはブラウザ内ですべてを処理します。ツールがスケールをどのように処理するかを理解することで、大規模データセットを効率的に扱えます。

パターン例

CREATE TABLE access_log (
  id BIGINT PRIMARY KEY,
  timestamp DATETIME NOT NULL,
  ip_address VARCHAR(45),
  path VARCHAR(500),
  status_code INTEGER,
  response_time_ms INTEGER
);

INSERT INTO access_log VALUES
  (1, '2024-01-15 08:23:01', '192.168.1.100', '/api/users', 200, 45),
  (2, '2024-01-15 08:23:02', '10.0.0.50', '/api/products', 200, 123),
  -- ... さらに数百行 ...
  (500, '2024-01-15 09:15:44', '172.16.0.1', '/api/health', 200, 12);

パフォーマンス特性

データセットサイズ 解析時間 備考
100行未満 即時 フルプレビュー利用可能
100-1,000行 1秒未満 プレビューは100行に制限
1,000-10,000行 1-3秒 フルCSVダウンロード可能
10,000行以上 遅くなる可能性 入力の分割を検討

大規模データセットのヒント

  • プレビュー制限: テーブルプレビューはパフォーマンスのため最初の100行を表示します。フルCSV出力とダウンロードにはすべての行が含まれます。
  • 複数テーブル: ダンプに複数のテーブルがある場合、よりクリーンな結果のために一度に1つのテーブルを変換してください。
  • ダウンロード vs コピー: 非常に大きな出力の場合、ダウンロードボタンの方がクリップボードへのコピーよりも信頼性が高いです。
  • ストリーミング: ツールは入力全体を一度に処理します。非常に大きなファイル(100MB以上)の場合、awkcsvkitなどのコマンドラインツールの使用を検討してください。

ユースケース

データウェアハウス、BIツール、スプレッドシートにロードするために、本番データベースダンプをCSVファイルに変換する。データベース移行やデータ監査時によく使われます。

試してみる — SQL to CSV Converter

フルツールを開く