Какой лучший алгоритм сжатия для дампов данных

#python #algorithm #compression #data-dump

#питон #алгоритм #сжатие #дамп данных

Вопрос:

Я создаю дампы данных со своего сайта, чтобы другие могли их загружать и анализировать. Каждый дамп будет представлять собой гигантский XML-файл.

Я пытаюсь определить наилучший алгоритм сжатия, который:

  • Эффективно сжимается (с точки зрения процессора)
  • Создает минимально возможный файл
  • Является довольно распространенным

Я знаю основы сжатия, но понятия не имею, какой алгоритм подходит по всем параметрам. Я буду использовать MySQL и Python для создания дампа, поэтому мне понадобится что-нибудь с хорошей библиотекой python.

Комментарии:

1. CPU-wise и smallest possible file , я думаю, являются взаимоисключающими.

Ответ №1:

GZIP со стандартным уровнем сжатия должен подойти для большинства случаев. Более высокие уровни сжатия = больше процессорного времени. BZ2 упаковывается лучше, но также медленнее. Ну, всегда есть компромисс между потреблением процессора / временем выполнения и эффективностью сжатия…все сжатия с уровнями сжатия по умолчанию должны быть в порядке.

Комментарии:

1. 1 Для больших текстовых файлов, где важна скорость, просто используйте gzip с максимальной настройкой.

2. В итоге я использовал это. Погружение Марка Пилигрима в Python 3.0 также дает отличные инструкции для этого, что всегда удобно.