GAE извлечение данных из хранилища занимает слишком много времени? - PullRequest
0 голосов
/ 13 ноября 2011

У меня есть запрос, который выглядит так:

userBase = UserEntry.all().filter('debug =', False).filter('disabled =', False).filter('first_message =', False).fetch(200)

И индекс (построен и обслуживает)

 - kind: UserEntry   
   properties:
   - name: first_message
   - name: disabled
   - name: debug

В UserEntry содержится около 1000 записей, а после фильтрации - только 200, которые извлекаются.

Проблема:

Вышеупомянутая выборка, эта единственная строка кода, требует 1,5s для завершения. Есть идеи, почему это может быть?

Я предполагаю, что с моделью UserEntry может быть что-то не так. У него довольно много свойств, но я не знаю, с чего начать ..

Ответы [ 2 ]

1 голос
/ 14 ноября 2011

Ваш пользовательский индекс находится в неправильном порядке;Скорее всего, запрос выполняется зигзагообразным слиянием, а не вашим пользовательским индексом.Попробуйте отфильтровать свойства в том же порядке, в котором они находятся index.yaml.

0 голосов
/ 13 ноября 2011

Номер выборки слишком велик, попробуйте извлечь (200) и посмотрите, сколько времени это заняло.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...