我正在爲項目選擇數據庫,並且是NoSQL世界的新成員。我不確定是否可以使用NoSQL完成我們要運行的查詢之一。我認爲我的思想只是無法完成查詢。 :)通過外部密鑰對MongoDB分組進行映射/減少
我對map/reduce非常感興趣,這就是爲什麼我試圖推動使用NoSQL數據庫。
我有兩個集合。一個用於設備,一個用於消息。
[{
deviceId: 1,
uuid: "30be317c-e586-4448-8fed-1a9481710670"
}, {
deviceId: 1,
uuid: "9878917c-e586-4448-8fed-1a9481710670"
}, {
deviceId: 3,
uuid: "as2e317c-e586-9878-8fed-1a9481710670"
}]
[{
uuid: "30be317c-e586-4448-8fed-1a9481710670",
message: "Hello world",
}, {
uuid: "9878917c-e586-4448-8fed-1a9481710670",
message: "Bonjour monde",
}, {
uuid: "as2e317c-e586-9878-8fed-1a9481710670",
message: "Hola Mundo",
}]
現在我想運行的map/reduce命令,並通過他們的deviceId
分組的消息。在這個例子中,「Hello World」和「Bonjour Monde」應該使用相同的密鑰進行分組。我想不出在map()方法中將它們分組的方法。
請注意,數據現在存儲在文件中,因此我不會限制在MongoDB中的研究。這是我選擇的第一個,因爲應用程序中的幾乎所有東西都使用JSON。