【问题标题】:Inserting +10,000 data from ec2 to rds postgres is sooooo solow将 +10,000 个数据从 ec2 插入 rds postgres 太慢了
【发布时间】:2021-09-06 04:47:45
【问题描述】:

我将大量数据从 ec2 插入到 rds postgres。 ec2从S3中读取数据,格式化后插入rds。

使用pyhton3.8、flask和flask_sqlalchemy

ec2基于悉尼,rds基于west2。

每次插入需要 30 秒,可能需要 1~2 天才能完成所有插入。

当我在本地到本地的 postgres 中尝试时,它在 5 分钟内完成。

无论如何我可以提高性能?喜欢增加 ec2 实例的大小?

我google了一下,发现把ec2和rds放到同一个区域可能会提高性能,但需要你们更多的意见

【问题讨论】:

  • 我会有点担心 9 月份的账单。
  • 一开始是不是很快,然后变慢了? Amazon RDS PostgreSQL 实例的大小是多少?如果是 T 系列实例,CPU/积分的监控显示什么?您如何插入数据(一次插入一行)?您是说您的 Amazon EC2 实例与 Amazon RDS 数据库位于不同的区域
  • 为什么在澳大利亚运行 EC2,在美国运行 RDS?数据传输费用将非常昂贵,网络延迟将非常糟糕。在同一个 AWS 区域运行它们!当然,在地球另一端发送数据会比在同一栋楼的两台计算机之间发送数据要慢!

标签: python-3.x amazon-web-services amazon-ec2 flask-sqlalchemy amazon-rds


【解决方案1】:

我正在阅读一篇文章 Inserting a billion rows in SQLite under a minute 可能会对您有所帮助。

我个人没有使用 EC2,但如果您可以更改数据库配置,那篇文章仍然可以帮助您。它基于优化数据库配置以插入过多数据。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-06-19
    • 1970-01-01
    • 2019-04-15
    • 2019-12-12
    • 2021-03-16
    • 2013-01-28
    • 2013-11-21
    • 2016-09-06
    相关资源
    最近更新 更多