 Max
    Max 
    
    
        
        
        
        может индексы не учитываются, но половина размера - индексы - тож странно
    
 
     Alex
    Alex 
    
    
        
        
        
        а local точно размер оплога показывает  ?
    
 
     Max
    Max 
    
    
        
        
        
        оплог хранится в local
    
 
     Alex
    Alex 
    
    
        
        
        
        я просто не совсем слесарь )
    
 
     Alex
    Alex 
    
    
        
        
        
        ок
    
 
     Max
    Max 
    
    
        
        
        
        да вот и я тоже :) пытаюсь углубиться
    
 
     Alex
    Alex 
    
    
        
        
        
        я думаю скорее это цифра реальная которая храниться
    
 
     Alex
    Alex 
    
    
        
        
        
        во всяком случае у меня показывает 32 Гб
    
 
     Alex
    Alex 
    
    
        
        
        
        тоже по идее должен быть 50Гб
    
 
     Max
    Max 
    
    
        
        
        
        WT использует сжатие, может быть оно как-то влияет.
        и show dbs кажет реальное место на диске, в то время как данных внутри - 50 гиг.
        
        ничего умнее пока придумать не могу.
        Может быть @dd_bb поделится своими мыслями?
    
 
     Alex
    Alex 
    
    
        
        
        
        на диске занято таки 55Гб
    
 
     Alex
    Alex 
    
    
        
        
        
        5Гб размер базы
    
 
     Max
    Max 
    
    
 
     Alex
    Alex 
    
    
        
        
        
        да
    
 
     Max
    Max 
    
    
        
        
        
        rs.printReplicationInfo()
        сделай плиз и покажи размер оплога
    
 
     Alex
    Alex 
    
    
        
        
        
        в личку
    
 
     yopp
    yopp 
    
    
        
        
        
        Чо
    
 
     Max
    Max 
    
    
 
     yopp
    yopp 
    
    
        
                    
                        
                            
                            в личку
                        
                    
                
        
        
        Нажми на rs.oplog.stats()
    
 
 
     Max
    Max 
    
    
        
        
        
        вопрос в том, почему show dbs показывает базу local в 25 гиг, в то время как размер оплога - 50 гиг?
    
 
     yopp
    yopp 
    
    
        
        
        
        Какую проблему вы пытаетесь решить вообще? WT по дефолту snappy использует. Хз насчёт оплога, но наверное тоже, почему нет. В stats всё напишут.
    
 
     Max
    Max 
    
    
        
        
        
        не совсем проблему решаю
        пытаюсь просветиться с помощью коллективного разума  :)
    
 
     yopp
    yopp 
    
    
        
        
        
        В show dbs; по-моему storage size показывается, а это сколько реально места в дисковом хранилище выделено (именно что выделено, а не используется, там же CoW, страницы могут быть использованы повторно)
    
 
     Max
    Max 
    
    
        
        
        
        про CoW - шикарная идея, спасибо
        я все-таки про сжатие думал.
    
 
     Max
    Max 
    
    
        
        
        
        надо почитать, на что capped на коллекцию работает
        реальные данные или дисковые данные.
        
        ушел читать.
        
        спасибо всем откликнувшимся!
    
 
     yopp
    yopp 
    
    
        
        
        
        Открой ты stats и там всё напишут.
    
 
     yopp
    yopp 
    
    
        
        
        
        Там есть и storage size и data size и три мешка метрик WT, включая free pages
    
 
     yopp
    yopp 
    
    
        
        
        
        Capped ограничивает data size, afair
    
 
     yopp
    yopp 
    
    
        
        
        
        Так что если настроено 50 гб, а реально занято 25 это значит что оно в два раза сжалось. Не факт что оно будет так всегда, этож оплог. Нальют слабо сжимаемых данных — отрастёт.
    
 
     Max
    Max 
    
    
        
        
        
        Спасибо!
        а про "открой stats" - это, простите за лоу вопрос, вкуда смотреть?
    
 
     yopp
    yopp 
    
    
        
        
        
        db.getCollection(name).stats()
    
 
     Max
    Max 
    
    
        
        
        
        Спасибо!
        направления ясно, ушёл ковырять
    
 
     yopp
    yopp 
    
    
        
        
        
        Или просто db.<name>.stats()
    
 
     yopp
    yopp 
    
    
        
        
        
        Но в оплоге точка, не выйдет так.
    
 
     Cap
    Cap 
    
    
        
        
        
        Мне нужна онлайн копия бд.(на случай отказа ssd) Можно это сделать через репликацию?
    
 
     Cap
    Cap 
    
    
        
        
        
        Пишу в primary оно пишется еще и в secondary правильно?
    
 
     Cap
    Cap 
    
    
        
        
        
        Через replica set
    
 
     Cap
    Cap 
    
    
        
        
        
        Делаю все по инструкции. 
        Главный (первый) сервер стал primary
        Присоединил второй пустой. 
        Теперь первый стал secondary а второй startup. 
        Что делать?
    
 
     Dmitry
    Dmitry 
    
    
        
        
        
        Приоритеты ?
    
 
     yopp
    yopp 
    
    
 
     yopp
    yopp 
    
    
        
        
        
        Т.е. ноды не могут решить кто главный.
    
 
     Nick
    Nick 
    
    
        
        
        
        там гдето был пунктик про нечетное число нод в репликасете
    
 
     Cap
    Cap 
    
    
        
        
        
        разобрался заработало
        
        но как только включаю authorization: enabled
        
        то реплики не могут авторизоваться
    
 
     Cap
    Cap 
    
    
        
        
        
        нужно делать Internal Authentication ?
        через keyFile:
        ?
    
 
     yopp
    yopp 
    
    
        
        
        
        Внимательно прочитай весь раздел по аутентификации в документации. Там очень подробно написано.
    
 
     Petro
    Petro 
    
    
        
        
        
        Ребята, есть массив root, это массив объектов, мне нужно найти позицию объекта в массиве у которого _id="12345"
    
 
     CC-BY-SA-4.0/Docker-ce30.0
    CC-BY-SA-4.0/Docker-ce30.0 
    
    
        
        
        
        Ок
    
 
     Nick
    Nick 
    
    
        
        
        
        @dd_bb подскажи по такой ситуации:
        создаю шард коллекцию, создаю индексы, заливаю в коллекцию доки около 500 тыщ, по  collname.stats() размер индексов условно 50Мб. Т.к. коллекция тестовая делаю ребилд индексов и получаю условно 20Мб.
        Собственно вопрос, а можнга сама умеет как-то сжимать индексы если все становится плохо? Ну например я залью не 500к а 500 мультов. Хочется понять какой размер индексов меня ожидает и сколько оперативы нужно
    
 
     Nick
    Nick 
    
    
        
        
        
        Собственно считай сам ответил про делает она сама чтонить или нет:
        Normally, MongoDB compacts indexes during routine updates.
        Вопрос только про эффект от автоматического сжатия будет сопоставим с ребилдом в плане используемого еста?
    
 
     yopp
    yopp 
    
    
 
     yopp
    yopp 
    
    
        
        
        
        т.е. если у тебя 500к документов и 20Мб это 20*1024*1024/500000 = 42 байта
    
 
     Nick
    Nick 
    
    
        
        
        
        собственно так и думал делать, но вот это изменение в размере после реиндексации немного сбило с толку
    
 
     yopp
    yopp 
    
    
        
        
        
        лучше считать по верхней границе
    
 
     Nick
    Nick 
    
    
        
        
        
        просто считать по плохому сценарию где было 50М или уже после компакта
    
 
     yopp
    yopp 
    
    
        
        
        
        по плохому, да
    
 
     yopp
    yopp 
    
    
        
        
        
        better be safe than sorry
    
 
     Nick
    Nick 
    
    
        
        
        
        ну да здравый смысл он такой)
    
 
     Nick
    Nick 
    
    
        
        
        
        еще я там где вычитал что монга могет редкоиспользуемые части индекса убирать из памяти и работать с тем что осталось. это в реальности работает?
    
 
     yopp
    yopp 
    
    
        
        
        
        я рекомендую не воспринимать рекомендации монги слишком буквально
    
 
     yopp
    yopp 
    
    
        
        
        
        там есть ряд рекомендаций которые являются, скажем так, скорее обязательными, а ряд, которые являются решением проблем, которые могут и не возникнуть
    
 
     yopp
    yopp 
    
    
        
        
        
        короч, не стоит заниматься предварительной оптимизацией
    
 
     yopp
    yopp 
    
    
 
     yopp
    yopp 
    
    
        
        
        
        т.е просто через find не получится
    
 
     yopp
    yopp 
    
    
        
        
        
        Если это нужно для обновления, то есть $: https://docs.mongodb.com/manual/reference/operator/update/positional/
    
 
     Vyacheslav
    Vyacheslav 
    
    
        
        
        
        Здравствуйте! Есть такой вопрос
        Имеется MongoDB 3.0.7, в ней имеется бд размером 10 ГБ, одна коллекция весит 6.5 ГБ (bson)
        Соответственно, запросы идут медленно к данной базе
        Можете подсказать, в какую сторону можно оптимизировать
        Я так понимаю, нужно смотреть в сторону GridFS, но не пойму, как преобразовать обычный bson 6.5 ГБ в gridFS
    
 
     yopp
    yopp 
    
    
        
        
        
        Привет. Нет, не нужно смотреть в gridfs. Это решение для хранение файлов в монге. В любом случае оно в самой монге будет храниться как bson.
        
        Нужно изучить запросы (см explain) и создать поддерживающие индексы.
    
 
     Vyacheslav
    Vyacheslav 
    
    
        
        
        
        понял, спасибо
        а можете подсказать по поводу оперативки, диска, сколько его нужно для нормальной работы с коллекциями такого размера
        сейчас на сервер 5 ГБ оперативы при размере бд 10 ГБ
        и еще вопрос по поводу engine - стоит ли смотреть в сторону WiredTiger или MMAP тоже норм?
    
 
     yopp
    yopp 
    
    
        
        
        
        Даже нужно смотреть в сторону wiredtiger. Смотреть надо на размер индексов
    
 
     yopp
    yopp 
    
    
        
        
        
        Памяти должно хватать на индексы + часто используемые данные
    
 
     Vyacheslav
    Vyacheslav 
    
    
        
        
        
        ну и по поводу миграции на новые версии, есть ли у кого опыт
        насколько я понимаю нужно мигрироваться 3.0 -> 3.2 -> 3.4
        есть ли какие-то подводные камни?
    
 
     yopp
    yopp 
    
    
        
        
        
        Можно сделать дамп и обновиться сразу до 3.4
    
 
     yopp
    yopp 
    
    
        
        
        
        Залив его в 3.4 в смысле
    
 
     Vyacheslav
    Vyacheslav 
    
    
        
        
        
        ок, понял
        а есть несовместимости в bson-формате между вервиями?
    
 
     Vyacheslav
    Vyacheslav 
    
    
        
        
        
        или впринципе не должны быть
    
 
     yopp
    yopp 
    
    
        
        
        
        Скажем что нет. Bson отдельный стандарт, последнее что там появилось — decimal128
    
 
     yopp
    yopp 
    
    
        
        
        
        Это кажется в районе 3.4 и случилось. Или 3.2
    
 
     Vyacheslav
    Vyacheslav 
    
    
        
        
        
        ок, понял, спасибо
    
 
     Cap
    Cap 
    
    
        
        
        
        А что за колекции по 6гб, что там?
    
 
     Cap
    Cap 
    
    
        
        
        
        Зависит от того что это за данные, по ним нужно искать? или можно сохранить как большой бинарный кусок
    
 
     Vyacheslav
    Vyacheslav 
    
    
        
        
        
        5 млн записей, нужна пагинация с фильтрами