Existe-t-il un ensemble de conventions de dénomination préférées pour les droits MongoDB tels que les bases de données, les collections, les noms de champ?
Je pensais dans ce sens:
- Bases de données: composées du but (mot au singulier) et se terminent par «db» - toutes en minuscules: imagedb, resumedb, memberdb, etc.
- Collections: pluriel en minuscules: images, CV,
- Champs de document: lowerCamelCase, par exemple memberFirstName, fileName, etc.
la source
_id
est probablement précédé d'un trait de soulignement pour suivre une convention JavaScript commune qui indique que la clé est censée être une clé interne / privée. En d'autres termes, le_id
n'est pas destiné à être jamais édité ou présenté à quiconque consulte les données d'une collection.BASE DE DONNÉES
MongoDB donne un bel exemple:
Contenu de: https://docs.mongodb.com/manual/core/databases-and-collections/#databases
COLLECTIONS
Pour les collections, je suis ces modèles suggérés jusqu'à ce que je trouve la documentation officielle de MongoDB.
la source
Même si aucune convention n'est spécifiée à ce sujet, les références manuelles sont systématiquement nommées d'après la collection référencée dans la documentation Mongo, pour les relations un-à-un. Le nom suit toujours la structure
<document>_id
.Par exemple, dans une
dogs
collection, un document aurait des références manuelles à des documents externes nommés comme ceci:Cela suit la convention Mongo de nommer
_id
l'identifiant de chaque document.la source
owner_id
Convention de dénomination pour la collection
Afin de nommer une collection, quelques précautions à prendre:
Il serait bon de ne pas contenir le caractère «$» dans le nom de la collection car divers pilotes disponibles pour la base de données ne prennent pas en charge «$» dans le nom de la collection.
Les choses à garder à l'esprit lors de la création d'un nom de base de données sont:
Pour plus d'informations. Veuillez consulter le lien ci-dessous: http://www.tutespace.com/2016/03/schema-design-and-naming-conventions-in.html
la source
Je pense que c'est une préférence personnelle. Mes préférences proviennent de l'utilisation de NHibernate, dans .NET, avec SQL Server, donc elles diffèrent probablement de ce que les autres utilisent.
Honnêtement, cela n'a pas trop d'importance, du moment que c'est cohérent pour le projet. Mettez-vous au travail et ne vous inquiétez pas des détails: P
la source
Jusqu'à ce que nous obtenions SERVER-863 est conseillé de garder les noms de champs aussi courts que possible, surtout lorsque vous avez beaucoup d'enregistrements.
Selon votre cas d'utilisation, les noms de champ peuvent avoir un impact énorme sur le stockage. Je ne comprends pas pourquoi ce n'est pas une priorité plus élevée pour MongoDb, car cela aura un impact positif sur tous les utilisateurs. Si rien d'autre, nous pouvons commencer à être plus descriptifs avec nos noms de champs, sans réfléchir à deux fois aux coûts de bande passante et de stockage.
Veuillez voter .
la source