Предупреждение о загрузке массового загрузчика ядра приложения "Нет нисходящего индекса для __key__, выполняется последовательная загрузка" - PullRequest
4 голосов
/ 18 ноября 2010

Я использую следующее для загрузки всех экземпляров одного из моих видов:

appcfg.py download_data --config_file=bulkloader.yaml --kind=ModelName --filename=ModelName.csv --url=http://appid.appspot.com/remote_api

Если у вида больше экземпляров, чем размер пакета, я получаю это предупреждение:

No descending index on __key__, performing serial download

У меня нет пользовательских индексов или каких-либо свойств с отключенными индексами.

Нужно ли мне что-то делать для устранения этого предупреждения, или это просто предупреждение, которое я могу безопасно игнорировать?Влияет ли это на скорость загрузки?

Эта статья о загрузчике включает предупреждение в пример вывода, но не упоминает о нем.

Этот пост в группе движков приложения говорит о том, что мне нужно создать индекс.Однако добавление большего количества индексов замедлит запись в мои сущности - что я бы предпочел не делать, поскольку я буду писать сущности чаще, чем буду выполнять массовую загрузку данных.

Спасибо.

Ответы [ 3 ]

6 голосов
/ 19 ноября 2010

Как описывает ошибка, без нисходящего индекса для __key__ для загружаемой модели, загрузчик должен загружаться последовательно. Если вы добавите индекс, как описано, его можно будет загружать параллельно. Если вы этого не сделаете, он будет работать нормально, но будет загружаться медленнее, поскольку он работает поочередно.

Обратите внимание, что дополнительный индекс оказывает незначительное влияние на задержку, поскольку строки индекса записываются параллельно записи объекта, то есть запись занимает только столько времени, сколько требуется самое медленное обновление.

2 голосов
/ 26 мая 2011

Я решил эту проблему, добавив этот код в index.yaml

kind: books
- properties:
  name: __key__
    - direction: desc
kind: books
- properties:
  name: another_indexes_here
0 голосов
/ 11 июня 2011

Если вы используете JAVA и файл datastore-indexes.xml.

Добавьте это (при условии, что имя типа «Книги») в файл datastore-indexes.xml:

<datastore-index kind="Books" ancestor="false" source="auto"> 
    <property name="__key__" direction="desc"/> 
</datastore-index>

Затем повторно разверните свое приложение. Убедитесь, что вы проверили вкладку индекса хранилища данных, чтобы увидеть, что __key__ обслуживает. Затем вы можете попробовать загрузить снова.

...