java – PostgreSQL:BYTEA vs OID Large Object?
我开始使用Hibernate 3.2和PostgreSQL 8.4的应用程序.我有一些被映射为@Basic(= PG bytea)的字节[]字段和映射为@Lob(= PG Large Object)的其他字节.为什么不一致?因为我是一个Hibernate noob.
现在,这些字段最大为4 Kb(但平均值为2-3 kb). PostgreSQL文档提到,当字段很大时,LO是很好的,但是我没有看到“大”的意思. 我已经升级到PostgreSQL 9.0与Hibernate 3.6,我被卡住将注释更改为@Type(type =“org.hibernate.type.PrimitiveByteArrayBlobType”).这个bug已经提出了一个潜在的兼容性问题,我最终发现,与正常的领域相比,大对象是一个很难处理的问题. 所以我正在考虑把它全部改为bytea.但是我担心字节字段是以十六进制编码的,所以在编码和解码中有一些开销,这会损害性能. 有没有良好的基准表现这两个? 解决方法
字节输入可以是十六进制或转义格式,这是您的选择.存储将一样.从版本9.0开始,输出默认值为十六进制,但您可以通过编辑参数bytea_output进行更改. 我没有看到任何基准. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |