【发布时间】:2016-07-03 16:58:09
【问题描述】:
我正在尝试将记录插入 postgres 数据库,它需要大约 3 个小时,而使用 python psycopg2 和 cursor.copy_from 方法需要 40 秒
我的代码出了什么问题,使用 clojure.java.jdbc/db-do-prepared 也需要大约 3 个小时。 请帮忙!
文件大小为 175M,有 409,854 条记录
(defn-
str<->int [str]
(let [n (read-string str)]
(if (integer? n) n)))
(with-open [file (reader "/path/to/foo.txt")]
(try
(doseq [v (clojure-csv.core/parse-csv file)]
(clojure.java.jdbc/insert! db :records
nil
[(v 0) (v 1) (v 2) (str<->int (v 3))]))
(println "Records inserted successfully")
(Exception e
(println (.getNextException e) e))))
【问题讨论】:
标签: java python postgresql jdbc clojure