Показано с 1 по 7 из 7

Тема: pbzip2 вместо gzip в модуле резеврного копирования

  1. #1
    Senior Member
    Регистрация
    04.01.2009
    Адрес
    Banned
    Сообщений
    519

    По умолчанию pbzip2 вместо gzip в модуле резеврного копирования

    Не рассматривался ли данный вариант?
    Во-первых, это будет быстрее не современных многоядерных процессорах, во-вторых, лучше степень сжатия.

    Пример со стандартным блоком в 500 Кб на 4-х ядерном CPU:
    pv /dev/zero | gzip -c > /dev/null
    178MB/s

    pv /dev/zero | pbzip2 -c > /dev/null

    386MB/s

    С ненулями в процентном соотношении будет примерно так же.

  2. #2
    Senior Member
    Регистрация
    04.01.2009
    Адрес
    Banned
    Сообщений
    519

    По умолчанию

    Попробовал path gzip, и даже линканул в системе gzip на pbzip2, но панель всё равно жмёт в gzip.
    Там встроенный архиватор?

  3. #3

    По умолчанию

    Сжимается через библиотеку libz. pbzip2 - надстройка на libbz2, а сам библиотека не умеет параллельность.
    Последний раз редактировалось tuupic; 13.09.2016 в 09:58. Причина: очепятка

  4. #4
    Senior Member
    Регистрация
    04.01.2009
    Адрес
    Banned
    Сообщений
    519

    По умолчанию

    Ясно, а если зарегистрировать пожелание, чтобы модуль резервного копирования просто скармливал stdout pbzip'у на сжатие, или концепция уже устоялась?

  5. #5
    Сhief Developer Аватар для Greed
    Регистрация
    05.05.2005
    Сообщений
    952

    По умолчанию

    Чтобы получить возможность быстрого извлечения отдельных файлов из архива, мы разбиваем gzip поток (по сути, в бэкапе каждый файл зажат отдельно). Таким образом, мы всегда знаем его точное смещение относительно начала архива. Получить такую информацию используя внешнее приложение невозможно. Чтобы сохранить возможность извлечения отдельных файлов, нам придется запускать pbzip2 для каждого файла в архиве отдельно, что не увеличит, а скорее значительно снизит производительность.
    Я подумаю, возможно мы реализуем сжатие в несколько потоков в рамках isptar

  6. #6
    Сhief Developer Аватар для Greed
    Регистрация
    05.05.2005
    Сообщений
    952

    По умолчанию

    Попробовал сделать, померил производительность. На 40ка ядерном проце оверхед и правда небольшой (всего около 10%). На 4х ядерном - почти в два раза (делается быстрее в два раза, чем в один поток, но съедает все четыре проца). При этом имеем еще небольшой проигрыш в объеме (т.к. архив составляется из отдельных блоков).

    В общем, смысла особенного не вижу. В business может параллельно выполняться несколько бэкапов, что, в теории, позволяет нагрузить любой сервер (весь вопрос, сколько у вас нод с ролью mainweb на один с ролью backup). В Lite же, сожрав весь проц, вы сильно затормозите другие сервисы. Это не говоря уже о существенной нагрузке на диск.

  7. #7
    Senior Member
    Регистрация
    04.01.2009
    Адрес
    Banned
    Сообщений
    519

    По умолчанию

    Ясно, спасибо.
    А как включить параллельный бэкап юзеров? Сейчас бэкапятся по одному.

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •