Persistance

Persistance de valeurs Catnip entre deux exécutions.

Pourquoi cette catégorie

Certaines étapes de pipeline produisent des résultats intermédiaires coûteux à recalculer. freeze et thaw permettent de sérialiser ces valeurs en bytes, puis de les restaurer plus tard depuis un backend externe comme Redis.

Un pipeline qui recommence tout à chaque run cramme du temps pour rien.

Cas d'usage : checkpoints de pipeline, reprise après interruption, snapshots de calcul, partage d'états intermédiaires entre runs.

Exemples

Fichier Module Description
redis_nd_pipeline_checkpoint_openalex.cat redis Checkpoint d'un pré-agrégat OpenAlex calculé en ND multiprocess, puis reprise via thaw
redis_clear_checkpoint_openalex.cat redis Supprime la clé Redis du checkpoint pour relancer l'exemple depuis zéro

Données

  • data/openalex-works-sample.jsonl - Échantillon de 100 works OpenAlex (métadonnées de publications)

Exécution

Nécessite un serveur Redis local (localhost:6379).

catnip codex/persistence/redis_nd_pipeline_checkpoint_openalex.cat   # run 1 : calcul + checkpoint
catnip codex/persistence/redis_nd_pipeline_checkpoint_openalex.cat   # run 2 : reprise via thaw
catnip codex/persistence/redis_clear_checkpoint_openalex.cat         # remise à zéro