При передаче данных между приложениями GAE происходит запись в индексы свойств, которые я отключил? - PullRequest
1 голос
/ 05 декабря 2011

У меня есть модель с 15 свойствами и indexed = False, установленный для каждого из них.Когда я записываю сущность этой модели, она не записывает в индексы свойств для этих свойств, однако при переносе этой модели из одного приложения в другое создается впечатление, что эти индексы свойств записываются в новом приложении.

Мой теств моем исходном приложении MS есть 3000 объектов, которые я хочу перенести в новое приложение для управления персоналом.В приложении MS у меня нет индексов (определенных в index.yaml), и все индексы свойств отключены.Когда я передаю эти сущности в новое приложение (используя инструмент копирования в Datastore Admin), оно использует все 50 000 записей, доступных в свободной квоте, прежде чем завершит копирование всех сущностей.

Я подозреваю, что, поскольку свойство индексируетсяотключены в коде Python (классы моей модели), инструмент администрирования хранилища данных, вероятно, не обладает этой информацией, поэтому он предполагает, что ему нужно записать все индексы свойств в новом приложении (или предполагается, что remote_api или что-то на самом деле выполняет запись).

Если я прав, что это то, что происходит, есть ли способ передать объекты без написания индексов свойств?Я мог бы написать свой собственный код экспорта / импорта, который использует мои классы моделей Python, но я надеялся, что для этого есть какие-то встроенные средства.

1 Ответ

2 голосов
/ 07 декабря 2011

Хотя код Python определяет, были ли свойства записаны индексируемыми или нет, данные о том, индексируется ли конкретное свойство, передаются при перемещении сущностей между приложениями, поэтому свойство должно оставаться неиндексированным в новом приложении.Однако вы можете проверить это, выполнив запрос в консоли администратора нового приложения для рассматриваемого свойства - если оно не проиндексировано, результаты не будут возвращены.

Если в вашем новом (HR определены определенные составные индексы)), эти индексы будут записаны для любых индексированных свойств при копировании сущностей.Вы можете сохранить некоторую квоту, удаляя эти индексы до тех пор, пока ваши данные не будут скопированы, а затем воссоздайте их.

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