Size: a a a

DBA - русскоговорящее сообщество

2021 January 17

D

Denis in DBA - русскоговорящее сообщество
Serega Carbon
и что
Что и что. Мне колскан по 2 лямам документов делать? Если так флаги соберут что нужные всего 5 документов в конце. Результат человек не дождется
источник

IZ

Ilia Zviagin in DBA - русскоговорящее сообщество
Etki
Ну вообще я просто от других людей слышал

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

IZ

Ilia Zviagin in DBA - русскоговорящее сообщество
critskiy
В том, что у него индексы пересекающиеся. Насколько я помню, монга выбирает в таком случае индекс смотря на worksPlan, и весьма вероятно, он сталкивается с тем, что у него монга выбирает совсем не тот индекс, который он ожидает
Пересекающиеся - это как?
источник

E

Etki in DBA - русскоговорящее сообщество
В эластике нет,а в lucene да. Винить прошу других людей.
источник

SC

Serega Carbon in DBA - русскоговорящее сообщество
Ilia Zviagin
Пересекающиеся - это как?
мб индекс на индексе ) типа как btree над gin
источник

c

critskiy in DBA - русскоговорящее сообщество
Serega Carbon
мб индекс на индексе ) типа как btree над gin
Угу, like that.
источник

D

Denis in DBA - русскоговорящее сообщество
Ilia Zviagin
Ну, так проблема в чем?
Монга в индексы не умеет?
Я еще в первом сообщении написал, что решение на монге есть, compund индекс на все комбинации полей из формы (все но без учета порядка). Но только такой сет индексов будет весить раз в 10 больше данных
источник

SC

Serega Carbon in DBA - русскоговорящее сообщество
я не вижу смысла ставить индексы на поля с флагами
источник

SC

Serega Carbon in DBA - русскоговорящее сообщество
не сортировать же по ним и не производить полнотекстовый поиск)
источник

c

critskiy in DBA - русскоговорящее сообщество
Denis
Я еще в первом сообщении написал, что решение на монге есть, compund индекс на все комбинации полей из формы (все но без учета порядка). Но только такой сет индексов будет весить раз в 10 больше данных
з о ч е м. Вы на каждую аггрегацию потом вешать будете индекс в монге каждый раз, когда новое поле будете туда добавлять?
источник

D

Denis in DBA - русскоговорящее сообщество
Serega Carbon
я не вижу смысла ставить индексы на поля с флагами
Ну понимаешь что есть такая комбинация флагов по которой 2 документа из 2 млн. Смотри скрин если позже подключился
источник

SC

Serega Carbon in DBA - русскоговорящее сообщество
Denis
Что и что. Мне колскан по 2 лямам документов делать? Если так флаги соберут что нужные всего 5 документов в конце. Результат человек не дождется
я прогонял 40 лямов фильтруя по флагам с btree индексом на одной из сортирующих колонок, всё отработало за 50мс на жестком диске у меня в ноуте, хотя может кэш был прогрет, но не суть)
источник

D

Denis in DBA - русскоговорящее сообщество
critskiy
з о ч е м. Вы на каждую аггрегацию потом вешать будете индекс в монге каждый раз, когда новое поле будете туда добавлять?
Другое решение подскажешь? Об
Об этом беседу и ведем
источник

c

critskiy in DBA - русскоговорящее сообщество
Denis
Другое решение подскажешь? Об
Об этом беседу и ведем
Да. Или переезжай на другое решение, или переделывай схему хранения в монге. Там прям в документации есть целый раздел по моделированию данных :)
источник

c

critskiy in DBA - русскоговорящее сообщество
Все просто :)
источник

IZ

Ilia Zviagin in DBA - русскоговорящее сообщество
Denis
Я еще в первом сообщении написал, что решение на монге есть, compund индекс на все комбинации полей из формы (все но без учета порядка). Но только такой сет индексов будет весить раз в 10 больше данных
Ну так а что ж ты хочешь?
Перфоманс стоит денег...
источник

D

Denis in DBA - русскоговорящее сообщество
Serega Carbon
я прогонял 40 лямов фильтруя по флагам с btree индексом на одной из сортирующих колонок, всё отработало за 50мс на жестком диске у меня в ноуте, хотя может кэш был прогрет, но не суть)
Омг. Разговор о том что есть пул флагов, заранее неизвестно какие из них выберет юзер на фронте
Это все меняет
источник

SC

Serega Carbon in DBA - русскоговорящее сообщество
Denis
Омг. Разговор о том что есть пул флагов, заранее неизвестно какие из них выберет юзер на фронте
Это все меняет
неизвестное КОЛИЧЕСТВО флагов или что?
источник

D

Denis in DBA - русскоговорящее сообщество
critskiy
Да. Или переезжай на другое решение, или переделывай схему хранения в монге. Там прям в документации есть целый раздел по моделированию данных :)
Че за флуд, говори конкретно. Готов поспорить я монгу знаю сильно лучше тебя. И с моделированием у меня в все в порядке там
источник

IZ

Ilia Zviagin in DBA - русскоговорящее сообщество
critskiy
Да. Или переезжай на другое решение, или переделывай схему хранения в монге. Там прям в документации есть целый раздел по моделированию данных :)
Так а какое ещё решение может быть кроме индексов?
Никакого и нет
источник