【问题标题】:How much time it will take to insert 10 millions records in postgrerds database tablepostgrerds数据库表插入1000万条记录需要多少时间
【发布时间】:2021-02-24 03:44:53
【问题描述】:

我在 csv 文件中有两列的 11814568 记录,我在 8246 秒内使用内存缓冲区 ram 加密了第一列 现在我有 9979561 条记录对应于 1st col 作为主键,我必须根据 1st column 插入或更新 2nd col VALUE 我使用的是 128GB RAM 配置

【问题讨论】:

  • 根据配置和执行频率,您也可以直接使用 PostgreSQL 命令;它具有导入 CSV 的本地工具。
  • 你能用表定义和 SQL 语句来装饰这个问题吗?
  • 你能澄清一下这个问题吗?不清楚是要导入数据还是更新现有数据

标签: python postgresql dictionary for-loop sql-insert


【解决方案1】:

您可以在插入时使用块。使您的块大小为 1000 并插入它们。我做了 1M 行,花了 14 秒。对于 10M 行,这应该需要几分钟。

我的块看起来像:

INSERT INTO table(c1, c2)
VALUES (1,1), (2,2), (3,3) ... (1000, 1000)

【讨论】:

  • 您能否提供一些可重现的代码,其中您在块中插入多个值
  • 从字典
猜你喜欢
  • 2011-09-21
  • 2020-09-22
  • 1970-01-01
  • 1970-01-01
  • 2019-01-28
  • 2017-04-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多