Удаление полей в GCP Datastore для повышения производительности (Tuning datastore) - PullRequest
0 голосов
/ 26 марта 2020

GCP Datastore по умолчанию индексирует все отдельные поля в вашей сущности. В документе с рекомендациями, опубликованном GCP, рекомендуется вручную исключать поля, которым не нужен индекс, source .

Я использовал аннотацию @Unindexed для ее выполнения sh в моей весенней загрузке. применение. Тем не менее, приложение весенней загрузки читает только из хранилища данных. Запись выполняется через стандартный шаблон потока данных (хранилище данных в облачное хранилище текста).

Приложению все еще требуется более 3 секунд для чтения из хранилища данных. Datastore строит индексы во время приема, поэтому я не вижу смысла вышеупомянутой аннотации для моего сценария использования.

Пожалуйста, помогите с , как вы исключили индексы в полях , не можете найти документацию GCP , К вашему сведению, приложение находится в ГКЕ.

1 Ответ

0 голосов
/ 28 марта 2020

Cloud Datastore - это база данных без схемы, и все индексации выполняются на основе записей, которые вы делаете. Поскольку вы не пишете через Spring, ваша аннотация ничего не делает.

Вместо этого вы захотите исключить индексирование по свойствам, которые вы хотите использовать в ваших заданиях потока данных. Ссылочный шаблон (https://cloud.google.com/dataflow/docs/guides/templates/provided-batch#gcstexttodatastore) имеет параметры для преобразования ваших сущностей с помощью Javascript, поэтому вы сможете изменять свои сущности в функциях преобразования, чтобы они соответствовали определениям, которые есть в приложении весенней загрузки. .

...