yopp
Он вам скорее всего не нужен
tsar
мне нужно много писать в бд
Nick
кстати да здравая мысль)
yopp
tsar
не по одной записи
yopp
У вас записи по 20 байт?
yopp
BulkWrite это метод группировки вставляемых документов для передачи их по сети в одном логическом пакете. В самой монге это всё равно множество insert
Nick
а вы прям булк генерите?
yopp
Обработка ошибок в случае проблем со вставкой с Bulk операциями — ад
yopp
Вы собственно в этот ад и наступили.
yopp
Выбросьте BulkWrite и вставляйте обычным insert
tsar
у меня там по 20 записей каждую секнду
yopp
Если у вас монга не а китае с огромными задержками, разницы практически не будет
tsar
монга и скрипт на одном сервере
yopp
tsar
я боюсь что она выжрет мне всю память
yopp
BulkWrite требует больше памяти чем отдельные вставки
tsar
нашел проблему(
tsar
insert: key too large to index, failing
yopp
Монге ещё ваш пакет с документами буфферизовать надо
tsar
tsar
ой сори
tsar
не так кинул
tsar
http://prntscr.com/nm2f3c
tsar
еще утром использувалось 1гб
tsar
сейчас уже 6
tsar
это нормально?
Alexander
Монга выжирает всю память, которую найдёт. Это норма.
Den
Поэтому я импользую сторонний ресурс. Лучше отдельную машину для этого выделить.
tsar
подскажи какой норм?
Alexander
А вот булки мне местами ускорили скорость вставки небольших документов на треть. Правда очень давно мерял и с тех пор монга изменилась чуток...
tsar
я поправил булки работают
tsar
ускоряет в разы
Den
mlab.com - до 500 Мб бесплатно.
Если надоест - свой виртуальный хостинг.
tsar
а нельзя зарезервировать память для монго? чтобы не юзало все
Alexander
Лимиты в k8s?
tsar
а причем k8s?
Alexander
Кубы позволяют ограничить ресурсы контейнеров.
Alexander
В т.ч. и память.
Alexander
Можно просто средствами докера это сделать.
tsar
понял, спасибо
tsar
я думал что в конфиге помжно указать просто скок можно юзать
tsar
tsar
на таком сайте png вместо svg((
Nan0
Serhii
Slash in host identifier - err, не могу приконнектится к базе на проде, сделал encodeURIComponent для пароля, но все так же, кто подскажет в чем беда?
Ruslan
Привет! Может кто сталкивался: как в aggregate убрать объект если он пустой?
Ruslan
Нашёл решение, если кому будет интересно:
{
model:
{
$cond: {
if: { $eq: [ "$model", {} ] },
then: "$$REMOVE",
else: "$model"
}
}
}
Ruslan
Ещё вопрос, как в aggregate сгенерировать ObjectId, может кто знает?
Ruslan
Спасибо! А hex случайный, как то можно сгенерировать, или перевести например текущую дату в hex ?
yopp
По-моему нет
Stas
Mongoose
Подскажите, как лучше всего значение в бд поменять на противоположное? Если было true то обновить на false и наоборот
Nick
апдейтом
Nick
но если вы используете монгус, то используйте его
Nick
а вы не можете сразу выбрать объект с таким свойством?
Nick
зачем првоерят ьв коде если критерий уже ест ьи его можно указать в фильтре
Nick
если вы работает с конкретным документом и он используется дальше после сохранения, то через поиск-изменение-сохранение. Если операция разовая и дальше объект не нужен, или нужно много объектов изменить, то сделайте обычный апдейт
Stas
Хорошо, спасибо за подсказку
🤴👷♂️🦸♂️🧚♀️
Привет, извиняюсь если не по теме. Есть приложение, которое должно отдавать данные двух форматов - изображение + данные связанные с изображением. МонгоДБ с этим справиться или стоит смотреть в сторону каких-то облачных бд и стоит ли хранить эти данные отдельно, если по сути они связаны между собой?
Задачка стоит настроить pub/sub поведение между приложениями с прослойкой в виде БД. Поясните как лучше такое реализовать.
Масштаб данных ~ 1000 изображений в день
The first
Изображения всегда лучше хранить отдельно в файловой системе, а в бд хранить путь к ним
The first
🤴👷♂️🦸♂️🧚♀️
Dima
Всем привет! я новичек в работе с mongodb, у меня есть большая база данных и я ее хочу востановить из копии, но так вышло, что копия было создана полным копированием папки data, где лежали все коллекции, индексы и прочее, а не с помошью mongodump. Соответственно вопрос такой, будет ли такое работать(вставив старую папочку обратно) или бекап потерян?
Anonymous
не знаю, какой конкретно у тебя кейс, но у меня такое сработало на 3.6
Dima
Anonymous
Кроме перезапуска монги, кажется, ничего существенного не делал
Dima
redwhite
Добрый! Есть вопрос. Используем AWS-скую documentdb, после одного из билдов любой запрос, внезапно, начал отдавать "Last error: Not authorized to execute command", без каких либо значимых изменений в коде. Приложуха на go, используем официальный mongo-go-driver, все завернуты в докер. Откат на предыдущие ревизии не помог. Причем не работает даже ping монги. Локально для разработки используем саму монгу, и все ок, все тесты проходят все дела. Есть еще пару сервисов которые подобные, там все работает как часы, правда они не обновлялись и не ребутались, т.к. есть подозрение, что они тоже могут перестать уметь в коннект. В ошибке, как видно, не указано ни базы, ни какая-то команда. Из консоли с теми же кредами все ок. Причем не работает как и на мастер юзере, так и на обычном юзере созданом без root роли, но с ролями dbWriteReadAllDatabases. Как думаете, issue скорее с documentdb? И что можно посмотреть в конфигах/логах чтоб как-то прояснить?
yopp
Добрый! Есть вопрос. Используем AWS-скую documentdb, после одного из билдов любой запрос, внезапно, начал отдавать "Last error: Not authorized to execute command", без каких либо значимых изменений в коде. Приложуха на go, используем официальный mongo-go-driver, все завернуты в докер. Откат на предыдущие ревизии не помог. Причем не работает даже ping монги. Локально для разработки используем саму монгу, и все ок, все тесты проходят все дела. Есть еще пару сервисов которые подобные, там все работает как часы, правда они не обновлялись и не ребутались, т.к. есть подозрение, что они тоже могут перестать уметь в коннект. В ошибке, как видно, не указано ни базы, ни какая-то команда. Из консоли с теми же кредами все ок. Причем не работает как и на мастер юзере, так и на обычном юзере созданом без root роли, но с ролями dbWriteReadAllDatabases. Как думаете, issue скорее с documentdb? И что можно посмотреть в конфигах/логах чтоб как-то прояснить?
Вопрос к AWS. Вы используете сторонее решение, которое не поддерживает большинство фич монги, которое сломалось. Готовьтесь к тому, что AWS на вас забьет или предложит купить план для поддержки.
Вы зря в documentdb вписываетесь через монговское API, вам это гарантированно выйдет боком.
yopp
🤴👷♂️🦸♂️🧚♀️
yopp
🤴👷♂️🦸♂️🧚♀️
Почему?
Говорят, что не выгодно
Dmitriy
Говорят, что не выгодно
правильно говорят, тарифный план клоудфларе в среднем выйдет дешевле чем место под базу + будет работать быстрее :) а в базу только ссылки
yopp
yopp
время разработчика тоже не бесплатное
yopp
абстрактную задачу в вакууме невозможно оценить