Я новичок в MapReduce, но у меня есть коллекция, к которой я хотел бы применить себя, чтобы узнать, как работает mapreduce.
Примеры документов:
{ "filename" : "resume.doc",
"folder" : "work",
"completed": "0.5" },
{ "filename" : "spreadsheet.xls",
"folder" : "work",
"completed": "0.6" },
{ "filename" : "thesis.doc",
"folder" : "school",
"completed": "0.75" },
{ "filename" : "coverletter.doc",
"folder" : "work",
"completed": "0.6"}
Итак, вся идея такова: я бы хотел запросить:
{ "folder" : "work",
"completed": { $gt: 0.5 },
"filename" : new MongoRegex( "/\.[a-zA-Z]{2,}$/" ) }
И в конечном итоге получить количество всех документов по расширению (.doc, .xls и т. Д.), Например:
{ ".doc" : 1,
".xls" : 1 }
Я также понимаю, что у меня проблема, потому что мои% -completed являются строками, а не числами с плавающей точкой, поэтому я думаю, что mongodb понадобится больше инструкций для сравнения строк.
Я использую (если это имеет значение):
PHP extension: mongo/1.5.7
MongoDB: version 3.2.11