Вы можете абсолютно использовать БД nosql. То, как вы будете в конечном итоге сохраняться, полностью зависит от того, какую nosql DB вы выберете. Однако вы можете создать свою модель, аналогичную следующей, и использовать ваш db client / api для хранения документа:
var Image = function() {
return {
url: '',
tags: [],
createDate: new Date()
};
}
var image = new Image();
image.url = '/images/day_at_the_beach.jpg',
image.tags.push('summer');
// persist to db
Что касается извлечения данных, опять же, точная реализация зависит от используемой вами БД, но вы можете легко делать обе вещи, которые вам нужны. Например, в CouchDB вы бы настраивали представления с помощью map / Reduce или с MongoDB вы могли бы использовать клиент mongoose и создавать соответствующие запросы.
Редактировать: С мангустой вам также нужно настроить мангуста. Схема, прежде чем продолжать и читать.