Vue d'ensemble

PyArrow 16.0, publie le 24 avril 2024, ajoute le support de l'encodage run-end pour les donnees repetitives.

Fonctionnalites principales

Encodage run-end

L'encodage run-end compresse les colonnes contenant des valeurs consecutives identiques, reduisant la memoire et accelerant les scans.

python
import pyarrow as pa

# Donnees repetitives
arr = pa.array(['A'] * 1000 + ['B'] * 2000 + ['A'] * 500)
print(f'Elements : {len(arr)}')  # 3500

# Run-end encoding compresse efficacement
ree = arr.dictionary_encode()
print(f'Taille memoire reduite : {ree.nbytes}')

Sources