小编str*_*kai的帖子

使用clojure jdbc将文件记录插入postgres数据库与python psycopg2相比需要很长时间

我正在尝试将记录插入到postgres DB中,并且使用python psycopg2和cursor.copy_from方法需要大约3个小时,而需要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))))
Run Code Online (Sandbox Code Playgroud)

python java postgresql jdbc clojure

6
推荐指数
1
解决办法
258
查看次数

如何测试文件中是否存在字符串,如果存在,请检查文件中的剩余行以查找具有bash shell的另一个字符串

我已经有一个日志说file.txt.

我想检查Bash,如果日志中存在字符串(7月),如果是,请检查日志中的其余行以查找另一个字符串(foobar).

bash

2
推荐指数
1
解决办法
282
查看次数

标签 统计

bash ×1

clojure ×1

java ×1

jdbc ×1

postgresql ×1

python ×1