Подключение AppEngine Datastore и API поиска
Интересно, как лучше соединить хранилище данных и API поиска?
Что я ищу, так это всякий раз, когда я создаю какой-либо объект (например, продукт), этот продукт будет добавлен в поисковый индекс. При обновлении индекс также должен обновляться, а при удалении продукта - вы угадаете правильно - продукт должен быть удален из поискового индекса.
При поиске товара я хочу выполнить полнотекстовый поиск по индексу товара, но вместо документов мне нужны реальные сущности. Вероятно, мне нужно будет сначала выполнить поиск по индексу, а затем сделать второй вызов в хранилище данных?
Больше всего меня беспокоит синхронизация хранилища данных и индекса поиска. И, конечно же, просмотр поискового индекса и хранилища данных будет не только громоздким, но я чувствую, что это может также причинить боль с точки зрения нумерации страниц.
Интересно, если некоторые люди уже "подключили" хранилище данных и API для поиска таким образом, и каковы были результаты, и, возможно, какие-то лучшие практики доступны. Документы Appengine не много говорят об этой области.
1 ответ
Чтобы использовать API поиска, вам нужно определить данные для поиска в документах, а затем структурировать их в индекс с помощью Index
учебный класс. Таким образом, на данный момент вам нужно делать именно то, что вы описываете, синхронизировать документы с возможностью поиска с вашими объектами хранилища данных.