DataStax
This is the implementation of the DataStax data handler for MindsDB.
DataStax Astra DB is a cloud database-as-a-service based on Apache Cassandra. DataStax also offers DataStax Enterprise (DSE), an on-premises database built on Apache Cassandra, and Astra Streaming, a messaging and event streaming cloud service based on Apache Pulsar.
Prerequisites
Before proceeding, ensure the following prerequisites are met:
- Install MindsDB locally via Docker or Docker Desktop.
- To connect DataStax to MindsDB, install the required dependencies following this instruction.
- Install or ensure access to DataStax.
Implementation
DataStax Astra DB is API-compatible with Apache Cassandra and ScyllaDB. Therefore, its implementation extends the ScyllaDB handler and is using the scylla-driver
Python library.
The required arguments to establish a connection are as follows:
user
is the user to authenticate.password
is the password to authenticate the user.secure_connect_bundle
is the path to thesecure_connect_bundle
zip file.
Usage
In order to make use of this handler and connect to the Astra DB database in MindsDB, the following syntax can be used:
CREATE DATABASE astra_connection
WITH
engine = "astra",
parameters = {
"user": "user",
"password": "pass",
"secure_connect_bundle": "/home/Downloads/file.zip"
};
or, reference the bundle from Datastax s3 as:
CREATE DATABASE astra_connection
WITH ENGINE = "astra",
PARAMETERS = {
"user": "user",
"password": "pass",
"secure_connect_bundle": "https://datastax-cluster-config-prod.s3.us-east-2.amazonaws.com/32312-b9eb-4e09-a641-213eaesa12-1/secure-connect-demo.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AK..."
}
You can use this established connection to query your table as follows:
SELECT *
FROM astra_connection.keystore.example_table
LIMIT 10;
Was this page helpful?