使用PostgreSQL Java/JDBC复制API进行批量插入的经验

使用PostgreSQL Java/JDBC复制API进行批量插入的经验,postgresql,jdbc,bulkinsert,Postgresql,Jdbc,Bulkinsert,随着版本8.4的发布,PostgreSQL最终将一个专有API集成到其应用程序中,从而允许基于流的插入和选择。所谓的复制API授予对SQL命令的访问权,这些命令一次将文本数据从流/读取器读取到一个表中,或者将文本数据从一个表写入流/写入器中。插入操作将考虑约束和触发器。基本转换(分隔符、引号、空值等)可用。性能的提高是相当可观的,这可能是因为较少的对象实例化和客户端和服务器后端之间更简单的协议 有没有人使用过这个API,好的还是坏的。生产准备好了吗?有什么陷阱需要注意吗?顺便说一句:它是一个专有

随着版本8.4的发布,PostgreSQL最终将一个专有API集成到其应用程序中,从而允许基于流的插入和选择。所谓的复制API授予对SQL命令的访问权,这些命令一次将文本数据从流/读取器读取到一个表中,或者将文本数据从一个表写入流/写入器中。插入操作将考虑约束和触发器。基本转换(分隔符、引号、空值等)可用。性能的提高是相当可观的,这可能是因为较少的对象实例化和客户端和服务器后端之间更简单的协议


有没有人使用过这个API,好的还是坏的。生产准备好了吗?有什么陷阱需要注意吗?顺便说一句:它是一个专有API,这一事实对我来说不是问题。

复制API在PostgreSQL C库中至少存在6年。它非常稳定

见: 及

JDBC实现应该具有相同的属性,但我没有使用它


另外,我认为当你称之为“专有”时,有一个误解。协议规范和服务器/客户端/驱动程序源代码都是免费的(与freedom一样)。

复制API在PostgreSQL C库中至少存在6年。它非常稳定

见: 及

JDBC实现应该具有相同的属性,但我没有使用它


另外,我认为当你称之为“专有”时,有一个误解。协议规范和服务器/客户机/驱动程序源代码都是免费的(就像在freedom中一样).

使用“专有”表示它不是JDBC规范的一部分,因此不适用于其他DBMS供应商的产品。使用“专有”表示它不是JDBC规范的一部分,因此不适用于其他DBMS供应商的产品。