Il y a probablement une différence de performances, mais elle est probablement assez petite.
Voici ce que j'ai trouvé (tous basés sur les documents Google pour Python ).
BigTable ne prend pas en charge les informations PolyModel de manière native. Au lieu de cela, il est implémenté à l'aide d'une propriété 'class'. Ainsi, lorsque vous essayez d'effectuer une recherche, par exemple, pour trouver une classe de base, vous effectuez une recherche sur cette propriété «class».
Toutes les requêtes qui utilisent la classe PolyModel ont un filtre supplémentaire appliqué qui filtre par la classe donnée (en utilisant la propriété 'class').
Tous les index créés pour une classe PolyModel doivent prendre en compte la colonne supplémentaire «classe».
Essentiellement, la classe PolyModel prend en charge la propriété «class» seule, en l'insérant dans les requêtes et en l'utilisant pour d'autres requêtes. En dehors de cela, il fonctionne de manière identique à l'utilisation standard de BigTable.
Ainsi, la différence consiste simplement à ajouter et à maintenir une colonne supplémentaire.
Y a-t-il une différence de performances? Oui, probablement. Chaque colonne que vous ajoutez à n'importe quel système de base de données aura un impact sur les performances. Mais est-ce significatif? Probablement pas.