好的,所以,我有两个系列。其中一个有 6M 文档,另一个有 25M 文档。我希望他们在一个新的集合中:
集合 1 示例:
电影
{"movieId" : "1", "name" : "Titanic"},
{"movieId" : "2", "name" : "King Kong"}
集合 2 示例:
特点
{"characterId": "1", "movieId": "1", "characterName": "Name 1"},
{"characterId": "2", "movieId": "1", "characterName": "Name 2"},
{"characterId": "3", "movieId": "1", "characterName": "Name 3"}
所以我想要一个新的集合,比如:
{
"movieId" : "1",
"name" : "Titanic",
"characters":[ *collection 2 here* ]
},
{
"movieId" : "2",
"name" : "King Kong",
"characters":[]
}
我试过:
db.Movie.aggregate([{ $lookup: { from: "Character",localField: "movieId", foreignField: "movieId", as: "characters" }},{ $out : "movie_characters" }])
但它永远不会结束 :( (我的意思是 10 小时后它仍在思考)如果我在没有 $out 的情况下执行它,它可能会在 10 分钟内显示结果。
我在 $out 上做错了吗?
感谢您的任何建议。