skillfed

acsylla

A high performance asynchronous Cassandra and ScyllaDB client

acsylla v1.1.0 385.9K downloads/30d#7,056 on PyPI65
Permissive license Active released

What it is and what it does

Acsylla is a high-performance async Python client for Cassandra and ScyllaDB built on top of a modern C/C++ driver. It provides shard-aware connection routing, connection pooling, automatic node discovery, and support for simple, prepared, and batch statements. The library is designed for asyncio-based applications and handles asynchronous I/O, parallel execution, and request pipelining natively.

The package targets developers building async applications that need to query Cassandra or ScyllaDB clusters. It supports authentication, SSL, latency-aware routing, configurable load balancing policies, and metadata retrieval. The API exposes rows as objects with multiple access patterns (dict, list, tuple, or attribute access), and includes features like execution profiles, tracing, and host state change callbacks.

Use it for:

  • Build async web services or microservices that query Cassandra/ScyllaDB without blocking the event loop.
  • Implement connection pooling and shard-aware routing for high-throughput, low-latency database access in production clusters.
  • Execute prepared statements and batch operations concurrently across multiple requests in an asyncio application.
  • Configure custom load balancing, retry policies, and authentication for complex cluster topologies.
  • Retrieve cluster metadata, monitor host state changes, and implement speculative execution for resilient queries.

Worth the install?

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

Acsylla is an async Python client library for Cassandra and ScyllaDB that wraps a modern C/C++ driver to provide shard-aware, high-performance database access.

Yes, if you need async Cassandra/ScyllaDB access in a modern Python application. The library is actively maintained, has no known vulnerabilities, supports recent Python versions with prebuilt wheels, and offers a comprehensive feature set including shard-awareness and connection pooling. Medium install friction is acceptable for most deployments. The dual Apache/MIT license poses no restrictions.

Install

acsylla on PyPI

pip

pip install acsylla

uv

uv add acsylla

poetry

poetry add acsylla

Installing acsylla

Before you install

Medium install friction due to compiled wheels. Prebuilt binaries are available for Python 3.10–3.13 on macOS and Linux (x86_64, aarch64, musllinux), but older Python versions and other platforms require building from source. Maintenance is active with a recent release.

License in practice

Licensed under both Apache and MIT (permissive dual licensing), so you can choose the terms that suit your project with no restrictions on commercial use or modification.

Quickstart

import acsylla
import asyncio

async def main():
    cluster = acsylla.create_cluster(["localhost"])
    session = await cluster.create_session()
    result = await session.query("SELECT * FROM table")
    async for row in result:
        print(row.as_dict())

asyncio.run(main())

Requires a running Cassandra or ScyllaDB cluster to connect to; compiled C/C++ extension requires a compatible Python version (3.10–3.13 have prebuilt wheels; 3.9 and 3.14 require building from source).

Verify before relying

  • Whether Python 3.9 and 3.14 wheels are available or if source build is mandatory for those versions.
  • Performance benchmarks comparing acsylla to other async Cassandra drivers.
  • Whether the C/C++ driver dependency is vendored or requires system installation.

Package facts

License not declared (permissive)
Python support not specified
Install friction medium — platform-specific wheel
Runtime dependencies none
Maintenance actively maintained — 25 days since the last release
Last repo commit
First released
Downloads 385,948/month — #7,056 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: acsylla-1.1.0-cp310-cp310-macosx_10_9_universal2.whl; acsylla-1.1.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; acsylla-1.1.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; acsylla-1.1.0-cp310-cp310-musllinux_1_2_aarch64.whl; acsylla-1.1.0-cp310-cp310-musllinux_1_2_x86_64.whl; acsylla-1.1.0-cp311-cp311-macosx_10_9_universal2.whl; acsylla-1.1.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; acsylla-1.1.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; acsylla-1.1.0-cp311-cp311-musllinux_1_2_aarch64.whl; acsylla-1.1.0-cp311-cp311-musllinux_1_2_x86_64.whl; acsylla-1.1.0-cp312-cp312-macosx_10_13_universal2.whl; acsylla-1.1.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; acsylla-1.1.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; acsylla-1.1.0-cp312-cp312-musllinux_1_2_aarch64.whl; acsylla-1.1.0-cp312-cp312-musllinux_1_2_x86_64.whl; acsylla-1.1.0-cp313-cp313-macosx_10_13_universal2.whl; acsylla-1.1.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; acsylla-1.1.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; acsylla-1.1.0-cp313-cp313-musllinux_1_2_aarch64.whl; acsylla-1.1.0-cp313-cp313-musllinux_1_2_x86_64.whl

Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseLicense :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9

Tags

cassandra async clientscylladb python driverasyncio cassandraasync database clientcassandra connection poolingscylla shard-awarecassandra prepared statementsasync query execution
async-databasecassandra-driverscylladb

More Database packages