OpenZL: An open source format-aware compression framework 🔥 Горячее
OpenZL — это новый фреймворк для сжатия структурированных данных с открытым исходным кодом, разработанный Meta. Он обеспечивает сжатие без потерь, достигая производительности специализированных компрессоров, но при этом использует единый универсальный декомпрессор. Ключевая идея в том, что данные имеют предсказуемую структуру — колоночную, перечисления, повторяющиеся поля — и OpenZL явно использует это знание, применяя конфигурируемую последовательность преобразований для выявления скрытых закономерностей.
Фреймворк устраняет компромисс между эффективностью формато-специфичных решений и простотой поддержки общего инструмента. В отличие от универсальных методов, которые тратят ресурсы на угадывание структуры, OpenZL заранее знает тип данных и фокусируется только на релевантных трансформациях. Это позволяет экономить вычислительные циклы и улучшать соотношение скорости к степени сжатия. Практический вывод: один бинарный инструмент может заменить множество кастомных компрессоров без потери производительности.
Комментарии (84)
- OpenZL использует SDDL для описания структуры данных, что позволяет применять специализированные методы сжатия, значительно улучшая компрессию по сравнению с общими алгоритмами (zstd, xz).
- Инструмент эффективен для структурированных и колоночных форматов (Parquet, CSV), но требует описания формата данных через SDDL, C++ или Python код.
- Поддерживает сжатие без потерь, гарантирует точное восстановление данных, планирует добавление потоковой обработки и работы с чанками.
- Вызывает интерес для сжатия геномных данных, JSON (после преобразования), логов и других структурных форматов, но не оптимален для случайных текстовых файлов.
- Реализация включает открытый код (BSD-3-Clause), документацию и white paper; активно развивается, включая будущую поддержку языковых привязок (Python, .NET).
OCI Registry Explorer
Registry Explorer — интерактивный просмотрщик образов и репозиториев.
Введите публичный образ (ubuntu:latest) или реп (ubuntu), листайте слои и файлы без скачивания.
Примеры
cgr.dev/chainguard/static:latest-glibcgcr.io/distroless/staticghcr.io/homebrew/core/craneregistry.k8s.ioи др.
Как работает
Сервис на Cloud Run, движок — google/go-containerregistry.
Первый запрос к слою качает и индексирует его; дальше читаем по Range-запросам.
Трафик регистри уменьшается: скачивайте один раз и шлите ссылку.
Docker Hub предоставляет безлимитный доступ.
Случайный доступ к gzip
Храним ~1 % распакованных данных; по ним строим «точки входа» в поток и читаем без распаковки всего слоя.
Код: github.com/jonjohnsonjr/dagdotdev
Комментарии (7)
- @jonjonsonjr: это его pet-проект для отладки образов; часть фич спрятана как пасхалки.
- @mshekow: инструмент oci.dag.dev — лучший браузер регистри, можно развернуть самому (Go-CLI).
- @gucci-on-fleek: поддерживает zstd, cosign-подписи, показывает размер каждого файла и ссылки на Sigstore.
- @glitchcrab: использует регулярно, быстрее чем crane.
- @lclc: сервер не выдержал наплыва посетителей с HN — «Rate exceeded».