Skip to main content

acl_to_parquet — bindings Python

Bindings Python d'un convertisseur Rust haute performance pour les tables ACL Audit Command Language (.FIL) vers Parquet.

Pour la documentation complète du projet (format ACL géré, conventions de nommage, options du CLI Rust), voir le dépôt principal.

Installation

pip install acl_to_parquet

Nécessite Python 3.13 ou supérieur.

Usage

Conversion d'un fichier

from acl_to_parquet import convert

report = convert(
    data_path="data/clients.FIL",
    schema_path="schemas/clients.layout",
    output_path="output/clients.parquet",
)
print(report)
# ConversionReport(rows_written=1234567, n_fields=42, total_seconds=3.21)

print(f"{report.rows_written:,} lignes écrites")
print(f"Anomalies par colonne : {report.anomalies_per_column}")

Conversion d'un dossier entier en parallèle

from acl_to_parquet import convert_directory

summary = convert_directory(
    input_dir="data/",
    schema_dir="schemas/",
    output_dir="output/",
    jobs=4,           # None = nombre de cœurs CPU
    verbose=True,     # affiche la progression sur stderr
)

print(summary)
# BatchSummary(n_success=12, n_failure=0, total_rows_written=98765432)

for outcome in summary.outcomes:
    if outcome.success:
        print(f"OK   {outcome.data_path} → {outcome.output_path}")
    else:
        print(f"FAIL {outcome.data_path} : {outcome.error}")

Convention de nommage attendue par convert_directory

Pour chaque fichier <nom>.FIL dans input_dir, le module cherche <nom>.layout dans schema_dir et produit <nom>.parquet dans output_dir. Les fichiers sans schéma associé apparaissent comme des échecs dans le résumé, sans interrompre le batch.

Options de conversion

Les fonctions convert() et convert_directory() acceptent les paramètres optionnels suivants :

Paramètre Défaut Description
chunk_rows 65 536 Nombre de lignes par batch en mémoire
row_group_size 1 048 576 Lignes par row group Parquet
compression "snappy" "snappy" | "zstd" | "none"
jobs None Workers parallèles (batch uniquement)
verbose False Logs de progression (batch uniquement)

Metadata

Release files for acl-to-parquet 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for acl-to-parquet 0.1.1
File Interpreter ABI Platform
acl_to_parquet-0.1.1-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
acl_to_parquet-0.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64 Details
acl_to_parquet-0.1.1-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details

Total release size: 9.1 MB

Release files / acl_to_parquet-0.1.1-cp313-cp313-win_amd64.whl

Download URL acl_to_parquet-0.1.1-cp313-cp313-win_amd64.whl
Size 3.1 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
83269ee09eb733910c51bfc133758573fb79eccf3f4c21291c864358e52e97c1
BLAKE2b-256 checksum
How to use checksums
4520f4666758cce293304313118848e8d8b5b78c69b80c18972862820a0eba95
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.13.1

Release files / acl_to_parquet-0.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL acl_to_parquet-0.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 3.3 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
30a3ea8a43f0900e05c4424d3ec5734dd79813496f7c8af8a9c1111719f78e5b
BLAKE2b-256 checksum
How to use checksums
01e3747155d1181fa7fd9f3faa862250848b02bbdd80b81e744d78fb63fed61d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.13.1

Release files / acl_to_parquet-0.1.1-cp313-cp313-macosx_11_0_arm64.whl

Download URL acl_to_parquet-0.1.1-cp313-cp313-macosx_11_0_arm64.whl
Size 2.8 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
fca05384dab6d127cf01ee5de4db14f96a44830e74996ac49db3af1eea4c6faa
BLAKE2b-256 checksum
How to use checksums
2c1a22444b6a5cc5744c5474984c741155c8976420fc725cfe0f406b7b56a1aa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.13.1

Release history Release notifications | RSS feed

This release

0.1.1 This release

3 release files

0.1.0

3 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page