Metadata-Version: 2.4
Name: permafrost-framework
Version: 0.6.0
Summary: Distributed intelligent compression for long-term data archival
Author: Permafrost Contributors
License-Expression: Apache-2.0
Project-URL: Homepage, https://github.com/caua-ferreira/permafrost-framework
Project-URL: Repository, https://github.com/caua-ferreira/permafrost-framework
Keywords: compression,archival,lzma,cold-storage,permafrost,duckdb,distributed
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: System :: Archiving :: Compression
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=1.24.0
Requires-Dist: pandas>=2.0.0
Requires-Dist: pyarrow>=12.0.0
Requires-Dist: zstandard>=0.21.0
Requires-Dist: duckdb>=0.9.0
Requires-Dist: typer>=0.9.0
Requires-Dist: rich>=13.0.0
Requires-Dist: fastapi>=0.100.0
Requires-Dist: uvicorn>=0.23.0
Requires-Dist: httpx>=0.24.0
Provides-Extra: s3
Requires-Dist: boto3>=1.26.0; extra == "s3"
Provides-Extra: gcs
Requires-Dist: google-cloud-storage>=2.10.0; extra == "gcs"
Provides-Extra: azure
Requires-Dist: azure-storage-blob>=12.17.0; extra == "azure"
Provides-Extra: all-cloud
Requires-Dist: boto3>=1.26.0; extra == "all-cloud"
Requires-Dist: google-cloud-storage>=2.10.0; extra == "all-cloud"
Requires-Dist: azure-storage-blob>=12.17.0; extra == "all-cloud"
Provides-Extra: spark
Requires-Dist: pyspark>=4.0; extra == "spark"
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == "dev"
Requires-Dist: pytest-cov; extra == "dev"
Requires-Dist: build; extra == "dev"
Requires-Dist: twine; extra == "dev"
Requires-Dist: pyspark>=4.0; extra == "dev"
Dynamic: license-file

# ❄️ Permafrost Data Framework

<div align="center">

[![PyPI version](https://badge.fury.io/py/permafrost-framework.svg)](https://pypi.org/project/permafrost-framework/)
[![Tests](https://github.com/caua-ferreira/permafrost-framework/actions/workflows/tests.yml/badge.svg)](https://github.com/caua-ferreira/permafrost-framework/actions)
[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](LICENSE)
[![Python](https://img.shields.io/badge/python-3.10%2B-yellow)](https://pypi.org/project/permafrost-framework/)
[![Docs](https://img.shields.io/badge/docs-mkdocs-00D4FF)](https://caua-ferreira.github.io/permafrost-framework)

**Plataforma distribuída de compressão inteligente para arquivamento digital de longo prazo.**

</div>

## Instalação

```bash
pip install permafrost-framework
```

## Quick Start

```python
import permafrost as pf

metrics = pf.freeze(df, "vendas.permafrost", codec=pf.CODEC_LZMA2, partition_by="ano")
print(f"Ratio: {metrics['ratio']:.2f}x")

df_back = pf.thaw("vendas.permafrost", verify=True)
df_2023 = pf.thaw("vendas.permafrost", filter={"ano": 2023})  # sparse index
```

## Benchmarks (medidos)

| Dado | Original | .permafrost | Ratio |
|------|----------|-------------|-------|
| CSV corporativo 80k linhas | 5.85 MB | **0.678 MB** | **8.37x** |
| JSONL social media 5k posts | 1.44 MB | **0.043 MB** | **33x** |
| 1 TB no Glacier Deep Archive | $0.99/mês | **$0.12/mês** | **-88%** |

91/91 testes passando — ver [EVIDENCE.md](EVIDENCE.md).

## Docs

[caua-ferreira.github.io/permafrost-framework](https://caua-ferreira.github.io/permafrost-framework)

## Licença

Apache License 2.0
