我希望能得到建议,如何在速度方面改进以下内容:
我的数据模型:
class Events(ndb.Model):
eventid = ndb.StringProperty(required=True)
participants = ndb.StringProperty(repeated=True)
我尝试获取数据的方法:
def GetEventDataNotCached(eventslist):
futures = []
for eventid in eventslist:
if eventid is not None:
ke = database.Events.query(database.Events.eventid == eventid)
future = ke.get_async(keys_only = True)
futures.append(future)
eventskeys = []
for future in futures:
eventkey = future.get_result()
eventskeys.append(eventkey)
data = ndb.get_multi(eventskeys)
我使用异步方式获取密钥,然后将密钥传递给“get_multi” - 是否有其他方法可以使其更快?因为我对性能还不满意。
在重复属性中最多可以有几百个字符串。 活动模型中有几万行数据。 在事件列表中只有几十个事件ID需要获取。