一括挿入による Postgres データベースの作成の高速化
Postgres データベースに大規模なデータセットを追加するには、効率的な方法が必要です。 個々の INSERT
ステートメントは、一括操作では遅くなります。 Postgres は、COPY
コマンドという優れたソリューションを提供します。
COPY
コマンドは、標準のクエリ パーサーをバイパスして、ファイルまたは標準入力からテーブルにデータを直接ロードし、挿入を大幅に高速化します。
バルクデータロードのための COPY
コマンドの使用:
データを含むテキスト ファイルを準備します。
次の構文を使用して、Postgres ターミナルで COPY
コマンドを実行します。
<code class="language-sql">COPY table_name (column1, column2, ...) FROM '/path/to/data.txt' DELIMITER ',' CSV HEADER;</code>
プレースホルダーを置き換えます: table_name
はテーブルの名前に、/path/to/data.txt
はファイルの絶対パスに置き換えます。
データの構造に応じて DELIMITER
と CSV HEADER
を調整します。
さらなるパフォーマンスの強化:
COPY
を超えて、これらの戦略は一括挿入をさらに最適化します:
work_mem
と maintenance_work_mem
を調整して、インポート プロセスに十分なメモリを提供します。COPY
コマンドを使用して並列ロードします。これにより、マルチコア プロセッサが最大限の速度を実現します。以上がデータベースの作成を高速化するために PostgreSQL での一括挿入を最適化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。