示例文档https://pastebin.com/x2kVUnP3
理解数据
每个字段数组计数与 fetch_dates 相同,因此如果我们想获取2019-06-07 05:34:29的数据集,它将返回所有内部字段$arrayElemAt = 1
以获得最新结果,对于对应的字段。
期望的结果
主要思想是重建所有文档并仅保留每个字段的最新 fetch_date 和最后一个值。在这种情况下,只需保留图像的橙色线即可。
问题
基本上我不知道从哪里开始或如何开始,如果可以的话。每个文档可以有不同的数组大小 (fetch_dates) 但结构是相同的。有 225k 个文档要处理,平均大小为 2.5kb。任何提示将不胜感激。
我的初步想法
我想通过 PHP 脚本获取所有字段及其最后一个元素,例如首先遍历所有文档,然后遍历所有字段和 $project 值,我认为这是一个$arrayElemAt => [ $field3.field3_1, -1 ]
坏主意。
我正在使用 PHP - Laravel,但我能够转换查询以使其在那里工作。
小怪兽爱吃肉