Google App Engine: une base de données Datastore pas de relation traditionnelle. Qu'est-ce que cela signifie?

StackOverflow https://stackoverflow.com/questions/1112706

  •  12-09-2019
  •  | 
  •  

Question

De la GAE guide de démarrage

  

Parce que le App Engine est   pas une base de données relationnelle traditionnelle,   requêtes ne sont pas spécifiées à l'aide de SQL.   Au lieu de cela, vous pouvez préparer des requêtes à l'aide   un langage de requête SQL comme nous appelons GQL.

Qu'est-ce qu'ils veulent dire par « pas une base de données relationnelle traditionnelle » et quelles sont les implications autre que d'exiger GQL au lieu de SQL.

Était-ce utile?

La solution

Il est très fonctionnel limité par rapport à un DB relationnelle: rejoint non, aucun véritable contrôle de l'intégrité des données (telles que l'unicité et c), pas GROUP BY et les fonctions d'agrégation telles que SUM etc etc, les transactions seulement à l'intérieur d'un groupe d'entités, etc. , etc -. différences NOMBREUX

Non seulement vous devez faire beaucoup plus au niveau de l'application (au lieu de le faire dans la base de données), mais pour des performances et de l'évolutivité, vous devez correctement dénormaliser vos données (certains le font que dans BDs relationnelles aussi, ce qui est controversé, mais souvent à contrecoeur accepté, mais GAE est un must). Beaucoup d'excellents essais et des vidéos sur le net demeurent profondément dans les questions de « ce sont les implications » - par exemple, si vous en savez assez Java, cette vidéo contribuera, etc etc.

Autres conseils

A propos de 1/10 de la base de code pour le même projet, mais peut-être plus le temps de développement puisque vous manipulez un nouveau test et logiciel de prévisualisation. Vous ne aurez pas besoin d'un script de construction de la base de données, ne se mélangera pas un groupe ou sql incosistent, php, java, xml (où 0 signifie faux dans une langue et pas l'autre) et d'autres grandes conséquences étaient que nous ne l'auront pas patrons affirmant qu'une base de données relationnelle est la solution à tous et tout problème, différentes entités du même genre peuvent avoir un nombre différent de propriétés, le modèle de conception le plus pertinent est « entité » qui peut également être utilisé avec SGBDR,

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top