200GBのストレージ(プロビジョニング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