"
Is any way to upload image to mongodb from cloud storage?
Отдельно Очумелые
Is any way to upload image to mongodb from cloud storage?
Yes. Is many! Mongodb is not object storage. For store objects use something like cassandra
Отдельно Очумелые
думаю вам поможет aggregate с 2-мя stage: $lookup и $out
Да, вот думаю, что нет. Проблема как раз в том, что lookup не умеет принимать переменную в поле from.
Hunter
Кто-то пробыл писать код для монго с помощью gpt?)
Andrey K.
всем привет, хочу выцепить из Монго типа метаданных, как например в Постгресе дамп с ключами globals и schema_only, то есть в такой дамп будут включены пользователи, таблицы без самих данных и все настройки прав доступа. Для монго вижу, конечно, же db.getUsers( { showCredentials: true } ) а еще какая есть метаинформация вот такая ? что еще необходимо для корректной работы, но без самих данных ?
Отдельно Очумелые
у нас гавно мамонта 4,4
Stepan
у меня сегодня украли базу и почистили ее, оставив то что вы видите выше почитал, я такой не первый научите пожалуйста врубать соответствующие настройки, чтобы такого больше не было База работала в официальном mongo докер контейнере, который запускался через docker-compose база была на удаленном сервере, на сервер никто войти не мог кроме меня
Stepan
неа, очень сомнительно скорее я что-то не настроил с портами и у кого-то получилось отправить запросы
D
такое бывает если база доступна в онлайн без пароля
Stepan
а вот что посоветуете настроить? я настройки вообще не трогал, просто запустил их докер и считал что этого достаточно
Nick
у нас гавно мамонта 4,4
так обновляйтесь
Андрей
у нас гавно мамонта 4,4
У меня 3.6.22 было до прошлой недели
Alex
такое бывает если база доступна в онлайн без пароля
у меня и с паролем чистили базу когда стоял на дефолтный порт, после замены стандартного порта пока держится
NCR
Первый проеб - проброс порта и слушаете 0.0.0.0 Внутри докер компоуз можно строить зависимости нет никакого смысла дать железу тоже послушать этот порт Второй проеб - нет фаервола который разграничит входящие подключения только по определённым айпи Обычно такое есть у многих поставщиков облачных технологий, достаточно лишь настроить Третий но менее значимый после первых двух проеб - пароль, он нужен поскольку вместе три фактора - это крепость, где уверен в завтрашнем дне
Отдельно Очумелые
Андрей
Нам некогда, типа)
у меня так с постгресом, уже год уговариваю разрабов джиры обновиться с 9.6
Отдельно Очумелые
Андрей
с постгресом ваще нет проблем все автоматом
так и с монгой тоже нет проблем, роль написал и всё обновляет автоматом
Отдельно Очумелые
ну ладно вопрос не в этом =)
Андрей
а есть какой-нибудь инструмент восстановления бд, в смысле не с дампа восстановить а ремонтировать, типа restore
Андрей
аналог analyze table в mysql
Nick
где? в упор не вижу
let секция для выноса переменных и использование их внутри пайплайна внутреннего над связываемой коллекцией
Nick
где? в упор не вижу
посмотрите пример https://www.mongodb.com/docs/manual/reference/operator/aggregation/lookup/#perform-a-concise-correlated-subquery-with--lookup
Отдельно Очумелые
let секция для выноса переменных и использование их внутри пайплайна внутреннего над связываемой коллекцией
все так. А назначенные переменные разве могут быть использованы в lookup.as и lookup.from?
Отдельно Очумелые
все бы ничего, но коллекции которые нужно "джонийть" в родительской коллекции
Отдельно Очумелые
{ tgt_from_collection: "myCollecrtionName", tgt_as: "some_name", }
Отдельно Очумелые
И что то типа бы, но нет { '$lookup': { let: { match_key: '$tgt_key', match_val: '$tgt_value', tgt: '$tgt_collection' }, from: '$$match_val', as: '$$tgt', pipeline: [ { '$match': { '$expr': { '$eq': [ '$$match_key', '$$match_val' ] } } } ] } }
Bretbas
Народ, есть тут кто кто с монгой в dotnet работает?
Nick
И что то типа бы, но нет { '$lookup': { let: { match_key: '$tgt_key', match_val: '$tgt_value', tgt: '$tgt_collection' }, from: '$$match_val', as: '$$tgt', pipeline: [ { '$match': { '$expr': { '$eq': [ '$$match_key', '$$match_val' ] } } } ] } }
названия полей должны быть заполнены на этапе построения пайплайна, так что в as и from ничего из передать не получится. Но очень странно что такая потребность вообще может быть
Bretbas
+
я не могу никак понять, каким образом приказать сериализатору, чтобы он смог мою структуру сериализировать при добавление в монгу у меня есть некая моделька: class FormValue { public string Key {get; set;} public object Value {get; set;} } где Value может быть и структура моя. у меня падает в ObjectSerializer при добавление документа с структурой. ошибка прям вначале метода ObjectSerializer на проверке типов, и моя структура туда не входит естественно как научить сериализировать?
Vladyslav
И тип на стринг смените
Bretbas
Jsonconvert.serialize и пишите строкой
я пытался так, но тогда он и вытаскивает строкой
Bretbas
а мне как бы и десериализация нужна)
Vladyslav
я пытался так, но тогда он и вытаскивает строкой
Все верно, дальше десереализируйте назад в тип, который вам нужен
Bretbas
Все верно, дальше десереализируйте назад в тип, который вам нужен
но проблема в том, что место этого FormValue.Value, который с типом object, может быть еще и Dictionary с типом значения МОЕЙ структуры
Bretbas
и тогда падает все равно
Vladyslav
Можно использовать также атрибуты, написать свой, чтобы это почти автоматом всегда было. Или наоборот через доп свойства => на обжект вешает игнор для монги, а на строку геттер и тд
Bretbas
Что за форм велью?
ну я же выше написал, что у меня моделька class FormValue { public string Key {get; set;} public object Value {get; set;} }
Bretbas
и проблема в сериализации/десериализации Value
Bretbas
свойства
Bretbas
потому что там может бытть структура
Bretbas
а может быть еще Dictionary, у которого тип значения ТОЖЕ структура
Vladyslav
а может быть еще Dictionary, у которого тип значения ТОЖЕ структура
вам нужно прийти к одному типу, использовать обжект, для хранения всего - плохая идея
Vladyslav
Андрей
Всем привет! Подскажите пожалуйста, как оптимизировать total size коллекции, записей всего 200, а объем данных занимает как будто их 50000. Есть какой-нибудь инструмент?
Андрей
Ниже приведены сравнения бд по средам: в tifa запросы не тормозят, в tfi тормозят:
Андрей
tfi size: 112986579, count: 131, numOrphanDocs: 0, storageSize: 14635008, totalIndexSize: 184320, totalSize: 14819328, indexSizes: { report_id_part_uniq_idx: 36864, date_and_status_idx: 36864, sisId_parts_idx: 36864, report_id_idx: 36864, _id_: 36864 }, avgObjSize: 862492, ns: 'reports.dayReportChunk', nindexes: 5, scaleFactor: 1 tifa size: 6722789, count: 5745, numOrphanDocs: 0, storageSize: 1347584, totalIndexSize: 811008, totalSize: 2158592, indexSizes: { date_and_status_idx: 106496, sisId_parts_idx: 110592, report_id_idx: 217088, report_id_part_uniq_idx: 249856, _id_: 126976 }, avgObjSize: 1170, ns: 'reports.dayReportChunk', nindexes: 5, scaleFactor: 1
Андрей
что такое tfi и tifa? плюс это ж разные бд\ разные данные, верно?
это разные стенды, данные разные но структура идентична
Vladyslav
это разные стенды, данные разные но структура идентична
ок, тогда просто по avgObjSize можно сказать что на tfi - допустим 200эл в массиве, а на другом сервере 2 эл
Vladyslav
смотрите ваши данные, как их используете
Андрей
Что значит тормозят?
через компас по минуте запрос содержимого коллекции висит
Андрей
А не через компас?
через консоль моментально
Nick
Тогда в чем вопрос?
Андрей
Тогда в чем вопрос?
вопрос в том, можно ли как-то оптимайзить данные, типа optimize table у mysql
Nick
Рендер json размером в 1Мб это не быстро
Андрей
Чего вы хотите добиться?
я думаю, что что-то не так с данными, либо с структурой. дамп этой же бд на другом стенде, показывает такие же результаты.
Андрей
наверное я ничего не смогу поделать, но в версии 3.6 вообще не было тормозов с этими же данными
Андрей
Вы почемуто оцениваете скорость работы компаса, но пытаетесь ускорить бд
да, вы правы, думаю не стоит на этом больше заострять внимание, всем спасибо!
Nick
да, вы правы, думаю не стоит на этом больше заострять внимание, всем спасибо!
Чтобы убедиться можете поиграться в эксплейном, но обращайте внимание что это нормально что выборки мегабайтовых джсон будут медленнее килобайтовых
Dmytro
Здравствуйте, кто знает как можно искать одновременно по двум таблицам, которые между собой не связаны? (Например у меня есть таблица постов от двух разных типов пользователей, по таблице на каждый тип, и мне надо искать по допустим заголовку этих постов, но они по прежнему в отдельных таблицах)
Dmytro
Эх, проект на sql уже не перепишешь