{"categories":[{"label":"Front-Ends","url":"https://skillfed.io/packages/category/database-front-ends/2"}],"enrichment":{"capability":"Provides a SQLAlchemy dialect that enables Python applications to connect to and query RisingWave, a cloud-native streaming database, using SQLAlchemy's standard ORM and query APIs.","skillfed_tags":["streaming-database","orm-dialect","async-support"],"use_cases":["Build real-time analytics dashboards in Superset or similar tools by connecting them to RisingWave via SQLAlchemy.","Write Python applications that query streaming data from RisingWave using familiar SQLAlchemy ORM patterns.","Implement concurrent RisingWave queries in async Python services (FastAPI, Starlette) using the psycopg3 async driver.","Migrate existing SQLAlchemy applications to RisingWave for streaming workloads with minimal code changes.","Validate and enforce data invariants at the application layer when RisingWave does not enforce constraints."],"what_it_does":"sqlalchemy-risingwave is a SQLAlchemy dialect plugin that bridges Python's SQLAlchemy ORM to RisingWave, a streaming SQL database. It translates SQLAlchemy constructs into RisingWave-compatible SQL and handles the semantic differences between RisingWave's streaming model and traditional PostgreSQL OLTP semantics that SQLAlchemy normally assumes.\n\nThe dialect rewrites certain DDL constructs (SERIAL types, parameterized string/numeric types, UUID, Enum) to forms RisingWave accepts, and documents where it does not silently drop user-declared invariants (CHECK, UNIQUE, FOREIGN KEY constraints are not enforced by RisingWave). It supports both synchronous queries via psycopg2 and asynchronous queries via psycopg3 and SQLAlchemy 2.0's async engine API, making it suitable for concurrent workloads in services like FastAPI.","worth_installing":"Yes, if you are building applications on RisingWave and want to use SQLAlchemy. The dialect is actively maintained, has no known vulnerabilities, and low install friction. However, understand that RisingWave's streaming semantics diverge significantly from PostgreSQL OLTP assumptions\u2014read the documentation on read-after-write visibility and unenforced constraints before relying on them in production."},"id":"sqlalchemy-risingwave","links":{"html":"https://skillfed.io/packages/sqlalchemy-risingwave","md":"https://skillfed.io/packages/sqlalchemy-risingwave.md","pypi":"https://pypi.org/project/sqlalchemy-risingwave/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-06-18","license_spdx":null,"license_treatment":"permissive","name":"sqlalchemy-risingwave","python_support":"supports_current","summary":"RisingWave dialect for SQLAlchemy"},"popularity":{"monthly_downloads":179196,"position":10178,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"2.1.0"}
