代码之家  ›  专栏  ›  技术社区  ›  leonard

估计/打印csv复制状态到postgresql表

  •  3
  • leonard  · 技术社区  · 8 年前

    我想知道将csv复制到postgresql表需要多长时间。有没有办法以合理的方式打印复制的行,或者有没有其他方式以某种方式显示复制的进度?

    也许有一个详细的设置,或者我应该使用-echo或-qecho

    psql -U postgres -d nyc_data -h localhost -c "\COPY rides FROM nyc_data_rides.csv CSV"

    4 回复  |  直到 8 年前
        1
  •  3
  •   Laurenz Albe    8 年前

    不幸的是,没有这样的事情。

    一个想法是将输入分成1000或10000行的块,然后逐个导入。这不会大大减缓处理速度,而且您可以快速获得整个导入所需时间的估计。

        2
  •  2
  •   Alex Shchegretsov    5 年前

    使用pv工具

    pv /tmp/some_table.csv | sudo -u postgres psql -d some_db -c "copy some_table from stdin delimiter ',' null '';"
    

    1.42GiB 0:11:42 [2.06MiB/s] [===================================================================================================================================================================>] 100% 
    
        3
  •  2
  •   wodow    3 年前
        4
  •  0
  •   Lucca Martins    7 年前

    正如Laurenz Albe所说,无法衡量完成整个过程还剩多少时间。但我今天做的一件事是很好地进行近似:

    • 在我的Linux中启动“监控系统”
    • 在这个应用程序中有一个计数器,显示自从我启动这个应用程序以来上传了多少数据
    推荐文章