PostgreSQL 9.4测试版带来了备受期待的“二进制JSON”类型JSONB。这种面向文档数据的新的存储格式性能更优,而且带来了索引和用于操作JSON数据的函数和操作符。 JSONB类型融合了HStore和JSON两个项目。JSONB拥有JSON的一切,但它由于采用二进制表示而存储更高效,由于索引而速度更快。当前所有的HStore和JSON用户预计最终都将转到JSONB。 既然PostgreSQL的传统客户群一直是需要可靠的关系功能的开发人员,或者是从像Oracle这样的企业数据库切换过来的用户,那么为什么NoSQL功能对它而言如此重要?Josh Berkus是团队的核心成员之一,他分享了一些看法:
另外,同一话题中的其它评论明确指出,若干将PostgreSQL与Node、Python、Go或者Ruby技术一起使用的创业公司是如何期待着使用快速JSON支持。 考虑到这些问题,很明显,对JSON提供一流的性能支持,而又无损于其传统强项,如可靠性,可以帮助PostgreSQL增加新的应用场景。 也有一些领域,使用其它的NoSQL数据库可能更合适——比如,EnterpriseDB的核心团队成员和高级数据库架构师Bruce Momijan就建议(通过邮件)——
EnterpriseDB的主要贡献者和高级数据库架构师Robert Haas补充道——
不过,除了特定的应用场景外,对于那些需要在同一个应用程序中针对不同的数据类型灵活地选用无模式存储或关系型存储以及需要保证ACID的开发人员而言,Postgres就开始能够做出令人信服的案例了。 请注意,JSONB并不是9.4中引入的唯一的主要功能,还有其它几项:
另外,它还包含若干小的功能——
读者可以从发布说明中查看完整的更新列表。 查看英文原文:PostgreSQL Gets Better NoSQL Capabilities |