将配置/设置保存到关系型数据库(PostgreSQL)中

4
我正在开发一个功能,需要把一个配置(类似于一个json结构)存储到数据库中。因此,我想到了PostgreSQL的jsonb数据类型。由于此配置不必与其他表相关,来自NoSQL背景的我,使用jsonb是否正确?(我不想滥用此功能或使用错误的方式)
在我开始实现之前,请有经验的开发人员再次确认这是否正确。

似乎是一个不错的使用NoSQL数据库的方式.. 你为什么需要将它放入关系型数据库中? - Paul Hicks
1
@PaulHicks 为什么不呢?这是应用程序的一部分。我不会为了一个功能而设置一个新的nosql数据库。 - Hanz
2个回答

2

这似乎是使用jsonbjson的一种情况。

这些数据类型可用于在数据库中存储应用程序有用但在数据库内部不常使用的信息。

如果您计划在查询中使用JSON中的值,例如与其他表连接或在WHERE子句中进行过滤,则应考虑将这些值存储为普通表列(可能保留其余部分为JSON)。

虽然PostgreSQL支持在数据库内部处理JSON,但经常使用这些操作的查询往往变得复杂和缓慢。


1

当您不清楚未来结构时,可以使用JSON类型或XML类型。我不确定您的情况,但是对于配置,您可以使用表格:

CREATE TABLE config(key varchar primary key, value text);

如果应用程序只是用于存储配置信息,SQLite 是常见的使用方式,因此它足够好用,没有理由使用 NoSQL 数据库。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接