David
А какую проблемы вы этим хотите решить?
У меня вся табилца такая. Хочу понять, есть ли от нее смысл вообще, все поля тут бесполезны (null). Мб есть поля, о которых я не знаю, которые не null
Александр
Хочу собрать метрики и в Grafana отобразить. Начал разбираться Есть такой код https://github.com/percona/grafana-dashboards/blob/main/dashboards/MongoDB/MongoDB_Instance_Summary.json Вроде от того же mongo-exporter , взял последний 0.30.0 Смотрю в код https://github.com/percona/grafana-dashboards/blob/29511139c8361c4b6d50f8ed6f9d0ff421afb850/dashboards/MongoDB/MongoDB_Instance_Summary.json#L360 mongodb_mongod_op_counters_total - на пример такое А в экспортёре такого нет Но есть что-то похожее $ curl -sS mongo-exporter:9216/metrics | grep counters # HELP mongodb_ss_opcounters serverStatus.opcounters. # TYPE mongodb_ss_opcounters untyped mongodb_ss_opcounters{cl_id="",cl_role="",legacy_op_type="command",rs_state="0"} 9279 mongodb_ss_opcounters{cl_id="",cl_role="",legacy_op_type="delete",rs_state="0"} 607 mongodb_ss_opcounters{cl_id="",cl_role="",legacy_op_type="getmore",rs_state="0"} 0 Этого почему нет? Версия MongoDB старовата конечно 3.6.3 из-за этого? Или они свой Dashboard пилят для старой версии mongo-exporter?
Александр
Хочу собрать метрики и в Grafana отобразить. Начал разбираться Есть такой код https://github.com/percona/grafana-dashboards/blob/main/dashboards/MongoDB/MongoDB_Instance_Summary.json Вроде от того же mongo-exporter , взял последний 0.30.0 Смотрю в код https://github.com/percona/grafana-dashboards/blob/29511139c8361c4b6d50f8ed6f9d0ff421afb850/dashboards/MongoDB/MongoDB_Instance_Summary.json#L360 mongodb_mongod_op_counters_total - на пример такое А в экспортёре такого нет Но есть что-то похожее $ curl -sS mongo-exporter:9216/metrics | grep counters # HELP mongodb_ss_opcounters serverStatus.opcounters. # TYPE mongodb_ss_opcounters untyped mongodb_ss_opcounters{cl_id="",cl_role="",legacy_op_type="command",rs_state="0"} 9279 mongodb_ss_opcounters{cl_id="",cl_role="",legacy_op_type="delete",rs_state="0"} 607 mongodb_ss_opcounters{cl_id="",cl_role="",legacy_op_type="getmore",rs_state="0"} 0 Этого почему нет? Версия MongoDB старовата конечно 3.6.3 из-за этого? Или они свой Dashboard пилят для старой версии mongo-exporter?
Короче потерял параметр для старта mongo-exporter --compatible-mode , думал он есть, а потерял (, теперь вроде как есть метрики для Dashboard от percona
dnacd 🦜
ребятка, кто-то интегрировал монго с еластиком, есть какие-то гайды/репо толковые или что-то подобное
Mikhail
Если у меня в MongoDb Atlas есть свой кластер (ip прописал для всех 0.0.0.0/0), я установил mongosh 1.2.2 локально и использую вот такую строку для подключения mongosh "mongodb+srv://sandbox.ljxoz.mongodb.net/admin" --apiVersion 1 --username username вылетает ошибка MongoServerSelectionError: connect ETIMEDOUT Что я делаю не так?
Cloud
https://docs.mongodb.com/manual/reference/connection-string/ у тебя в атласе по идее должен быть где-то корректный коннекш стринг
Cloud
вроде как тебе надо после пароля добавить @сluster....
Cloud
хм странно я могу к твоей базе подключиться
Mikhail
в лс
Wassilevs
Если у меня в MongoDb Atlas есть свой кластер (ip прописал для всех 0.0.0.0/0), я установил mongosh 1.2.2 локально и использую вот такую строку для подключения mongosh "mongodb+srv://sandbox.ljxoz.mongodb.net/admin" --apiVersion 1 --username username вылетает ошибка MongoServerSelectionError: connect ETIMEDOUT Что я делаю не так?
mongosh "mongodb+srv://sandbox.ljxoz.mongodb.net/admin" --apiVersion 1 --username username используется из cmd для вызова mongosh и подстановки строки подключения в самом mongosh - только строку подключения: mongodb+srv://sandbox.ljxoz.mongodb.net/admin (но как минимум надо указать пользователя) mongodb+srv://user/[password]@sandbox.ljxoz.mongodb.net/admin
Yaroslav
Добрый день! Подскажите, а как можно удалить мертвую ноду из реплики ? Т.к. в связи с последними событиями тот сервер больше не доступен :( Всякие rs.remove() или rs.config() просто висят
yopp
Добрый день! Подскажите, а как можно удалить мертвую ноду из реплики ? Т.к. в связи с последними событиями тот сервер больше не доступен :( Всякие rs.remove() или rs.config() просто висят
Здравствуйте! Через rs.reconfig(<newconfig>, {force:true}) Подробнее: https://docs.mongodb.com/manual/tutorial/reconfigure-replica-set-with-unavailable-members/#reconfigure-by-forcing-the-reconfiguration
Anonymous
Всем привет, какой бы вы выбрали формат для MM/YYYY? String?
Viktor
В монге так связи между документами делают?
behran
Всем привет, какой бы вы выбрали формат для MM/YYYY? String?
https://docs.mongodb.com/manual/reference/method/Date/ вот такой
Shahzodbek
Русские хакеры из группировки Killnet положили сайт анонимусов.
Артем
добрый день, пытаюсь запрофайлить запрос, который тормозит, кусок из логов монго слоу запроса: { find: "my_db", filter: { $or: [ {field_1: null }, { {field_1: "" } ], date_created: { $lte: new Date(1646236756424) } }, projection: { $sortKey: { $meta: "sortKey" } }, sort: { date_created: 1 }, limit: 100} пишет, что использует индекс по дате planSummary: IXSCAN { date_created: 1 } хотя добавлен индекс по обоим полям { "v" : 2, "key" : { "field_1" : 1, "date_created" : 1 }, "name" : "{field_1_1_date_created_1", "ns" : "my_db", "background" : true } что я делаю не так?
Nick
добрый день, пытаюсь запрофайлить запрос, который тормозит, кусок из логов монго слоу запроса: { find: "my_db", filter: { $or: [ {field_1: null }, { {field_1: "" } ], date_created: { $lte: new Date(1646236756424) } }, projection: { $sortKey: { $meta: "sortKey" } }, sort: { date_created: 1 }, limit: 100} пишет, что использует индекс по дате planSummary: IXSCAN { date_created: 1 } хотя добавлен индекс по обоим полям { "v" : 2, "key" : { "field_1" : 1, "date_created" : 1 }, "name" : "{field_1_1_date_created_1", "ns" : "my_db", "background" : true } что я делаю не так?
Порядок полей в индексе играет роль, т.к в запросе есть gte и сортировка по дате, то планировщик походу считает, что предпочтительно использовать просто индекс по дате, да еще и с ИЛИ по полю т.к в случае с вашим индексом на два поля он не сможет получить профит и ему надо будет смержить с сортировкой подвыборки. Собственно сделайте индекс с порядком date, field или откажитесь от ИЛИ
RUHHEEB
Всем привет ребят, у меня такой вопросю: как это обойти? Cannot use (or request) retryable writes with limit=0
Mikhail
Задание: In what year was the youngest bike rider from the sample_training.trips collection born? Решение: db.trips .find({ "birth year": {"$ne": null}}, {"_id": 1, "birth year": 1}) .sort({"birth year": 1}) .limit(1) Ответ: [ { _id: ObjectId("572bb8222b288919b68adf09"), 'birth year': 1885 } ] На сайте монги не проходит ( В чём может быть ошибка?
Cloud
findOne?
Cloud
ну или надо привести к 1885 результат мб
Mikhail
не, тут радиобаттон
Mikhail
Mikhail
findOne?
вряд ли, ведь условие у меня все не null
Mikhail
для birth year
Wassilevs
db.trips.find({ "birth year": { "$ne": "" }}, { "birth year": 1, "_id": 0 } ).sort({ "birth year": -1 }).limit(1)
Wassilevs
надо же самого молодого а не старого
Mikhail
надо же самого молодого а не старого
Ой, точно... Почему-то в голове молодой == самый маленький год, спасибо
🥷
Привет участникам! Кто ни будь связывал ymaps(RemoteObjectManager или LoadingObjectManager) + node js + mongoDB?
камил
как можно ускорить выполнение такого кода?
dnacd 🦜
list = [doc for doc in post.aggregate....] return await get_default_form(chat_id) if not list else list иначе юзай движок поиска, хотя монга сама по себе быстрая.
Anonymous
Всем привет, как мне рестартануть кластер Mongo? Просто в MongoDBAtlas у меня такое: "connection <monitor> to 13.49.217.154:27017 closed"
Anonymous
А все это был IP адрес
Vitalik
Ребят, всем привет. Подскажите, есть ли возможность в одном из стейджей агрегейшн пайплайна использовать какие-то обычные переменные из кода. Допустим здесь хочу заменить значение в выводе на значение из словаря
Морозов
Добрый день. Где это можно найти?
Mikhail
Добрый день. Где это можно найти?
Добрый, https://university.mongodb.com
Nick
Ребят, всем привет. Подскажите, есть ли возможность в одном из стейджей агрегейшн пайплайна использовать какие-то обычные переменные из кода. Допустим здесь хочу заменить значение в выводе на значение из словаря
Нет, так не получится сделать, только если сразу в пайплайне укажите значение. Именно в приведенном случае с ок/нот ок можно использовать $cond и явно указать значения из массива
Vitalik
Нет, так не получится сделать, только если сразу в пайплайне укажите значение. Именно в приведенном случае с ок/нот ок можно использовать $cond и явно указать значения из массива
Спасибо. $cond это аналог case в обычном sql, как я понял? Боюсь, что не смогу его использовать, т.к. значений гораздо больше, чем два, и этот "словарь" (на самом деле не словарь, а объект enum, но не суть) может меняться, т.е. хотелось бы не хардкодить кейсы в запросе. Я правильно понимаю, что единственный выход это записать этот словарь перед основным запросом в какую-то коллекцию , и джоиниться к ней просто по ключу?
Abdulaziz
ребят в чём может быть проблема?
Nick
ребят в чём может быть проблема?
В коде, у вас в консоли ошибка что проблемы с промисами
Nick
Понял, думаю, буду делать через доп. коллекцию и лукап. Спасибо!
А в чем потребность это вытаскивать через базу?
Nick
Читайте ошибку, чтото не обрабатываете
Abdulaziz
Читайте ошибку, чтото не обрабатываете
(node:7284) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag --unhandled-rejections=strict (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 2) (node:7284) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code. ошибка такая
Vitalik
А в чем потребность это вытаскивать через базу?
Конкретной потребности нет, но пока что, я хотя бы представляю, как бы я делал через лукап, а через замену в уже окончательной джейсонподобной выгрузке - не очень. условно, полей "label" в окончательной выгрузке может быть много, из разных коллекций, и где-то нужно заменять на значение из словаря, где-то нет. Кроме парсинга я пока методов не знаю (хотя ,уверен, они есть), а это как-то стремно В обоих методах я профан, но лукап хотя бы звучит для меня чуть более надежно, что ли
Abdulaziz
Ошибка в js code, тут не помогу
нашёл) useCreateIndex уже не поддерживается Mongoose 6.0 просто // вуаля
Mikhail
Господа, профессионалы, посоветуйте пожалуйста материал/наводки на юзкейсы для MongoDb. За время изучения выяснил то, что эта БД атомарна лишь на уровне документа, следовательно какие-то важные данные хранить в ней - повесить заряженное ружье, из ACID это всё. Из плюсов обнаружил хорошую маштабируемость с помощью шардинга. Из этого сделал вывод, что основное применение данной БД - начальные этапы разработки(когда быстро меняется модель данных и в РСУБД будет накладно это делать ) , данные которые могут быть потрачены без критических повреждений для приложения, но примеры этих данных какие?
Cloud
+быстрая отдача все те данные которые похер как хранить, пофиг на дублировение и тд кейс привести конечно сложнее(
Anonymous
-Прoдажa обoрyдования для мaйнинга. -Пpогpaмнoe обeспeчeниe -Koмпьютернaя теxникa -Тexника Аpрlе Лyчшие цены ! Bбивaй в поиск Тelegram "mining_softwarе_apрle"
Andy
MongoDB уходит из РФ или еще нет?
Andy
Продажа лицензий и все такое
Andy
Как с Ораклом
Wassilevs
у Монго и до этого официального саппорта и продажи продуктов не было, только через сторонние организации
Simon
Simon
пока гит не закроют - она будет жить)
erlan
Почему я когда использую mongoose то на хероку выйдет ошибка ?
P1GAS
Почему я когда использую mongoose то на хероку выйдет ошибка ?
Предлагаю, показать ошибку. Возможно, он ругается на то, что IP адрессу heroku сервера, не дан доступ
Антон
подскажите пожалуйста как совместить $match с $ifnull чтобы если не было поля “amount.to” не искать или поставить true сразу) а то он автоматом откидывает записи где нет поля “amount.to”
USB type A
MongooseError: Operation clans.findOneAndUpdate() buffering timed out after 10000ms Это у меня инет плохой или в коде беда?