Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Rust
  3. noria

noria

Apache-2.0Rust

A streaming data-flow system that acts as a fast storage backend for read-heavy web applications by precomputing and caching relational query results.

GitHubGitHub
5.2k stars250 forks0 contributors

What is noria?

Noria is a streaming data-flow system that functions as a high-performance storage backend for read-heavy web applications. It precomputes and caches the results of relational SQL queries as materialized views, which are automatically updated as data changes, delivering fast reads and high write throughput. It solves the performance bottleneck of traditional databases for dynamic, data-intensive web services.

Target Audience

Developers and engineers building read-heavy web applications, such as social platforms, news aggregators, or real-time dashboards, who need sub-millisecond read latency and high scalability without manual caching complexity.

Value Proposition

Developers choose Noria because it offers database-like durability with cache-like speed, automatically maintaining materialized views through incremental data-flow. Its MySQL adapter allows easy integration with existing stacks, and its partial-statefulness reduces memory overhead compared to full materialization.

Overview

Fast web applications through dynamic, partially-stateful dataflow

Use Cases

Best For

  • Scaling read-heavy web applications like news aggregators or social feeds
  • Reducing latency for complex SQL queries in real-time services
  • Building high-throughput backend systems that require automatic cache invalidation
  • Migrating MySQL-based applications to a faster, scalable backend with minimal code changes
  • Implementing materialized views that stay fresh without manual refresh jobs
  • Handling dynamic query workloads where queries are added or changed at runtime

Not Ideal For

  • Write-intensive applications where reads are minimal and incremental view updates add unnecessary overhead
  • Projects requiring full ACID transactions or complex SQL features beyond parameterized queries
  • Teams without infrastructure for ZooKeeper or unwilling to manage distributed system dependencies
  • Small-scale applications where the setup complexity outweighs the performance benefits

Pros & Cons

Pros

Dynamic Runtime Updates

Supports runtime changes to data-flow and queries without downtime, allowing flexible adaptation to evolving application needs as per the key features.

Memory-Efficient Design

Uses partially-stateful data-flow to significantly reduce memory overhead, making it scalable for large datasets without full materialization costs.

Seamless MySQL Compatibility

Comes with a MySQL adapter implementing the binary protocol, enabling existing applications to switch with minimal effort, as highlighted in the README for easy integration.

Blazing Fast Reads

Precomputes and caches relational query results as materialized views, turning reads into fast lookups with up to 5x throughput improvement shown in Lobsters benchmarks.

Cons

Complex Operational Setup

Requires Apache ZooKeeper for coordination and nightly Rust for building, adding deployment overhead and potential instability due to reliance on cutting-edge tools.

Limited SQL Feature Set

Focused on parameterized queries for materialized views, lacking full SQL-92 compliance or advanced transactional guarantees compared to traditional databases.

Immature Ecosystem and Support

As a research project from MIT, it has a smaller community, fewer production-ready tools, and less documentation than established databases like PostgreSQL or MySQL.

Frequently Asked Questions

Quick Stats

Stars5,240
Forks250
Contributors0
Open Issues43
Last commit4 years ago
CreatedSince 2016

Tags

#mysql-compatible#materialized-views#incremental-computation#database-backend#zookeeper#rust

Built With

M
MySQL
A
Apache ZooKeeper
R
Rust

Included in

Rust56.6k
Auto-fetched 16 hours ago

Related Projects

QdrantQdrant

Qdrant - High-performance, massive-scale Vector Database and Vector Search Engine for the next generation of AI. Also available in the cloud https://cloud.qdrant.io/

Stars33,545
Forks2,520
Last commit19 hours ago
SurrealDBSurrealDB

A scalable, distributed, collaborative, document-graph database, for the realtime web

Stars32,748
Forks1,311
Last commit18 days ago
RustFSRustFS

🚀2.3x faster than MinIO for 4KB object payloads. RustFS is an open-source, S3-compatible high-performance object storage system supporting migration and coexistence with other S3-compatible platforms such as MinIO and Ceph.

Stars30,153
Forks1,326
Last commit18 hours ago
TursoTurso

A SQL database in Rust: SQLite-compatible, now also speaking Postgres (experimental). The LLVM of databases.

Stars23,381
Forks1,201
Last commit23 hours ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub