yopp
Но когда у тебя кластер в террабайт особо не на бекапишься.
yopp
На zfs можно посадить, да. Но это надо zfs, а он не всегда и везде есть. В ZoL например недавно баг с попорченными снепшотами всплыл
yopp
btrfs страшно
yopp
А больше вариантов особо и нет.
yopp
Так что хочется на уровне приложения это делать
Roman
Кстати, в линуксе есть совершенно крутая штука: reflink
yopp
Это хорошо когда его можно взять.
yopp
Потом например на vmware при создании снепшота монга портит данные
yopp
На mmap ещё куда ни шло, а на WT нода требует полного ре-синка
yopp
ну тыж сам тут советуешь fs-level снепшоты :)
yopp
вот тебе пример, когда оно не рабоает от слова совершено
yopp
есть старая инсталяция монги, которую очень давно развернули на vCenter
yopp
там полный набор, сетевой сторадж, автоматическая миграция и вот это всё
yopp
куда ты её собрался переносить?
yopp
мне год потребовалось чтоб утвердить обновление с 2.4 до 3.0 :)
yopp
там всё по регламентам
yopp
какое в жопу версионирование в монге
yopp
ты о чём
yopp
это идиотизм
yopp
и это не решает задачу инкрементальных бекапов
yopp
дай мне исходники приложения сначла
yopp
и потом по регламенту утверди внесение таких изменений
yopp
ты понимаешь что не всё можно на уровне приложения бекапить?
yopp
например я посмотрю как ты забекапишь атомарный inc
yopp
я тебе в целом
yopp
потом у монги уже есть лог операция
yopp
oplog
yopp
yopp
и я про него. вот собственно вопрос есть ли готовые решения которые умеют сохранять и проигрывать oplog, кроме MongoDB Cloud Backup Manager
yopp
в облако нельзя
yopp
я посмотрю как ты аналитику на оптимистичных транзакциях сделаешь :)
yopp
и как оно будет потом работать
yopp
когда у тебя два клиента пишет сто записей в час, наверное да
yopp
когда у тебя несколько десятков могут обновлять одну запись несколько сотен раз в минуту, это уже другое :)
yopp
map/reduce в монге на sharded кластере, хахахаха
yopp
удачи
yopp
ой, вот давай мы пропустим про нельзя, когда ты даже не видел приложения? и судишь по одной фразе, окей? :)
yopp
теперь возьми сделай map/reduce с output на шардед кластере
yopp
и сделай их несколько десятков параллельных
yopp
и мы после этого поговорим
yopp
в коллекцию
yopp
там в приложении пре-аггрегация
yopp
клиенты пишут в жирную коллекцию с событиями
yopp
батчами
yopp
и потом батч отправляется в map/reduce и раскладывается про «разрешениям»
yopp
ничо что output создаёт новую коллекцию временную, а создание новой коллекции локает шард? :)
yopp
и ваще, монговцы сами нам открытым текстом сказали что нехуй использовать map/reduce, валите на aggregation framework
yopp
правда они молодцы и AF не умеет output без замены коллекции
yopp
у нас не очень выходит делать re/reduce там на каждем шаге надо брать старый источник
yopp
в смысле читать из коллекции
yopp
потому что данные могут приезжать в разнабой
yopp
да, на sharded
yopp
в простом реплика-сете всё нормально
yopp
да не выйдет, яж говорю
yopp
в батче могут быть данные за любое время вообще
yopp
а для того чтоб обновить временной интервал, надо прочитать все записи которые в него попадают
yopp
так как там относительно сложна математика по аггрегациям
Roman
А расскажи про это
ghett
ох и нафлудили, что то решили хоть или так?
Aleksey
господа, посоветуйте чем лучше бекапить базу по 3/4 тера ?
Alex
мы бэкапим снапшотом zfs. Правда, приходится останавливать монгу на минутку
Alex
но других вариантов особо нет
Aleksey
но слейв остановить дешево, правильно ?
Alex
у нас нет слейва. Если есть - то да, вообще красота
Alex
т.е у нас сценарий такой: стопаем монгодб (только осторожно - надо тщательно следить, что она остановилась, инит скрипты там глючные были в 2.7), снапшотим раздел с базами, запускаем монгодб, утягиваем снапшот в бакулу
Aleksey
объем большой ?
Sergey
Если есть хидден реплика - достаточно сделать fsynclock и cp/rsync
Aleksey
нет хидден нету
Sergey
А зачем при снапшоте останавливать базу?
yopp
до 3.2 fsynclock ничего не гарантирует на самом деле
Sergey
в 3.2
Это если wt
Aleksey
у меня wt
yopp
да, а зачем mmap вобще
Aleksey
и 3.2
yopp
он не нужен
yopp
А зачем при снапшоте останавливать базу?
потому что тебе никто не гарантирует что у тебя роллбека не будет
yopp
если монгу штатно потушить, она положит всё на диск и шанс что у тебя там чекпоинт какой-то не доехал или с журналом говно практически нулевой
yopp
но с 3.2 и wt можно и без этого, да
Sergey
Ну тушить базу на проде - это прям какой-то нонсенс.