Google App Engine: almacén de datos de la base de datos no es una relación tradicional. ¿Qué quieres decir con esto?
-
12-09-2019 - |
Pregunta
A partir de la guía GAE para empezar
Debido a que el almacén de datos de App Engine es no es una base de datos relacional tradicional, consultas no se especifican utilizando SQL. En su lugar, se puede preparar usando consultas un lenguaje de consulta SQL-como lo llamamos GQL.
¿Qué quieren decir con "no es una base de datos relacional tradicional" y qué consecuencias tiene esto que aparte de requerir GQL en lugar de SQL.
Solución
Es muy funcionalmente limitada en comparación con una base de datos relacional: no se une, no cheques real de integridad de datos (tales como la singularidad y c), no hay GROUP BY y de agregación de funciones tales como SUM, etc, etc, las transacciones sólo dentro de una sola entidad-grupo, etc , etc -. diferencias MUCHAS
No sólo hay que hacer mucho más a nivel de aplicación (en lugar de hacerlo en la base de datos), pero para el rendimiento y la escalabilidad debe desnormalizar adecuadamente sus datos (algunos lo hacen que en DB relacionales también, que es controvertida, pero a menudo de mala gana aceptado, pero en GAE es una necesidad). Muchos excelentes ensayos y videos en la red viven profundamente en los temas de "¿qué implicaciones tiene esto" - por ejemplo, si usted sabe lo suficiente de Java, este video ayudará, etc, etc.
Otros consejos
tiempo de desarrollo de aproximadamente 1/10 de la base de código para el mismo proyecto, pero tal vez más ya que está manejando una nueva prueba y el software de vista previa. No necesitará un script de base de datos de construcción, no se mezcla un montón o SQL incosistent, PHP, Java, XML (donde 0 significa falso en un idioma y no el otro) y otros grandes consecuencias fueron que no vamos a tenerlo jefes que afirman que una base de datos relacional es la solución a todos y cualquier problema, diferentes entidades del mismo tipo pueden tener diferente número de propiedades, el patrón de diseño más relevante es "entidad", que también se puede utilizar con RDBMS,