Django 1.8提供HStoreField,Django 1.9将为PostgreSQL提供JSONField(使用jsonb)。
我的理解是hstore比json快,但不允许嵌套,只允许字符串。
何时应该使用另一个?一个人应该优先于另一个吗?与jsonb相比,hstore仍然是性能的明显赢家吗?
答案 0 :(得分:13)
如果您需要建立索引,请使用jsonb
(如果您使用的是9.4或更高版本,否则使用hstore
。如果两者都可用,则没有理由更喜欢hstore
而不是jsonb
。
如果您不需要索引和快速处理,并且只是存储和检索经过验证的数据,请使用普通json
。与其他两个选项不同,它保留了重复键,格式,键排序等。