pied piper

Сжатие данных без потерь
Большим файлам пора стать меньше

БОЛЬШИЕ ИДЕИ. МАЛЕНЬКИЕ ФАЙЛЫ.

PIED PIPER / ИССЛЕДОВАНИЕ СЖАТИЯ

ДОБРО ПОЖАЛОВАТЬ В МИР МАЛЕНЬКИХ ФАЙЛОВ.

Что такое Pied Piper?

Большие идеи не должны упираться в размер файла. Мы создаём более компактный способ хранить данные — с вниманием к каждой строке и каждому байту. Начали с системных логов. Дальше — больше.

33,8%

меньше размер архива

На образце HealthApp относительно
лучшего из проверенных режимов.

5 / 6

образцов с выигрышем

В сравнении с выбранными режимами
gzip, XZ и Zstandard.

6 / 6

точных восстановлений

Распакованные файлы совпали
с оригиналами байт в байт.

Первые измерения · 20 октября 2026 · небольшие образцы по 2 000 строк

МЕНЬШЕ ПОВТОРЕНИЙ. БОЛЬШЕ ПОРЯДКА.

У каждой строки есть история.
Мы сохраняем её короче.

Текст повторяется. Числа меняются. Если хранить их отдельно, привычный компрессор может увидеть больше закономерностей.

01

Находим общее

Отделяем повторяющийся текст от числовых полей. Вместо одинаковых фрагментов сохраняем один шаблон.

02

Кодируем изменения

Группируем числа по полям и выбираем компактную запись: сами значения или разности между ними.

03

Сохраняем всё

Применяем XZ и записываем данные для точной распаковки — вплоть до ведущих нулей и переносов строк.

ПРОСТОЙ ПРИМЕР

Одно сообщение.
Много повторений.

Переключите представление, чтобы увидеть идею разделения текста и значений.

Упрощённая иллюстрация принципа, а не содержимое настоящего архива.

10:00:01 INFO request=1001 status=200
10:00:02 INFO request=1002 status=200
10:00:03 INFO request=1003 status=200
10:00:04 INFO request=1004 status=200
Повторяется текст, меняются только время и номер запроса.

МЕНЬШЕ ОБЕЩАНИЙ. БОЛЬШЕ ИЗМЕРЕНИЙ.

Пусть говорят байты.

Шесть реальных образцов из Loghub.
Все служебные данные включены в размер архивов.

HealthApp

2 000 строк · 187 456 байт до сжатия

Размер архива, байт · меньше — лучше

Сравниваем gzip 9, XZ 9 и Zstandard 3 / 19 / 22. В нашем прототипе последняя ступень — XZ 9. Время измерено однократно.

Все результаты эксперимента
Размеры полных архивов. В колонке «Лучший режим» — минимум среди пяти проверенных настроек других компрессоров.
ОбразецЛучший режимЕго архив, байтPied Piper, байтРазница
ApacheZstandard 197 1615 208−27,3%
HDFSXZ 942 76832 760−23,4%
LinuxZstandard 19 / 2211 32611 576+2,2%
OpenSSHZstandard 19 / 2210 8549 204−15,2%
HealthAppXZ 913 3048 812−33,8%
ZookeeperZstandard 2216 55415 280−7,7%

ЭКСПЕРИМЕНТ № 001

Хорошая идея
начинается
с проверки.

Скачать результаты в JSON

Мы в начале пути. Первый прототип показывает, что знание структуры логов может помочь сжатию. Следующий шаг — проверить, насколько устойчив этот результат.

Данные
6 образцов Loghub по 2 000 строк. Три первых и три дополнительных набора.
Проверка
Побайтовое сравнение каждого восстановленного файла с оригиналом и 14 проверок на крайних случаях.
Ограничения
На Linux наш архив оказался больше. Python-прототип медленнее при распаковке. Потребление памяти пока не измерено.
Далее
Полные файлы, независимые источники и сравнение со специализированными компрессорами логов.

Используем известные принципы и исследуем их сочетания. Научная новизна метода пока не установлена. Источники: Loghub ↗, LogReducer ↗, LogShrink ↗.

БОЛЬШИЕ ИДЕИ НАЧИНАЮТСЯ С МАЛЕНЬКОЙ КОМАНДЫ.

Кто мы

Антон Сидоров, основатель Pied Piper

Антон Сидоров

Основатель и генеральный директор

ВДОХНОВЛЕНО ИСТОРИЕЙ. ПОСТРОЕНО НА ДАННЫХ.

Всё начинается с маленького.

С одной идеи. С первого алгоритма.
С нескольких байтов, которые удалось сохранить.

Наш первый эксперимент