У нас есть приложение Java, работающее на движке Google. Имея вид, называемый Контакт. Ниже приведен пример схемыЛучший способ разработки приложений и моделирования текстового поиска приложений
Contact
{
long id
String firstName
String lastName
...
}
выше является existig модель, для поддержки нескольких требований мы храним этот объект как в хранилище данных и поиска текста
Теперь мы хотим интегрировать контакты с данными просмотров страниц.
Каждый контакт может иметь тысячи просмотров страниц записей или даже миллионы для некоторых контактов
Ниже приводится образец посещения страницы объект [Примечание: Мы не имеем этот объект как сейчас, это просто дать информацию о посетите страницу]
PageVisit
{
long id
String url
String refUrl
int country
String city
....
}
у нас есть требование, которое нуждается в запросе на контакт основных свойств и его страницы посетили данные
напр:
select * from Contact where firstName = 'abc' and url = 'cccccc.com';
select * from Contact where firstName = 'abc' or url = 'cccccc.com';
Чтобы написать такие запросы, нам нужны как свойства контактного ядра, так и их посещаемая страница должны быть доступны в самом Contact-объекте, но контакт может иметь огромное количество просмотров страниц. Таким образом, это превысит ограничение максимального размера сущности
Так как проектировать контактную модель в подобной ситуации как в хранилище данных, так и в текстовом поиске.
Благодаря