python - 什么时候应该使用 HStoreField 而不是 JSONField?

标签 python django postgresql hstore jsonb

Django 1.8 提供 HStoreField,Django 1.9 将为 PostgreSQL 提供 JSONField(使用 jsonb)。

我的理解是hstore比json快,但是不允许嵌套,只允许字符串。

什么时候应该用一个代替另一个?应该优先选择一个吗?与 jsonb 相比,hstore 在性能上仍然是明显的赢家吗?

最佳答案

如果您需要索引,如果您使用的是 9.4 或更新版本,请使用 jsonb,否则使用 hstore。如果 hstore 都可用的话,真的没有理由更喜欢 jsonb

如果您不需要索引和快速处理,而您只是存储和检索经过验证的数据,请使用普通 json。与其他两个选项不同,这会保留重复键、格式、键顺序等。

关于python - 什么时候应该使用 HStoreField 而不是 JSONField?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32791851/

相关文章:

python - 将变量作为参数传递给 networkx.add_edge() 属性

python - 导入错误 : No module named modelsinspector

python - Django NoReverseMatch : trying to get slug in a template

postgresql - 从具有私有(private) IP 和公共(public) IP 的 VM 连接到私有(private) IP 上的 Google Cloud SQL 实例失败

postgresql - Sequelize : joining table on a subquery

python - 计算具有相似键的三个字典的值的表达式

python - 将变量从指定字母切片到长度不同的行中的指定字母

python - 计算两个矩形之间的重叠面积

python - Django 中的模型历史

sql - postgresql 不正确的时区从夏令时更改