{"repo":"rivethealth/denorm","free":true,"listed":false,"github":"https://github.com/rivethealth/denorm","clone":"git clone https://github.com/rivethealth/denorm.git","description":"Denormalized and aggregated tables for PostgreSQL.","language":"Python","stars":34,"topics":["postgresql","denormalization","aggregation","incremental-view-maintenance","materialized-view"],"license":"MIT","category":"databases-storage","readme_excerpt":"Denorm Denormalized and aggregated tables for PostgreSQL. Keywords: PostgreSQL, denormalization, aggregation, incremental view maintenance, materialized view - Overview - Install - Usage - Operations - Performance - Migration - Limitations - Developing Overview Dernom is similar to PostgreSQL's REFRESH MATERIALIZED VIEW , except that it updates materialized table incrementally. How it works: Define the query, the tables, and their relationships in JSON. Denorm generates the SQL DDL statements that create the necessary functions and triggers. Apply the generated SQL statements to the database. Now, the materialized target is automatically kept in sync with the source tables. Features - Efficient incremental updates - Arbitrarily complex SQL features and expressions - Configurable consistency - Deadlock-free Install Pip Usage For CLI usage, see Usage. Operations Denorm has two operations: Aggregate Create a materalized aggregate of a single table. See Aggregate. Join Create a materialized join of several tables. See Join. Performance Materialized views exchange slower write performance for higher read performance. While it's impossible to escape the fundamental trade-off, Denorm is as fast or faster than hand-written triggers. It uses statement-level transitions tables to make batch updates especially efficient. In deferred mode, Denorm uses temp tables to defer updates until the end of the transaction. Using temp tables and ON DELETE COMMIT reduces I/O overhead and obviates th","default_branch":null,"files":null,"tree":[],"storefront":"/r/rivethealth","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/rivethealth/denorm/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."}