Dans la plupart des cas, vous souhaitez créer une relation inverse.
Les relations inverses facilitent l'intégrité du graphe principal et, plus important encore, les relations inverses reflètent les relations réelles entre les objets, les événements ou les conditions que le modèle simule. Le point d'un graphe d'objets n'est pas simplement le stockage idiot de bits de données mais également la modélisation active des relations entre différentes parties de ces données. Dans les données de base, les relations elles-mêmes sont des données actives.
Dans le monde réel, les photos sont prises dans des emplacements et inversement, certains emplacements contiennent des photos. Une relation inverse modéliserait cette réalité et vous donnerait la possibilité de rechercher des photos en fonction de leur emplacement.
Je ne suis pas d'accord sur le fait que vous ne devriez pas utiliser une relation inverse à plusieurs entre les emplacements et les photos. Cela n'a rien à voir avec l'économie de mémoire ou de stockage. Les modèles doivent refléter la réalité et les relations sont elles-mêmes des données. Dans ce cas, de nombreuses photos peuvent être prises au même endroit et vous pouvez choisir un emplacement et trouver toutes les photos prises ici. Les relations dans le modèle devraient refléter ce lien réel le plus près possible. – TechZen
C'est un point de vue raisonnable, mais alors comment décidez-vous quels emplacements sont "identiques"? Pensez-y avec le but de localiser un point de repère ou de recréer une photographie et vous verrez que tout arrondi est mieux laissé à une requête configurable. Mieux vaut peut-être conserver la localisation en tant qu'entité exacte 1: 1 avec Photo et ajouter une entité Région avec un attribut span (diamètre en mètres) et un centre, ce qui peut avoir plusieurs emplacements. –