首页 > 解决方案 > 在服务器与数据库中使用 JSON(优点/缺点)

问题描述

我不知道我们是否允许提出这类问题,但我需要一些建议。

我有的

我正在创建一个 JSON 格式的数据集,大小约为 3.5 到 5 mb。在这个单一的 json 中有 5k - 10k 个具有 20 个字段的对象。

我将如何使用这个数据集

基本上,我将在特定页面中呈现特定对象。

www.site.com/:id (GET)

根据对象的字段之一进行排序并呈现前 100 个列表(例如在一行中显示该对象的 5 个字段)

www.site.com/list?sort_by={field_name} (GET)

问题

我是否需要创建一个 noSQL 数据库,或者我可以将此 json 放在我的服务器中并直接在后端访问该数据库?我从来没有做过这种事情,但我正在考虑这个项目,因为数据集总是相同的(静态)我总是需要读取该数据(没有 POST、PUT、DELETE 等)这就是为什么在服务器上有 json 有意义对我来说,但我想问我是否遗漏了什么。

我也不太了解带宽或网络如何工作。在这种方法中,我们不会将这个 5 mb 的文件发送给客户端,对吧?(即使客户端只需要在整个数组中有一个对象,它有 10k 个对象)

还是我们的服务器有任何性能问题?因为如果我把这个 json 放在服务器中,我会像这样使用它:

let data = require('./data/main.json')

app.get('/:id', (req, res) => {
    const id = req.params.id
    const obj = data.find(d => d.id === id)
    res.status(200).json(obj)
})

标签: node.jsjsondatabaseserver

解决方案


使用数据库还有其他好处,例如能够轻松创建文件备份、从其他设备访问数据库以及提供分析。虽然您可以在您的案例中使用 JSON 文件,但我强烈建议使用MongoDB作为 NoSQL 数据库,使用mongoose作为 ORM。它基本上就像使用 JSON 一样,但从长远来看绝对是更好的体验和更好的体验。


推荐阅读