# marsupialtail/quokka

Making data lake work for time series

Repository: https://github.com/marsupialtail/quokka
Canonical: https://ross.abutalabs.com/products/marsupialtail-quokka
Homepage: https://marsupialtail.github.io/quokka/
Language: Python
License: Apache-2.0
License Family: permissive
Topics: data-lake-analytics, distributed, etl-framework, mlops, sql
Last push: 2024-08-21T01:49:07+00:00

## Health v2 (maintenance only)
Score: 23/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 0, release rhythm 8, longevity 100
- inputs: {"age_days": 1749, "days_push": 743, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1192, forks 63 (observed 2026-08-28T04:03:56.369542+00:00)

## What it is
Quokka is a lightweight distributed dataflow/query engine written in Python, built on Ray, DuckDB, Polars, and Arrow, designed for stateful and windowed computation over large time series datasets in data lakes. It offers a Polars-inspired DataStream API plus SQL support, outperforming SparkSQL on many SQL workloads over cloud storage.

## Use cases
- run distributed SQL queries over parquet and csv files in a data lake
- backtest trading strategies against years of tick-level market data
- perform complex windowed and asof joins on terabytes of time series data
- apply machine learning models inside distributed data pipelines
- do feature engineering across thousands of columns at scale
- replace SparkSQL with a faster Python-native query engine
- process streaming clickstream data with incremental algorithms

## When to choose
- you need distributed time series analytics with complex windows, asof joins, or pattern matching
- you want a Python-native alternative to Spark with a Polars-like API
- you run SQL workloads over cloud object storage and need better performance than SparkSQL
- you want to embed PyTorch or scikit-learn transformations inside a distributed pipeline

## When to avoid
- you need a mature, battle-tested engine with a large community like Spark or Flink
- your datasets are small enough for pandas, Polars, or DuckDB on a single machine
- you need full compatibility with the latest Polars API
- you require streaming ingestion of live real-time data rather than historical batch analysis

## Facets
- artifact type: library
- maturity: active
- function: etl, streaming, data-science
- domain: big-data, data-science, time-series, analytics
- platform: python, cloud
- tags: data-lake-analytics, distributed-query-engine, datastream-api, polars-inspired, ray-based, time-series-analytics, sql-engine, mlops, query-engine, distributed-computing, data-engineering, docker

## Member repositories
- marsupialtail/quokka (main) score 23

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:03:56.369542+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T06:22:30.777094+00:00, confidence not recorded.
  - readme: https://github.com/marsupialtail/quokka (fetched 2026-08-28T04:03:56.369542+00:00, sha 5cc9bd7cb21c)
  - homepage: https://marsupialtail.github.io/quokka/ (fetched 2026-08-29T12:30:01.183225+00:00, sha aeb246f0fc9f)
- Data as of 2026-08-30T08:39:29.467469+00:00.
