{"id":50969321,"url":"https://github.com/databricks-solutions/lakets","last_synced_at":"2026-06-19T00:30:41.355Z","repository":{"id":362666848,"uuid":"1252161143","full_name":"databricks-solutions/lakets","owner":"databricks-solutions","description":"LakeTS — Time Series Toolkit for Databricks Lakebase. Pure SQL (PL/pgSQL) functions delivering ChronoTables, RollUps, gap-filling, and Lakehouse Sync on a hot (Lakebase) + cold (Delta) tier — no custom extensions.","archived":false,"fork":false,"pushed_at":"2026-06-15T06:27:14.000Z","size":9488,"stargazers_count":0,"open_issues_count":12,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-15T08:17:44.124Z","etag":null,"topics":["databricks","delta-lake","iot","lakebase","metrics","plpgsql","postgres","postgresql","sql","timeseries"],"latest_commit_sha":null,"homepage":"https://databricks-solutions.github.io/lakets/","language":"PLpgSQL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/databricks-solutions.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":"NOTICE.md","maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-28T08:46:50.000Z","updated_at":"2026-06-09T06:14:11.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/databricks-solutions/lakets","commit_stats":null,"previous_names":["databricks-solutions/lakets"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/databricks-solutions/lakets","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/databricks-solutions%2Flakets","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/databricks-solutions%2Flakets/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/databricks-solutions%2Flakets/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/databricks-solutions%2Flakets/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/databricks-solutions","download_url":"https://codeload.github.com/databricks-solutions/lakets/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/databricks-solutions%2Flakets/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34513020,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-18T02:00:06.871Z","response_time":128,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["databricks","delta-lake","iot","lakebase","metrics","plpgsql","postgres","postgresql","sql","timeseries"],"created_at":"2026-06-19T00:30:33.199Z","updated_at":"2026-06-19T00:30:41.345Z","avatar_url":"https://github.com/databricks-solutions.png","language":"PLpgSQL","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LakeTS — Time-Series Toolkit for Databricks Lakebase\n\n[![CI Security \u0026 Quality Checks](https://github.com/databricks-solutions/lakets/actions/workflows/ci.yml/badge.svg?branch=main)](https://github.com/databricks-solutions/lakets/actions/workflows/ci.yml)\n[![Release](https://github.com/databricks-solutions/lakets/actions/workflows/release.yml/badge.svg)](https://github.com/databricks-solutions/lakets/actions/workflows/release.yml)\n[![Latest release](https://img.shields.io/github/v/release/databricks-solutions/lakets?sort=semver\u0026label=release)](https://github.com/databricks-solutions/lakets/releases/latest)\n[![License](https://img.shields.io/badge/license-Databricks_DB_License-blue)](./LICENSE.md)\n[![PostgreSQL](https://img.shields.io/badge/postgres-17%2B-336791?logo=postgresql\u0026logoColor=white)](#)\n\nLakeTS turns Databricks Lakebase (managed PostgreSQL 17) into a time-series database:\nautomatic time-based partitioning, incremental RollUps, a last-value cache, policy-driven\nlifecycle tiering, and one-call sync to Unity Catalog via Lakebase CDF. It is pure PL/pgSQL —\nno custom extensions required — with optional Databricks jobs for scheduled maintenance.\n\n## Install\n\n```bash\n# Single-file install (recommended) — from a published release\ncurl -LO https://github.com/databricks-solutions/lakets/releases/latest/download/lakets.sql\npsql -q -h \u003chost\u003e -U \u003cuser\u003e -d \u003cdatabase\u003e -f lakets.sql\n\n# Or from source\ngit clone https://github.com/databricks-solutions/lakets.git\npsql -q -h \u003chost\u003e -U \u003cuser\u003e -d \u003cdatabase\u003e -f lakets/sql/99_install.sql\n```\n\n## Quick start\n\n```sql\n-- Partition a table by time\nCREATE TABLE metrics (time TIMESTAMPTZ NOT NULL, device TEXT, cpu FLOAT8);\nSELECT lakets.create_chronotable('metrics', 'time', '1 day');\n\n-- Query with time-series functions\nSELECT lakets.time_bucket('1 hour'::interval, time) AS hour,\n       avg(cpu), lakets.first(cpu, time), lakets.last(cpu, time)\nFROM metrics GROUP BY 1 ORDER BY 1;\n\n-- Lifecycle: keep data resident, then drop once it is durable in Unity Catalog\nSELECT lakets.add_tiering_policy('metrics', '7 days');\nSELECT lakets.add_retention_policy('metrics', '90 days');\n\n-- Mirror to Unity Catalog (Lakebase CDF)\nSELECT lakets.enable_sync('metrics');\n```\n\n## Documentation\n\nFull documentation is published at **https://databricks-solutions.github.io/lakets/**:\n\n- **[Getting started](https://databricks-solutions.github.io/lakets/guides/getting-started)** — install, create ChronoTables, run your first query.\n- **[How it works](https://databricks-solutions.github.io/lakets/guides/how-it-works)** — partitioning, RollUps, tiering, and Lakebase CDF internals.\n- **[How-to guides](https://databricks-solutions.github.io/lakets/how-to)** — RollUps, lifecycle, LVC, alerts, bulk ingest, sync to UC, upgrading.\n- **[Reference](https://databricks-solutions.github.io/lakets/reference)** — every function, aggregate, trigger, and metadata table.\n\n## Requirements\n\n- Databricks workspace with Lakebase (PostgreSQL 17+)\n- For scheduled maintenance jobs: a Databricks serverless runtime with `pip install -r requirements.txt`\n\n## Contributing\n\nPRs to `main` are validated by CI (SQL lint, Python lint, secret scan, unit tests) — see\n[`.github/workflows/ci.yml`](./.github/workflows/ci.yml). Licensed under the\n[Databricks License](./LICENSE.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatabricks-solutions%2Flakets","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdatabricks-solutions%2Flakets","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatabricks-solutions%2Flakets/lists"}