Skip to content

ftalamo/pyETLite

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyETLite

Declarative ETL pipelines in Python, powered by Polars.

from pyetlite import Pipeline, ErrorMode
from pyetlite.sources import PostgresSource
from pyetlite.sinks import CSVSink
from pyetlite.transforms import DropNulls, RenameColumns

result = (
    Pipeline("ventas_etl", error_mode=ErrorMode.SKIP_AND_LOG)
    .extract(PostgresSource(conn="postgres://...", query="SELECT * FROM orders"))
    .transform(DropNulls())
    .transform(RenameColumns({"id": "order_id"}))
    .load(CSVSink("output/orders.csv"))
    .run()
)
print(result.summary())

Instalación

pip install pyetlite

# Con soporte de base de datos
pip install "pyetlite[postgres]"
pip install "pyetlite[mysql]"

Desarrollo local

# 1. Clonar el repo
git clone https://github.com/tu-usuario/pyetlite
cd pyetlite

# 2. Instalar hatch
pip install hatch

# 3. Crear entorno y correr tests
hatch run dev:test

# 4. Lint
hatch run dev:lint

Licencia

MIT

About

Declarative ETL pipelines in Python, powered by Polars.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages