skillfed

sqlalchemy-risingwave

RisingWave dialect for SQLAlchemy

sqlalchemy-risingwave v2.1.0 179.2K downloads/30d#10,178 on PyPI9,258
Permissive license http://www.apache.org/licenses/LICENSE-2.0 Active released

What it is and 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.

The 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.

Use it for:

  • 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.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

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.

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—read the documentation on read-after-write visibility and unenforced constraints before relying on them in production.

Install

sqlalchemy-risingwave on PyPI

pip

pip install sqlalchemy-risingwave

uv

uv add sqlalchemy-risingwave

poetry

poetry add sqlalchemy-risingwave

Installing sqlalchemy-risingwave

Before you install

Low friction: pure Python wheel with a single runtime dependency on SQLAlchemy. Active maintenance with a recent release (57 days old) and consistent commit activity. Supports Python 3.10 through 3.13.

License in practice

Apache 2.0 permissive license allows commercial and private use with minimal restrictions. No copyleft obligations or proprietary licensing concerns.

Quickstart

pip install sqlalchemy-risingwave

from sqlalchemy import create_engine, text

engine = create_engine("risingwave+psycopg://root@localhost:4566/dev")
with engine.connect() as conn:
    result = conn.execute(text("SELECT 1"))
    print(result.scalar_one())

Requires psycopg2 or psycopg2-binary (or psycopg3 for async support); psycopg2 has its own system-level prerequisites. RisingWave instance must be running and accessible at the connection URL.

Verify before relying

  • Whether the 24% compliance rate (90 passing tests out of 371 applicable) is acceptable for your specific use case and query patterns.
  • How read-after-write visibility delays in RisingWave's streaming model affect your application's consistency requirements.
  • Whether unenforced constraints (CHECK, UNIQUE, FOREIGN KEY) require application-layer validation in your data pipeline.

Package facts

License http://www.apache.org/licenses/LICENSE-2.0 (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 1 — SQLAlchemy
Maintenance actively maintained — 57 days since the last release
Last repo commit
First released
Downloads 179,196/month — #10,178 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: sqlalchemy_risingwave-2.1.0-py3-none-any.whl

Keywords: SQLAlchemy, RisingWave

License :: OSI Approved :: Apache Software LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13

Tags

sqlalchemy risingwave dialectrisingwave database driverstreaming database sql ormrisingwave python connectorsqlalchemy streaming databaserisingwave psycopg adaptercloud-native streaming sql
streaming-databaseorm-dialectasync-support

More Front-Ends packages