Skip to main content

A high performance asynchronous Cassandra and Scylla client

Project description

WORK IN PROGRESS, use only for developing

Install

There is an Alpha realease compabitble with Python 3.7 and Python 3.8 for Linux environments uploaded as a Pypi package. Use the following command for installing it:

pip install acsylla

If you are using another operating system, like Mac OS, you will need to compile the module by hand, follow the instructions that are described in the Developing section.

Usage

The following snippet shows the minimal stuff that would be needed for creating a new Session object for the keyspace acsylla and then peform a query for reading a set of rows.

import asyncio
import acsylla
async def main():
    cluster = acsylla.create_cluster([host])
    session = await cluster.create_session(keyspace="acsylla")
    statement = ascylla.create_statement("SELECT id, value FROM test WHERE id = 100")
    result = await session.execute(statement)
    row = result.first()
    value = row.column_by_name("value")
    await session.close()
asyncio.run(main())

Acsylla comes with a minimal support for the following objects: Cluster, Session, Statement, PreparedStatement, Batch, Result, Row and Value.

Developing

For developing you must clone the respository and first compile the CPP Cassandra driver, please follow the instructions for installing any dependency that you would need for compiling the driver:

git clone git@github.com:pfreixes/acsylla.git
make install-driver

Set up the environment and compile the package using the following commands:

python -m venv venv
source venv/bin/activate
make compile
make install-dev

And finally run the tests:

docker-compose up -d
make test

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

acsylla-0.1.0a0-cp38-cp38-manylinux2014_x86_64.whl (4.9 MB view details)

Uploaded CPython 3.8

acsylla-0.1.0a0-cp37-cp37m-manylinux2014_x86_64.whl (4.9 MB view details)

Uploaded CPython 3.7m

File details

Details for the file acsylla-0.1.0a0-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

  • Download URL: acsylla-0.1.0a0-cp38-cp38-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 4.9 MB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.3.1 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

File hashes

Hashes for acsylla-0.1.0a0-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9a9825e8d358a3813f1ba65d336ead8f94fa40f1fa43c4eed81f13616ec8732d
MD5 a0a4f7b28d0f4ae5f53aa9552c3a02f4
BLAKE2b-256 27168a7c13e8782e6b5d18af6ed8cc784466b9845af8a298e074bff4adbe936f

See more details on using hashes here.

File details

Details for the file acsylla-0.1.0a0-cp37-cp37m-manylinux2014_x86_64.whl.

File metadata

  • Download URL: acsylla-0.1.0a0-cp37-cp37m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 4.9 MB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.3.1 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

File hashes

Hashes for acsylla-0.1.0a0-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a1fc95fc464d1cfe92a04973c2ac1d141f4181fb21b2b3a8bac079c5de48edc7
MD5 026837a424d59006aafd87d98ecd9850
BLAKE2b-256 436a2cc9292c4229dc8c5461c5e1173565e48ba1284112f7abf812a05a6b41f6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page