Skip to content

Skipprd sync

Ingest data from the source, buffer through the WAL, compact into Parquet, and upload to the destination.

Usage

bash
skipprd sync --pipeline <name> [--once] [--output <mode>] [--log [LEVEL]]
skipprd --config skippr.yml sync --pipeline <name> [--once] [--output <mode>] [--log [LEVEL]]

Flags

FlagRequiredDescription
--pipeline, -pNoPipeline name. Falls back to PIPELINE_NAME env var.
--onceNoRun a single sync pass across all pipelines and exit. Without this flag, multi-pipeline mode loops continuously.
--outputNoOutput mode: progress (default, interactive spinner), json (structured JSON lines to stdout), or text (plain text summaries).
--logNoEnable logging. Optional level: debug, info, warn, error. Defaults to info when flag is present.

What it does

  1. Loads pipeline metadata (schema) from S3
  2. Syncs the schema to the destination (creates Glue database/tables if needed)
  3. Reads data from the source in batches
  4. Writes records to the WAL as segments
  5. The compactor service continuously reads segments, converts to Parquet, uploads to S3, and registers Glue partitions
  6. On completion, the compactor drains all remaining segments before exit
  7. Commits offsets to the offsets database

Example

bash
skipprd --config skippr.yml sync --pipeline events --log

Batch sync with structured output

bash
skipprd sync --pipeline el_mssql --once --output json

This site is source-available under PolyForm Shield 1.0.0