postgresql 插入速度大幅落后于 mongodb

wangyanlb · 2015-07-21 18:50:51 · 5845 次点击

Prepare 只要调用一次编译好 SQL 返回一个 Statement,后续的查询只需要用这个 Statement 就好了。

#2
更多评论

今天又调试了下,基本做到和mongodb 同样的水准了。主要原因还是postgresql 对事务的支持导致用go接口insert速度慢。

优化方案1:创建一个不记录日志的表:用unlogged 关键字

CREATE unlogged TABLE json_test ( id serial NOT NULL, data jsonb, CONSTRAINT json_test_pkey PRIMARY KEY (id) )

优化方案2:

stmt, err := db.Prepare("INSERT INTO json_test(data) VALUES($1) RETURNING id")

这一句预处理处理一次就可以了,不要放在循环体里。

#1