Alkimya
🐘
pycopg
Bibliothèque Python — PostgreSQL & PostGIS

Une interface haut niveau pour PostgreSQL, PostGIS et TimescaleDB. Construit sur psycopg 3 — moins de code, plus d'expressivité, sans sacrifier la puissance de la base.

exemple.py
from pycopg import Database

# Connexion et exploration
with Database("postgresql://user:pass@localhost/mydb") as db:
    db.explore()                          # schéma complet
    df = db.to_dataframe("SELECT * FROM parcelles")

# Import massif par COPY
db.copy_insert("zones", records, batch_size=10_000)

# PostGIS — GeoDataFrame direct
gdf = db.to_geodataframe("SELECT * FROM zones WHERE ST_Area(geom) > 1000")

# TimescaleDB — création d'hypertable
db.create_hypertable("mesures", time_column="ts")
🗂
Exploration de schéma
Introspection complète — tables, colonnes, types, index, contraintes et extensions. Vue claire de la structure de votre base en une ligne.
Import COPY par lots
Insertion massive via COPY binaire PostgreSQL. Ordres de grandeur plus rapide qu'INSERT classique, avec contrôle de la taille des batches.
🐼
DataFrame & GeoDataFrame
Conversion directe vers Pandas DataFrame ou GeoPandas GeoDataFrame. Retour vers la base en upsert automatique.
🗺
PostGIS natif
Opérations spatiales, transformations de projection et conversion de géométries intégrées. Travaillez avec des données géographiques sans friction.
TimescaleDB
Création d'hypertables, gestion des politiques de rétention et requêtes sur séries temporelles avec la puissance de l'extension Timescale.
🔗
Connection pooling
Pool de connexions intégré, pub/sub PostgreSQL, gestion des rôles et backups — tout ce qu'il faut pour la production.
Python 3.11+ psycopg 3 PostgreSQL PostGIS TimescaleDB Pandas GeoPandas