{"repo":"jonatas/spiral","free":true,"listed":false,"github":"https://github.com/jonatas/spiral","clone":"git clone https://github.com/jonatas/spiral.git","description":"Spiral systems","language":"Rust","stars":10,"topics":["database","postgresql","time-series"],"license":null,"category":"databases-storage","readme_excerpt":"Spiral: Time-Series Experimental Framework Spiral is a PostgreSQL extension for experimenting with time-series data at scale. It serves as a playground for learning PostgreSQL internals while testing ideas for storage footprints and hierarchical rollups. 🚀 Key Features (Experimental) 1. Magic Comments (Zero-Config Pipelines) Define analytics pipelines directly within your CREATE TABLE statement. Spiral parses SQL comments to generate persistent metadata and rollup strategies. What happens automatically: - Smart Defaults & Parsing : - Time Detection : Automatically picks the first timestamptz , timestamp , date , or bigint column. - Frames & Tenant : Strictly parsed from the WITH (spiral.frames='...', spiral.tenant='...') clause. Without spiral.frames , the table will not be tracked by Spiral. - Metadata-Driven Hierarchy : Instead of relying on hardcoded naming conventions (like stats ), Spiral now generates and persists a Rollup Strategy for each column in spiral.sources . - Intelligent Naming & Aliasing : - Single-formula columns keep their original name. - Use as alias in comments for custom column names. - Background Worker : A built-in worker periodically refreshes root views, ensuring your rollups stay up-to-date automatically. --- 2. Advanced Rollup Customization (GSub Strategies) Spiral's rollup engine is no longer bound by column name suffixes. Every rollup is driven by the rollup gsub strategy column in spiral.sources . - Dynamic Substitutions : Use rollup(\"\\1\") to ","default_branch":null,"files":null,"tree":[],"storefront":"/r/jonatas","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/jonatas/spiral/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}