Vorrei chiamare ensureIndex
su authorName
, qual è il comando e dove in questo codice dovrei inserirlo?utilizzando ensureIndex nello schema mongodb utilizzando mangusta
var mongoose = require('mongoose');
// defines the database schema for this object
var schema = mongoose.Schema({
projectName : String,
authorName : String,
comment : [{
id : String,
authorName : String,
authorEmailAddress : { type : String, index : true }
}]
});
// Sets the schema for model
var ProjectModel = mongoose.model('Project', schema);
// Create a project
exports.create = function (projectJSON) {
var project = new ProjectModel({
projectName : projectJSON.projectName,
authorName : projectJSON.authorName,
comment : [{
id : projectJSON.comments.id,
authorName : projectJSON.comments.authorName,
authorEmailAddress : projectJSON.authorEmailAddress
});
project.save(function(err) {
if (err) {
console.log(err);
} else{
console.log("success");
}
});
});
}
avrà molti indici essere una buona cosa, o rallenterà le prestazioni? Capisco che un singolo indice su una proprietà è inteso per avere O (log n) – bouncingHippo
@bouncingHippo. Si desidera solo creare gli indici effettivamente necessari per supportare le prestazioni delle query richieste. Ogni indice aggiunge lavoro quando si aggiungono/edutano documenti e occupano il disco e la memoria. – JohnnyHK
ho modificato la domanda un po 'ti dispiacerebbe dare un'occhiata al mio tentativo di trovare tutti i commenti da un utente specifico? Grazie!! – bouncingHippo