将大量数据存储为单个JSON字段-将重要字段提取到自己的字段中?

时间:2019-02-25 10:48:32

标签: mysql

我正计划在json字段中存储来自用户提交的表单(大约100个问题)的大量数据。

我将只需要访问nametype形式的两个数据查询。

建议将nametype提取到自己的字段中以进行查询(更有效),还是将它们全部打包在一个json字段中,并查询自json以来的json字段?现在支持搜索吗?

1 个答案:

答案 0 :(得分:1)

如果您担心性能,那么可以在nametype上保留单独的字段。这样做的原因是,如果这两个数据点作为单独的字段存在,那么将有可能进行诸如向这些列添加索引之类的事情。虽然您可以 使用MySQL的JSON API通过nametype进行查询,但是它很可能永远无法与索引查找竞争,至少在以下方面无法与索引查找竞争:性能。

从存储角度来看,维护两个独立的列不会付出太大的代价。您要支付的主要价格是,每次更新JSON时,您还必须更新nametype列。