Olexandr
не подскажете как с помощью GridFsStorage записывать данные именно в тип данных avatar? знаю что сумбурно написано😅
Serg
2021-01-21T03:00:49.078+0300 I COMMAND [ftdc] serverStatus was very slow: { after basic: 24, after asserts: 24, after connections: 204, after electionMetrics: 540, after extra_info: 540, after flowControl: 540, after globalLock: 671, a
fter locks: 695, after logicalSessionRecordCache: 697, after network: 990, after opLatencies: 990, after opReadConcernCounters: 990, after opcounters: 990, after opcountersRepl: 990, after oplogTruncation: 990, after repl: 990, after sec
urity: 990, after storageEngine: 990, after tcmalloc: 990, after trafficRecording: 990, after transactions: 990, after transportSecurity: 990, after twoPhaseCommitCoordinator: 990, after wiredTiger: 998, at end: 1668 }
Serg
на secondary ноде в логе посыпало такое и пришел oom killer
Serg
нагрузки особо не было есть идеи куда посмотреть ?
Artem
Как во вложенном документе монги указать поле "type" ?
Монгус считывает его как тип объекта
Дмитрий
Если вы про тс то там дженерики
Николай
Всем привет, можете подсказать, пожалуйста такой вопрос. Я хочу сделать для себя сайт по книгам, я создал коллекцию с жанрами (Id, name). Хочу в документ с книгой добавлять массив жанров, каким образом описать его? Какие типы? Что хранить? (Только id или полный объект) Как потом получать сджоиненные значения? (Работал только с mysql и postgres, впервые с mongodb работаю)
Artem
Дмитрий
Artem
Тогда вопрос не оч понял)
new mongoose.Schema({
field: {
subfield: Number,
type: String
}
})
Я хочу чтоб тут было поле field.type и чтоб оно было строковым. А монгус это воспринимает так, буд-то я хочу задать тип String для field
Дмитрий
Дмитрий
Николай
Да
А как получить при выборке полный объект?
Дмитрий
$lookup
Дмитрий
Погуглите, несложно
Николай
Это да, ща погуглю, спасибо. Нужно ли в схеме описывать, что это ссылки или что-то типо того?
Дмитрий
Если ссылка будет не массивом, то погуглите ещё и $unwind
Дмитрий
Да, там есть тип ref
Дмитрий
https://mongoosejs.com/docs/populate.html
Николай
Да, там есть тип ref
А, ну тогда все нужное сделал уже) Спасибо) Попробую разобраться с lookup
Дмитрий
Ну и да, можно populate =)
Дмитрий
Лукап может и не пригодится
Николай
Чет не сразу понял, как с этим работать, подумал не оно. Спасибо попробую углубиться
Serg
soft memlock
hard memlock
не помогают
yopp
yopp
монга в контейнере?
yopp
если монга правильно видит объём оперативной памяти, то за ней oom приходить не должен
yopp
если кроме монги ничего нет, ищите что является триггером для oom
Viktar
Dmytro
а куда логи монгуза пишуться?
Artem
Dmytro
output path
Artem
Artem
юзай mongoose.set('debug', func) и в func сохраняй
ну или попроще — node app.js 1>/some/path/app.log 2>&1 &
yopp
Dmytro
yopp
Без точных условий это сравнение не имеет никакого смысла
yopp
200 млн документов в монге и 200 млн документов в пг это два абсолютно разных 200 млн документов
Viktar
Согласен
Nick
Viktar
yopp
yopp
https://www.mongodb.com/blog/post/building-with-patterns-the-extended-reference-pattern
https://www.mongodb.com/blog/post/building-with-patterns-the-subset-pattern
Николай
Viktar
Может кто сталкивался с дедублицированием записей в монге? Имеется несколько цсв с данными, надо их дедублицировать при загрузке
Nick
Nick
ну и конкретно с csv можно просто
sort file.csv | uniq > file_uniq.csv
Nick
и потом хедер найти и на место запихать
Viktar
Мне нравится. Спасибо
Nick
тока над понимать что это от полного дубликата
WolderVsrat
Люди и адреса. Две разных коллекции
Даже в специфичной вертике так редко джойнят. Обычно для этих целей с такими объемами создаётся отдельная материализованные таблица, куда данные джобами/триггерами заливаются/обновляются инкрементально.
Так скорость доступа до данных гораздо лучше, хоть и требуется больше места
WolderVsrat
В принципе, тот же подход рекомендуется и в доке монги - мапредюс или аут/мерж в пайплайне
Viktar
Viktar
Nick
отлично
Nick
а точно там ж -u есть
Andrey
Здравствуйте, помогите подобрать правильное решение: Есть база которая дампится и разворачивается на другой машине. В изначальную и новую базу добавляются новые данные, через какое-то время нужно новые данные с первой базы добавить во вторую только так бы те данные которые были добавлены за этот период во вторую базу остались. Как лучше это реализовать? Обычный import как-то долго работает. Заранее спасибо!
yopp
Андрей
Привет. Ребят, юзал кто-нибудь odbc конекторы для подключений с использованием unixodbc?
Ни https://docs.mongodb.com/bi-connector/master/reference/odbc-driver не работает ни даже платный от devart.
Первый при подключении не передает никаких команд в базу, хотя подключение поднимает и тупо держит, а второй даже не подключается.
yopp
Andrey
Понял, благодарю за информацию.
Anvar
Привет коллеги! Стек: aws lambda (NodeJS + mongoose) -> aws ec2 -> mongodb.
В логах постоянно:
"Error sending response to client. Ending connection from remote","attr":{"error":{"code":6,"codeName":"HostUnreachable","errmsg":"Connection reset by peer"}.
При этом лямбды нормально возвращают результат. Подскажите пожалуйста, кто сталкивался, куда смотреть?
...
Всем привет, а монго есть что-то для подсчета данных снизу вверх?
...
грубо мне нужно собрать сумму значений записи на основе его потомков
Vladislav
https://yatsapp.herokuapp.com/login здрастуйте создал сайт и развернул на heroku подскажите какие недостатки? Что стоит убрать и поменять
Vadim
Создаешь профиль, потом хочешь его обновить и загрузка постоянная проходит, без возможности редактировать + подтверждение почты сделать хорошо бы
Vadim
Vadim
Сергей
Господа, подскажите как проектировать схему в данном случае:
Есть склад, есть товары.
Экземпляр товара может находится на разных складах на разных полках.
Если у меня есть реляционная модель, из-за связи many-to-many я делаю join table, в котором дополнительно к двум foreign key'ям, указывающим на склад и на товар соответственно, я добавляю информацию о номере полки на котором он лежит.
Здесь как я понял many-to-many это документы с двусторонними array'ями reference'ов. И никаких тут join collection никто не использует.
Вопрос куда затолкать мне расположение в складу?
Сергей
Пытался вот что-то изобразить, но число pipeline'ов с lookup'ами, которые надо сделать наталкивают на мысль, что тут так дела не делаются
Artem
$or: [
{ a: 1 },
{ a: 10 }
]
или
a: {
$in: [1, 10]
}
?