Может ли поле в документе механизма приложения быть другим документом?

Чтобы создать документ в appengine, я могу сделать это

Document document = Document.newBuilder().setId("document id")
   .setLocale(Locale.UK)
   .addField(Field.newBuilder()
       .setName("subject")
       .setText("going for dinner"))
   .addField(Field.newBuilder()
       .setName("body")
       .setHTML("<html>I found a restaurant.</html>"))
   .addField(Field.newBuilder()
       .setName("signature")
       .setText("ten post jest przeznaczony dla odbiorcy")
       .setLocale(new Locale("pl")))
   .addField(Field.newBuilder()
       .setName("tag")
       .setText("food"))
   .addField(Field.newBuilder()
       .setName("tag")
       .setText("friend"))
   .build();

Могу ли я установить одно из значений addField в документ?

Мне нужна следующая установка

Обзор цены автора книги обзор обзор // много, много отзывов

Посмотреть комментарий с рейтингом пользователя

Как мне создать этот составной документ для поискового API движка приложения?


person Katedral Pillon    schedule 27.04.2014    source источник


Ответы (2)


У вас не может быть таких составных документов в одном поисковом индексе движка приложения. Однако есть и другие вещи, которые вы можете сделать:

  1. В документе может быть несколько полей с одинаковыми именами. То есть вы можете добавлять поле с именем «обзор» несколько раз, каждый раз с разным содержимым.
  2. Вы можете создать отдельные индексы: один для данных книг, содержащих документы книг, и один для данных рецензий, содержащих документы рецензий.

Это действительно зависит от того, какими будут ваши модели использования поиска.

person adevine    schedule 28.04.2014
comment
Я действительно использовал этот подход в сочетании с вашим другим ответом на stackoverflow.com/questions/23317280/ - person Katedral Pillon; 28.04.2014

Вы можете создать отдельные индексы следующим образом:

  • Книги
  • Отзывы

В указателе обзоров вы также можете иметь идентификатор книги и использовать его для поиска обзоров для конкретной книги.

person Romin    schedule 28.04.2014