Эластичный поиск удаляет несколько типов в одном индексе

Одно из наших приложений было разработано таким образом, что у нас есть 7 индексов каждый день (7 дней), и каждый индекс имеет сопоставление с несколькими типами, например, userId, но все поля одинаковы для каждого типа. Он был разработан давно назад (ES2.x) версия. Первоначально userId был всего 2/3, поэтому у нас никогда не было проблем. Но недавно приложение было открыто для нескольких идентификаторов пользователей (в тысячах), и нам пришлось удалить несколько типов (также скоро мы перейдем на ES 6.x).

Может ли кто-нибудь предложить, как лучше всего это сделать? У нас не может быть нескольких индексов на основе идентификатора пользователя (тогда мы получим тысячи индексов). Есть ли способ спроектировать наш индекс таким образом, чтобы фильтрация на основе usedId была простой?


person nocturnal    schedule 08.09.2018    source источник
comment
-nocturnal Можете ли вы предоставить образец документа. Кроме того, поддержание индекса для каждого идентификатора пользователя не является хорошей идеей, он должен быть частью документа.   -  person Chan15    schedule 09.09.2018
comment
Действительно, userId должно быть просто полем. Затем у вас может быть отфильтрованный псевдоним на userId, и вы запрашиваете псевдоним. Как показано здесь и здесь< /а>   -  person Val    schedule 09.09.2018
comment
Спасибо за ответ. провел некоторое исследование, и это ваше решение было тем, на что я опирался. попробуй сейчас.   -  person nocturnal    schedule 10.09.2018