r/ETL • • 10h ago

I benchmarked importing 1 million CSV rows with Scriptella, JDBC, csvsql, and PostgreSQL COPY

4 Upvotes

I maintain Scriptella, an open-source Java ETL tool, and wanted to establish a reproducible performance baseline for CSV imports.

I compared 11 import configurations using PostgreSQL and MariaDB, with 1 million rows per test.

Some results from the latest CI run:

Method PostgreSQL MariaDB
Scriptella (batched) 12.36s 7.40s
Handwritten JDBC (batched) 9.24s 4.72s
csvsql (chunked) 400.68s 389.35s
PostgreSQL COPY 1.33s N/A

Native COPY was fastest for PostgreSQL, as expected. Handwritten JDBC also outperformed Scriptella, while both were substantially faster than the tested csvsql workflow.

These are end-to-end timings, not isolated framework overhead measurements. The comparison uses one workload and one CI run, with different import mechanisms.

I've published the source code, Docker Compose setup, raw measurements, charts, and reproduction instructions:

https://github.com/scriptella/scriptella-benchmarks

I'd be interested in feedback from people working with ETL pipelines, particularly on which additional workloads would make this comparison more useful.


r/ETL • • 2h ago

Transforming Prose into Structured JSON

Thumbnail
honestmedium.substack.com
1 Upvotes

A follow up article from my jev fact extraction pipeline where we take the classified prose segments and convert them to structured JSON using purpose built LLMs.

Source code: https://github.com/s0cks/prose2json

~ Tazz


r/ETL • • 5h ago

Databricks Lakebridge Internals & Usecase

Thumbnail
1 Upvotes