Ingestion¶
Getting data in. Four examples: catalog tables with SQL, a public web API, raw unstructured files, and a real relational database over JDBC.
01 · Tables and SQL¶
Read a catalog table, push a join down as SQL so the database does the work,
and write with merge so re-running never duplicates rows.
Open examples/01_ingest_tables_sql/notebooks/run_customer_revenue.py and
press Run all. Or, from a terminal:
Seed the sample-shaped tables once (see Start Here), then:
02 · REST API¶
Pull a weather forecast from a free public API, with paging, retries and rate limiting, then fan one JSON document out into rows.
Open examples/02_ingest_rest_api/notebooks/run_hourly_forecast.py and run
it, or:
03 · Unstructured files¶
Read raw text files with the binary reader, then chunk them into overlapping windows ready for embeddings. The documents are committed to the repository, so nothing is downloaded while running.
Open examples/03_ingest_unstructured/notebooks/run_document_index.py and
run it, or:
Runs as the first step of the models demo:
09 · JDBC, a real database¶
A parallel read from RNAcentral's public PostgreSQL mirror, 54 million rows. The lesson: a JDBC read is single threaded unless you tell it not to be, and this example shows the four settings that split it across connections.
Plainly: serverless cannot run this one. It ships no JDBC drivers and cannot install one, so this example needs a classic cluster on a paid workspace, and it has its own bundle:
Works out of the box. The driver is one Maven coordinate, which the platform script already passes: