Dmitry
это я вчера пытался сделать newRoot
Dmitry
и ругается что получил строку...
Dmitry
есть какой-то способ результат вычислений перевести в чистый массив?
Dmitry
хотя-бы куда смотреть?
Dmitry
может логика выражения не правильная? И надо было делать вообще не facet'ом?
Nick
собрать все в один массив: group:{id:null, array:$push:....}
Dmitry
ну я так и сделал `{ "$group": { "_id":nil, "array":{ "$push": "$data.self_customer_status_id" } } }`
Dmitry
результат не очень...
Nick
и нужен пример того что должно получиться
Nick
а блин
Nick
у вас там facet
Nick
это значит что members не видит результатов guests
Nick
поэтому и обратиться к массиву вы не сможете
Dmitry
Блииин, спасибо огромное!!!
Dmitry
сделаю вторым условием! Спасибо!)
yopp
Нет
Max
привет! нужно проапдейтить Storage на сервере (атлас) с 15 гигов до 30 . Подскажите, в период апдейта, будет ли доступен кластер? могут ли быть проблемы
Bekzhan
всем привет, как создать поля для юзера в компасе? у меня есть база данных, но она пустая, есть ли туториалы, помогите плиз
Dima
через консоль проще будет пару комманд и все https://docs.mongodb.com/manual/reference/method/db.createUser/
Bekzhan
спасиьо
Artem
смотрите есть сортировка по полям created_at: -1, updated_at: -1, _id: -1 можно ли както организовать search after разбивку на страницы по несскольктм полям сортировки?
Artem
или только можно реализовать search_after по _id ?
Artem
а что вы под «search after» разбивкой подразумеваете?
Вот к примеру там Approach 2: Using _id and limit вариант разбивки на страницы https://www.codementor.io/arpitbhayani/fast-and-efficient-pagination-in-mongodb-9095flbqr но проблема в том что возникает необходимость сортировать по нескольким полям, и search after должен производиться относительно нескольких полей. К примеру в ElasticSearch данный механизм разбивки на страницы есть базовым на больших объёмах данных и там есть возможность отталкываться от нескольки полей сортировки. Но как такое же реализовать на mongodb, и возможно ли это?
yopp
но вы можете использовать как маркер условие $gte/$lte по created_at: , updated_at: , _id: . т.е. задача состоит в том, чтоб отсечь часть выборки
yopp
вероятно у вас там индекс по created_at,updated_at, да?
yopp
вообще, какой объём данных, что вам так необходимо делать маркер?
Artem
Объём предположительно большой будет, все будет шардироваться и реплецироваться, пока там данных мало в реалие, но это временно. И $gte/$lte не сработает если выборка будет лимитирована через limit и будут существовать не уникальные даты обновления и создания + ессли _id не будет соответсвовать данным датам
yopp
вот когда у вас будут данные, тогда и будете разбираться
yopp
сейчас это охота на мух
yopp
вы не знаете где у вас проблема и не знаете под какой кейс оптимизировать
yopp
более того, если вы хотите шардировать это вообще соверешнно другая история
CrusaderX
Так сделай полл ) Я бы сходил на онлайн-трансляцию
Alexeyhh
👋 Привет всем, сталкивался ли кто с очень долгой задержкой при подключении к mongodb Atlas и невозможностью записать данные туда? При записи иногда вылезает connection timeout
Никита
Может проблема не у атласа, а у сети?
yopp
👋 Привет всем, сталкивался ли кто с очень долгой задержкой при подключении к mongodb Atlas и невозможностью записать данные туда? При записи иногда вылезает connection timeout
я не помню требуется ли клиентам для установки tls соединения генерация случайных нонсов, возможно стоит проверить состояние пула энтропии в этот момент. Возможно tls использует /dev/random или ещё какой блокирующий источник, по какой-то причине на хосте пул истощяется и новое соединение висит пока пул не наполнится. Ну и как сказали — проверить что с сетью всё хорошо
Alexeyhh
А как именно сеть проверить?
Alexeyhh
Я уже что только не делал, без понятия что не так, если честно.
Alexeyhh
AstraSerg
А как именно сеть проверить?
netstat -naop | grep mongo | wc -l например
Alexeyhh
Я с шиндоус.
AstraSerg
Я с шиндоус.
https://sysnetdevops.com/2017/04/24/exploring-the-powershell-alternative-to-netstat/ Оно?
Alexeyhh
В самой документации есть вот такое. У меня эти порты не заблокированы и не заняты
Alexander
А можно ли через mongoose найти вхождения по формуле? В доках этого вроде нет. Есть сравнение больше или меньше, но хотелось бы иметь возможность провести несложные операции вычитания/сравнения над значением, и если всё сходится, только тогда вернуть значение.
yopp
В самой документации есть вот такое. У меня эти порты не заблокированы и не заняты
Вероятнее всего вам нужно проверить качество линка до Atlas. Если у вас бесплатный план, то попробуйте пересоздать кластер в другом регионе и посмотреть не станет ли лучше.
Alexeyhh
В гугле ошибка не ищется
yopp
У вас проблемы с DNS
Alexeyhh
Да, я понимаю, но что делать я без понятия
yopp
посмотрите какой dns сервер у вас используется и попробуйте поменять его на публичный, например гугл (8.8.8.8/8.8.2.2) или coudlflare (1.0.0.1/1.1.1.1)
Alexeyhh
Да, наконец-то, спасибо вам огромное, там вместо dns вообще непонятно что было, как так вышло без понятия.
yopp
вероятно у вашего провайдера сломался dns ¯\_(ツ)_/¯
Alexeyhh
Скорее всего =) Стоял в автоматическом режиме
Dmitry
Подскажите пожалуйста, countDocuments всегда должен идти отдельным запросом или можно как-то и курсор получить и общее количество документов?
Dmitry
к примеру у меня есть запрос который возвращает курсор на 1000 документов, хотелось бы одновременно получить и само количество этих документов без лишнего запроса. Это возможно?
AstraSerg
cursor.size() cursor.count() должно помочь
Dmitry
cursor.size() cursor.count() должно помочь
Count кажется уже deprecated
yopp
cursor.size() cursor.count() должно помочь
Нет, count в mongo-she’ll преобразует это в count query https://github.com/mongodb/mongo/blob/f740b0abe67453ca069555af7eea76f063ba90a9/src/mongo/shell/query.js#L338
yopp
А size это шорткат к count https://github.com/mongodb/mongo/blob/f740b0abe67453ca069555af7eea76f063ba90a9/src/mongo/shell/query.js#L380
Dmitry
В общем примерно понятно...
yopp
А зачем нужен count? Пагинация?
yopp
А сколько документов?
Dmitry
Пока очень мало, но планируется под миллион и будет расти
yopp
Миллион всего или миллион в выборке?
yopp
Там условие есть?
Dmitry
Миллион в выборке
yopp
А всего сколько документов?
Dmitry
Выборка - все документы из коллекции
Dmitry
А всего сколько документов?
Сейчас около 1000 :) Но будет расти +300-500 в день постоянно
yopp
С сортировкой?
Dmitry
Да, по дате