透過批次插入加速 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中文網其他相關文章!