我們創建了一個具有200GB存儲空間(Provisioned IOPS)的RDS postgres實例(m4.xlarge)。我們正嘗試使用DataStage將數據從公司數據集市上傳到RDS中的23個表。然而,上傳速度很慢。加載400K記錄大約需要6個小時。調整參數後,將數據加載到Postgres RDS的速度仍然很慢
然後,我開始根據Best Practices for Working with PostgreSQL調整以下參數:
比這些autovacuum 0
checkpoint_completion_target 0.9
checkpoint_timeout 3600
maintenance_work_mem {DBInstanceClassMemory/16384}
max_wal_size 3145728
synchronous_commit off
其他,我也被關閉multi AZ
和備份。儘管啓用了SSL,但不確定這會改變任何事情。但畢竟改變了,仍然沒有太大的改善。 DataStage正在並行上傳數據〜12個線程。寫入IOPS約爲40 /秒。這個值是否正常?還有什麼我可以做的,以加快數據傳輸?
您的RDS實例是可公開訪問的嗎?它是通過NAT還是其他網絡瓶頸(代理,VPN等) –
還有一件事..你有一堆索引仍然啓用?另外,你的數據有多大(meg,而不是行) –
@JoeLove實例可公開訪問,無需代理或vpn等。總數據大約爲50GB。大約10GB數據在5個小時內被加載。 – ddd