как способ?
И ще вопрос:
Можно ли каким то образом увеличить скорость чтения данных из базы?
(например путем смены алгоритма сжатия данных или может смены драйвера и т.п. )
чтение из базы всегда батчем, вы можете только ограничить параметрами запроса и через лимит
может есть какой паттерн для моего случая, в смысле ожидания пользователя в БД?
do{ user = getUser() } while(user == null) или аналоги
эти параметры могут серьезно повлиять на производительность?
они определяют "производительность" что бы вы под этим не подразумевали))
я подразумевал допустим в 2 и больше раза
уменьшите выборку в два и больше раза и получите в два и больше раза скорости
А как этот параметр синтаксически выглядит?
параметры выборки - все то что указывается в query параметре в файнде/апдейте/делете и матч секциях в агрегациях аналогично лимиты для файнда доп параметр, в агрегации стейдж limit
А для записи батчем подобный лимит тоже существует как параметр?
тут надо осторожно, т.к. термина батч из SQL мира в монге не существует. Чтото похожее есть только для вставок (insertMany). а bulk в монге просто набор одиночных запросов и они в базе исполняются отдельно и эффекта батча как в SQL с помощью bulk не достигнуть
мы видимо не правильно поняли друг друга. потому что задавая лимит через стэйдж - время никак не экономиться в итоге (сейчас проверил у себя) - разбивание на куски ничег не дает
Индексация помогает ускорить т.к. часть данных пропускается
индексация в моем случае уже присутствует
Она не просто должна быть, а ещё правильная т.к. большое количество индексов только замедляют работу
https://ru.stackoverflow.com/questions/1449529/%d0%92%d0%be%d0%b7%d0%bc%d0%be%d0%b6%d0%bd%d0%be-%d0%bb%d0%b8-%d1%83%d1%81%d0%ba%d0%be%d1%80%d0%b8%d1%82%d1%8c-%d0%bf%d0%be%d0%bb%d1%83%d1%87%d0%b5%d0%bd%d0%b8%d0%b5-%d0%b4%d0%b0%d0%bd%d0%bd%d1%8b%d1%85-%d0%b8%d0%b7-%d0%b1%d0%b0%d0%b7%d1%8b-%d0%b2-10-%d0%b8-%d0%b1%d0%be%d0%bb%d0%b5%d0%b5-%d1%80%d0%b0%d0%b7
Обсуждают сегодня