java - 使用 PostgreSQL 数据库作为简单键值存储的最佳方式

标签 java postgresql jdbc berkeley-db key-value

我被要求使用 postgreSQL 数据库,它将取代我目前使用的 berkeleyDB。虽然;我意识到这不是一个理想的情况,它超出了我的控制范围。

所以问题是……如果您需要将 postgreSQL 变成一个键值存储,您将如何做到这一点,同时使其尽可能高效?

我的值是字节数组,我的键是字符串,我可以对这些字符串的长度施加一些限制。

我假设我应该为我的值和主键列使用一个 blob 来保存 key ,但是由于我只是冒险进入这个旅程,我很好奇堆栈溢出社区中是否有人这样做过,或者是否有任何特定的我应该注意的“陷阱”。

最佳答案

在 Postgresql 中正确执行此操作的扩展名为 hstore。它的工作方式与您期望的其他键值存储系统类似。只需加载扩展程序。语法是独一无二的,但如果你曾经使用过 redis 或 mongo,你会很快掌握它。不要让它变得比现在更难。我明白,我们经常无法选择我们的工具,只能凑合使用。
这是文档页面:

http://www.postgresql.org/docs/9.1/static/hstore.html

关于java - 使用 PostgreSQL 数据库作为简单键值存储的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2008439/

相关文章:

java - 如何在spring中附加从前端检索的请求参数?

java - 通过鼠标点击获取JTable特定单元格的值

ruby-on-rails - 您如何获得 Active Record 中子查询的计数?

mysql - 得到??????使用 JSP 代替来自 MySQL 数据库的印地语文本

java - 无法运行已编译的java类,错误: Class names are only accepted if annotation processing is explicitly requested

java - Java支持的进程和底层操作系统支持的进程意思一样吗?

java - Spring Data JDBC @Modifying 与 PostgreSQL RETURNING 从修改的行返回数据

sql - 使用普通字段分组

java - ORA-27101 使用通用连接池

spring boot postgres : FATAL: sorry, 已经有太多客户