The ScyllaDB team is pleased to announce nodejs-rs-driver, a new driver for ScyllaDB for Node.js with support for Typescript. This driver is an overlay over the ScyllaDB Rust Driver, with the interface based on the Node.js Driver for Apache Cassandra (formerly known as DataStax Node.js Driver). Although optimised for ScyllaDB, the driver is also compatible with Apache Cassandra®.
Current feature support
As of this release:
- Simple, Prepared, and Batch statements
- Asynchronous IO, parallel execution, request pipelining
- Token-aware routing
- Shard-aware and Tablet-aware routing (specific to ScyllaDB)
- CQL binary protocol version 4
- Works with any cluster size
- Both promise and callback-based API
- Row streaming and pipes
- Built-in TypeScript support
- Password authentication
- Configurable load balancing policies
- Error handling, based on the Rust driver
- SSL support
- Built-in retry policies
And more!
Features that are planned for the driver to become production-ready:
- Faster performance, compared to DataStax Node.js driver (coming in the next release)
- Migration guide from the DataStax driver
- Metadata support
- Configuration reconciliation
- Named parameters
For other planned features, see our Milestones
Instalation
You can install the driver through npm:
npm i scylladb-driver-alpha
https://www.npmjs.com/package/scylladb-driver-alpha
The current version of the driver is 0.4.0
(Note that this package name is temporary and may change in the future.)
If you encounter any bugs in the current release, we will be happy to help. Just report the issue on GitHub repository.
The current version is not yet production-ready. Linux x86_64 and Linux arm64 architectures are supported with this release (MacOS architectures should be supported in the coming releases). If you want to try other architectures, you will need to build the binaries from the source code.