Вячеслав
https://docs.mongodb.com/manual/core/data-modeling-introduction/ Начните отсюда.
да, спасибо, наверное это то, что мне нужно для начала
Вячеслав
Док не сильно мне понятен.
спасибо за помощь. Буду дальше сам разбираться, не стоит забивать голову моими терминолоигями.
Nick
Если вопрос только компактности, то в монге есть тип данных bindata (blob, binary), в котором можно нативно хранить массив байт, посмотрите как в вашем драйвере правильно с ним работать
Null
5.0.5 (Dec 6) • 4.4.10 (Oct 15) ◦ 4.2.17 (Sep 28) ℹ️ Вышла версия 5.0.5 Что нового в 5.0 (PDF) • Наше сообщество: @mongodb_ru • Решение проблем с MongoDB по подписке • Документация • Официальные курсы (Бесплатно) Stable: 5.0.5 (Dec 6) Bugfix: 4.4.10 (Oct 15), 4.2.17 (Sep 28) Legacy: 4.0.27 (Sep 13, ☠️Jan ’22) По вопросам размещения вакансий, платной поддержки и покупки лицензий пишите @dd_bb ☠️ 3.6.23 (Mar ’21), 3.4.24 (Jan ‘20), 3.2.22 (Dec ’18), 3.0.15 (May ’17)
Гена
Всем привет А можно как-то промониторить как бежит запрос в шардированном кластере. Бродкастом или нет. Просто у нас запрос с ключем шардирования и есть подозрения что запрос всё равно идет по всем шардам
yopp
explain({executionStats: 1})
yopp
там будет видно на какие шарды делался запрос
Гена
explain({executionStats: 1})
а если вывод профайла смотреть то на что обращать внимание? выполнить запрос с explain({executionStats: 1}) не получитсяъ
Гена
такие записи как "inputStage" : { "stage" : "SHARDING_FILTER", могут говорить что всё ок и нет никакого бродкастинга?
Гена
ключ executionStages.shards
не могу найти такое поле
Ярослав
Добрый день, подскажите кто-то сталкивался с такой ошибкой, что нужно сделать?
Ярослав
Здравствуйте, подскажите пожалуйста у меня вот такая ситуация. У меня вот в таблице в БД есть товары. И мне надо каждый день выводить на экран по 72 товара, но разные. То есть, например, у меня 300 товаров. Сегодня я вывел с 1 по 72, завтра с 73 по 144 и так далее. Вот через limit offset как-нибудь хочу сделать, но не могу придумаь как. ПОдскажите пожалуйста
Nick
Здравствуйте, подскажите пожалуйста у меня вот такая ситуация. У меня вот в таблице в БД есть товары. И мне надо каждый день выводить на экран по 72 товара, но разные. То есть, например, у меня 300 товаров. Сегодня я вывел с 1 по 72, завтра с 73 по 144 и так далее. Вот через limit offset как-нибудь хочу сделать, но не могу придумаь как. ПОдскажите пожалуйста
вам надо определить некий атрибут и сортировать по нему, это однозначно определит вывод и позволит использовать лимиты. но это для случая если надо показывать каждый день разное, если нужно показывать "какие-то" 72 из набора, то можете посмотреть на https://docs.mongodb.com/manual/reference/operator/aggregation/sample/
Anonymous
https://stackoverflow.com/questions/50110604/mongodb-keeps-crashing-every-few-minute
Viktar
Can this problem be solved?
Could you provide log screen shot with error?
Anonymous
Could you provide log screen shot with error?
The service starts and stops after a few minutes
Viktar
(( I guess that you have memory error. Not enough. But I need logs..
Anonymous
Viktar
There are no errors in this log.
Dmitry
Всем доброго. Не могу понять как сделать. Есть коллекции, допустим полки с вещами. И надо на их основе сделать документ комод, который бы в себе содержал эти полки как свойства
Dmitry
Хочу через агрегацию получать данные
Dmitry
Надо было сразу уточнить
Nick
Нужны не ссылки а значения
Значения чего? Ведь у вас полка это тоже массив с вещами. Если нет то покажите как сейчас модель выглядит
Dmitry
что-то вроде такого polka1 = [1, 1, 1] polla2 = [2, 2, 2] polka3 = [3, 3, 3] komod = { polka1, polka2, polca3 }
Dmitry
и подобное надо провернуть с коллекциями
Nick
что-то вроде такого polka1 = [1, 1, 1] polla2 = [2, 2, 2] polka3 = [3, 3, 3] komod = { polka1, polka2, polca3 }
доки в базе строятся аналогично json-у. Соответственно внутри объекта комод должно быть какоето поле или поля. Если поле одно, то под ваш случай там должен быть массив полок: commode: { shelfs:[ [1,2,3], [4,5,6], ] } либо явно обозначать поле=полка commode:{ shelf1:[1,2,3], shelf2:[4,5,6] } но по второму сопосбу сложно строит ьуниверсальные запросы и такие структуры не практикуются
Sanya
Всем привет Подскажите, пожалуйста. У меня есть массив элементов с типом данных String. Мне нужно отфильтровать данные по принципу наличия элемента с определенным словом. Могу ли я это сделать? Пишу на Swift'e, для фильтрации использую NSPredicate
Mister Igor 🇺🇦
ок
Anonymous
Hello
Rauan
Rauan Amangeldiyev, [12.12.21 16:19] Здравствуйте все, у меня есть вопрос насчет mongo и питона. Я переношу архитектуру iot системы с postgres на монго и у меня есть вопросы. Спасибо за ранее: 1) я искал djongo and pymongo чтоб можно было создавать динамично collections чтоб каждый сенсор сохранялся как отдельный коллекш и его данные сохранались по отдельности. Сейчас в postgres, я все данные с разных сенсоров сохраняю в одном бд с индексацией. Но в монго хотел все по отдельности. Правильно ли такая архитектура? Просто если я буду снова сохранять все в одном коллекшене (с индексацией конечно же) то это будет точная копия моего postgres бд архитектуры. 2) у меня есть координаты точек но ни в одной библиотеке на питоне нет описании как использовать точки и полигоны. я читал доки самого монго и там у них все хорошо описано но на питоне нету поддержки или я плохо искал? можете подсказать библиотеку где есть инфа как сохранять точки в монго и как делать геозапросы (например: найти все точки которые лежат в данном полигоне итд) на питоне Спасибо еще раз
Andrey
Rauan Amangeldiyev, [12.12.21 16:19] Здравствуйте все, у меня есть вопрос насчет mongo и питона. Я переношу архитектуру iot системы с postgres на монго и у меня есть вопросы. Спасибо за ранее: 1) я искал djongo and pymongo чтоб можно было создавать динамично collections чтоб каждый сенсор сохранялся как отдельный коллекш и его данные сохранались по отдельности. Сейчас в postgres, я все данные с разных сенсоров сохраняю в одном бд с индексацией. Но в монго хотел все по отдельности. Правильно ли такая архитектура? Просто если я буду снова сохранять все в одном коллекшене (с индексацией конечно же) то это будет точная копия моего postgres бд архитектуры. 2) у меня есть координаты точек но ни в одной библиотеке на питоне нет описании как использовать точки и полигоны. я читал доки самого монго и там у них все хорошо описано но на питоне нету поддержки или я плохо искал? можете подсказать библиотеку где есть инфа как сохранять точки в монго и как делать геозапросы (например: найти все точки которые лежат в данном полигоне итд) на питоне Спасибо еще раз
По геоиндексы, посмотрите в примерах как создаются документы в монге, с координатами, и создавайте в коде такие документы, потом запрос из кода в соответствии с документацией - и монга вернет документы какие надо
Andrey
В радиусе, ближайшие и так далее
Andrey
Про коллекци , их не надо отдельно создавать, можете из кода сразу указывать имя коллекции и писать в нее, монга сама создаст
Р
Пацаны, как монгус запустить
Р
А то я его из автозагрузок убрал
Р
4.2+. Версси
NO WAR!
Всем привет. Не получается скомпилировать mongodb 3.2.12 под Debian. Для Raspberry 32 бита. Может кто-то помочь? Может посоветуете к кому обратиться за помощью?
Andrey
Пишут же в первых ссылках https://www.mongodb.com/community/forums/t/add-mongodb-4-2-arm64-builds-for-raspberry-pi-os-64-bit-debian-buster/5046
NO WAR!
Пишут же в первых ссылках https://www.mongodb.com/community/forums/t/add-mongodb-4-2-arm64-builds-for-raspberry-pi-os-64-bit-debian-buster/5046
Поверь. Уже все доступное перекопал. Есть статьи и про компиляцию под 32 бита, но не получается. Выдает ошибку, а моих компетенций в данном вопросе недостаточно.
Р00-👨🏻‍💻Михаил
Малина X Server-то кое-как переваривает Устанавливать туда монго это вообще отдельный сорт извращения
Vova
Это для 64-х битных Распберри. У меня 32.
32 битные арм нет смысла поддерживать, это обычно старые слабые машины и очень специфический юз кейс Арм64 выглядит более адекватно, ибо и маки на Apple Silicon, и малины помощнее есть (Pi 4 Model B на 8 ГБ ОЗУ спокойно потянет)
Mr.
Привет всем! Товарищи, у меня вопрос по MongoDB. Я не могу почему то подключиться к базе, что тут может быть не так, что изменить?
Mr.
Mr.
Вроде новый проэкт, всё ок должно быть
Mr.
А в логах только вот это
Mr.
Где можно посмотреть логи самого mongodb про попытки подключения и что там пошло не так?
Mr.
(I use Arch btw)
Mr.
Как фреймворк тут юзается nestjs
Mr.
Я конечно не специалист по монгодб(даже подключиться пока не смог 😂), но почему бы просто не проходиться циклом на бэке, что б он сравнивал записи и если такая уже есть — не писать в базу новую запись. И ещё, как ты будешь бороться с тем что например a и a это два разных символа?(символы кириллицы и латыни)
Mr.
А в логах только вот это
Решено. Я слепой просто, как всегда)
Artem
Ни у кого нет бага c DuplicateKey? Неоднократно натыкаюсь на эту ошибку, хотя у меня создание документов ТОЛЬКО через findOneAndUpdate + upsert
Roman Khonichev
Roman Khonichev
И как с этим бороться?
У нас не критичная часть (пишем логи), поэтому либо забиваем, либо отлов exception и повторная вставка
Александр
Добрый день. Подскажите пожалуйста, как получить в поле "hasSession" только первый документ из pipeline lookup? Что я делаю не так?
Cloud
я в аггрегациях не оч силен, но мб попробовать limit?
Александр
я в аггрегациях не оч силен, но мб попробовать limit?
я просто хочу сразу объект получить, а не массив
Александр
Подскажите, как взять первый элемент из "lastSession" pipeline? Хотел использовать first
Cloud
тут возможно unwind поможет
Cloud
я просто хочу сразу объект получить, а не массив
Александр
Подскажите пожалуйста, есть два способа формирование json из mongo. К готовым документам из коллекции "characteristicsUsers" добавить два поля - "lastRevitSession" и "lastNikaTimesSession" 1. С помощью агрегации lookup. 2. C помощью агрегации project каждой коллекции. Кажется, что правильно через lookup, но через lookup кода больше в два раза. Вопрос: Как делать правильно?
Ilya
ща бы строками кода жертвовать
Александр
Alexander
Хотелось бы узнать, не с точки зрения строк кода, а как технологии.
ну вопрос выглядит будто волнуют строчки) а так сделайте екслпейн обоих запросов, посмотрите что делает драйвев в каждом из случаев
Oleg
Привет. Подскажите, кто как осуществляет версионирование данных в монге?