David
Nick
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....
Mikhail
Cloud
хм странно я могу к твоей базе подключиться
Mikhail
в лс
Yaroslav
Добрый день! Подскажите, а как можно удалить мертвую ноду из реплики ? Т.к. в связи с последними событиями тот сервер больше не доступен :( Всякие rs.remove() или rs.config() просто висят
Yaroslav
Anonymous
Всем привет, какой бы вы выбрали формат для MM/YYYY? String?
Viktor
В монге так связи между документами делают?
Anonymous
Shahzodbek
Русские хакеры из группировки Killnet положили сайт анонимусов.
Artem
Артем
добрый день, пытаюсь запрофайлить запрос, который тормозит, кусок из логов монго слоу запроса:
{ 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
RUHHEEB
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
Wassilevs
надо же самого молодого а не старого
🥷
Привет участникам! Кто ни будь связывал 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
Anonymous
А все это был IP адрес
Vitalik
Ребят, всем привет.
Подскажите, есть ли возможность в одном из стейджей агрегейшн пайплайна использовать какие-то обычные переменные из кода.
Допустим здесь хочу заменить значение в выводе на значение из словаря
Морозов
Добрый день. Где это можно найти?
Морозов
Nick
Vitalik
Нет, так не получится сделать, только если сразу в пайплайне укажите значение. Именно в приведенном случае с ок/нот ок можно использовать $cond и явно указать значения из массива
Спасибо. $cond это аналог case в обычном sql, как я понял? Боюсь, что не смогу его использовать, т.к. значений гораздо больше, чем два, и этот "словарь" (на самом деле не словарь, а объект enum, но не суть) может меняться, т.е. хотелось бы не хардкодить кейсы в запросе.
Я правильно понимаю, что единственный выход это записать этот словарь перед основным запросом в какую-то коллекцию , и джоиниться к ней просто по ключу?
Abdulaziz
ребят в чём может быть проблема?
Nick
Спасибо. $cond это аналог case в обычном sql, как я понял? Боюсь, что не смогу его использовать, т.к. значений гораздо больше, чем два, и этот "словарь" (на самом деле не словарь, а объект enum, но не суть) может меняться, т.е. хотелось бы не хардкодить кейсы в запросе.
Я правильно понимаю, что единственный выход это записать этот словарь перед основным запросом в какую-то коллекцию , и джоиниться к ней просто по ключу?
Есть еще вариант сделать коллекцию с этим словарем и через лукап подтягивать значения маппинга. Больше не вижу вариантов. Ну разве что делать эту замену после получения данных, т.к у вас проджект с этим маппингом в конце, то это нормально будет
Vitalik
Abdulaziz
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" в окончательной выгрузке может быть много, из разных коллекций, и где-то нужно заменять на значение из словаря, где-то нет.
Кроме парсинга я пока методов не знаю (хотя ,уверен, они есть), а это как-то стремно
В обоих методах я профан, но лукап хотя бы звучит для меня чуть более надежно, что ли
Nick
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
Andy
Simon
пока гит не закроют - она будет жить)
тим
Господа, профессионалы, посоветуйте пожалуйста материал/наводки на юзкейсы для MongoDb. За время изучения выяснил то, что эта БД атомарна лишь на уровне документа, следовательно какие-то важные данные хранить в ней - повесить заряженное ружье, из ACID это всё. Из плюсов обнаружил хорошую маштабируемость с помощью шардинга. Из этого сделал вывод, что основное применение данной БД - начальные этапы разработки(когда быстро меняется модель данных и в РСУБД будет накладно это делать ) , данные которые могут быть потрачены без критических повреждений для приложения, но примеры этих данных какие?
Динамические данные хранить удобно. У которых определенного типа нет. В реляционных базах только через какой нибудь EAV такое делать, не очень прикольно, либо плодить сотни таблиц динамически каким-то образом
Andy
erlan
Почему я когда использую mongoose то на хероку выйдет ошибка ?
Антон
подскажите пожалуйста как совместить $match с $ifnull чтобы если не было поля “amount.to” не искать или поставить true сразу) а то он автоматом откидывает записи где нет поля “amount.to”
Qoo
Антон
USB type A
MongooseError: Operation clans.findOneAndUpdate() buffering timed out after 10000ms
Это у меня инет плохой или в коде беда?