Załóżmy, że mam galerię zdjęć, a zdjęcie może mieć potencjalnie 100 000 fanów. Który projekt ndb jest bardziej wydajny?GAE projektowanie ndb, wydajność i wykorzystanie powtarzalnych właściwości
class picture(ndb.model):
fanIds = ndb.StringProperty(repeated=True)
... [other picture properties]
lub
class picture(ndb.model):
... [other picture properties]
class fan(ndb.model):
pictureId = StringProperty()
fanId = StringProperty()
Czy istnieją jakieś ograniczenia co do liczby elementów, które można dodać do NDB wielokrotnym nieruchomości i czy jest jakiś hit wydajność z przechowywania dużej ilości elementów w wielokrotnym nieruchomości? Jeśli użycie mniej powtarzalnych właściwości jest mniej efektywne, jakie jest ich przeznaczenie?
Nie ma nic wspólnego z odpowiedzią, ale proponuję przestrzegać konwencji. Nazwy klas 'CamelCase' i nazwy właściwości' lower_case_underscore' .. – Lipis
Również dla 'pictureId' użyj' ndb.KeyProperty (kind = picture) 'jak masz to w bieżącym modelu .. i' fanId = ndb.KeyProperty (kind = fan, repeat = True) 'zamiast' StringProperty' dla lepszej obsługi encji. – Lipis