将数据附加到数组或为每个数据点创建一个新文档是个好主意吗?

Is it a good idea to append data to an array or create a new document for every data point?

我使用 raspberry pi 将一大堆传感器数据记录到 mongo 数据库中。
一段时间后,我将数据合并为小时和天的聚合数据。
现在我使用一个集合,其中包含所有传感器,每个传感器都有一个文档、一些描述和其他元数据。在这些文档中的每一个中都有包含实际数据点的数组,我将其附加到这些数组中。当聚合时间跨度的数据时,我附加到不同的数组,如 'data_1h' 或 'data_1d',等等
数据点本身是包含实际数据、时间戳和其他一些位的文档。
这似乎有一段时间进展顺利,但我有 700 多个不同的传感器,经过 2 年的数据收集,mongo 使用了大量内存,而覆盆子没有,它开始窒息。
所以我想知道不使用大型数组而是​​使用单独的集合并将数据作为单个文档写入那里是否更好?每个数据点一个文档,就像你说的 SQL?

是的,通过保持不同 table 和映射文档(点)到您的传感器文档 点文档中的传感器文档 ID 会更好,因为制作数组会使编辑和更新更多内存消耗,如果数组变大查询单个传感器数据将加载所有点数组,这将占用大量内存