さて、私は集約の問題に苦しんでいます。問題を解決する最も簡単な方法は、map reduce を使用するか、別の検索クエリを作成してから、非同期ライブラリのヘルプを使用してループすることだと思いました。
スキーマは次のとおりです。
db.keyword
keyword: String
start: Date
source: String(Only one of these (‘google’,’yahoo’,’bing’,’duckduckgo’) )
job: ref db.job
results: [
{
title: String
url: String
position: Number
}
]
db.job
name: String
keywords: [ String ]
urls: [ String ]
sources: [ String(‘google’,’yahoo’,’bing’,’duckduckgo’) ]
今、私はこのフォームにデータを取る必要があります:
data = {
categories: [ 'keyword1', 'keyword2', 'keyword3' ],
series: [
{
name: 'google',
data: [33, 43, 22]
},
{
name: 'yahoo',
data: [12, 5, 3]
}
]
}
最大の問題は、series[0].data 配列が非常に難しい検索で構成されており、db.job.urls を db.keyword.results.url と照合してから位置を取得することです。query_ を単純化する方法はありますか? 私は多くの map reduce の例を見てきましたが、どのデータをマップし、どのデータを減らすかの正しい方法を見つけることができません。