Skip to content

AxonOps — AI-Native Control Plane for Open Source Data Platforms

Migrating from DataStax Astra DB to Apache Cassandra

This guide describes how to migrate from DataStax Astra DB to open-source Apache Cassandra with no downtime. Astra DB is a managed, serverless database service built on Apache Cassandra. CQL tables are ordinary Cassandra tables and the move to a self-operated cluster is a well-understood procedure.

The migration uses a dual-write proxy so that the application keeps running throughout: writes go to both Astra and the new cluster while existing data is copied across in the background; cutover occurs only once the new cluster is proven.

For the cost, risk, and support case behind a move to self-managed Cassandra, see the business case.

Astra is a managed service rather than a distribution installed by the operator, which shapes the migration in three ways.

Connecting through the Secure Connect Bundle

Section titled “Connecting through the Secure Connect Bundle”

Applications connect to Astra using a Secure Connect Bundle (SCB) and an application token, not through a list of contact points. Open-source Cassandra does not use a Secure Connect Bundle, so the most important application change in this migration is replacing the SCB with standard contact points and credentials at cutover. This is covered in Cutover and Drivers.

There is no node-level access to the source

Section titled “There is no node-level access to the source”

Because Astra is fully managed, there is no access to nodetool, JMX, or configuration files for the source database, and a dedicated datacenter cannot be added to Astra. The migration is therefore always to a separate open-source Cassandra cluster, provisioned and operated by the migrating team, with traffic moved across by the proxy.

Standard CQL carries over; the proprietary layer does not

Section titled “Standard CQL carries over; the proprietary layer does not”

CQL tables, Storage-Attached Indexes (SAI), and vector data are all native to Apache Cassandra and migrate directly.

The Data API, Collections, and Vectorize are out of scope

On top of the Cassandra core, Astra offers a proprietary document and AI layer: the Data API, Collections (JSON documents), and Vectorize (server-side embedding generation). These are not part of open-source Apache Cassandra and are not covered by this guide, which addresses CQL workloads. If the application uses any of them, talk to AxonOps so the right approach can be designed.

Vector workloads require Cassandra 5.0 or later

The native vector type and SAI-based approximate nearest-neighbour search arrived in Apache Cassandra 5.0. If the Astra application uses vector search, the target cluster must be Cassandra 5.0 or later.

Moving from a managed service to self-managed

Section titled “Moving from a managed service to self-managed”

Leaving a serverless platform raises fair questions about what changes and what is gained.

  • Node failure is a routine, planned operation. Cassandra replicates every row across multiple nodes, so the cluster keeps serving reads and writes when a node fails. The failed node is replaced as an unhurried, routine operation. AxonOps alerts on failure events and drives the node-replacement and repair workflow; 24/7 expert support under a defined SLA provides a named support contact.
  • Scaling. Cassandra does not scale to zero like serverless, but it scales horizontally and predictably: add nodes to grow capacity and throughput, online and without resharding. Capacity is planned and controlled rather than discovered on an invoice.
  • Backups and day-2 operations. These are operator responsibilities, but not manual ones. AxonOps provides scheduled backups with point-in-time restore, adaptive repair, rolling restarts, alerting, and health checks, which is the managed-style automation Astra ran behind the scenes (see Post-Migration Operations).
  • Kubernetes, if that is the target platform. Cassandra runs well on Kubernetes (for example via the K8ssandra project or a Cassandra operator), supporting a declarative, managed-style workflow while the operator owns the database.
  • Cost. Serverless billing is convenient but charges on usage, including data scanned rather than returned and per-region writes, which is hard to predict and grows with scale. Self-managed cost is infrastructure plus operations tooling, forecastable and controlled by the operator.

Self-managed Apache Cassandra places scaling, backup, and upgrade decisions under direct operator control.

The migration is a controlled, phased process. Each phase has clear entry and exit criteria and, where relevant, a rollback path.

PhaseActivityPage
0Inventory the Astra database, schema, drivers, and connection detailsAssessment
1Provision the target cluster, the ZDM Proxy, and the data-copy toolingZDM Proxy and CDM Setup
2Dual-write through the proxy and bulk-copy existing dataData Migration
3Check health, consistency, and performance, then repair the targetValidation
4Repoint the application, drop the Secure Connect Bundle, remove the proxyCutover and Drivers
5Take ownership of day-2 operations on the new clusterPost-Migration Operations
RefCaveats and troubleshooting for the migration toolingOperational Caveats
Astra to Apache Cassandra dual-write migration Astra to Apache Cassandra: dual-write migration App Application Proxy ZDM Proxy (≥ 3 instances) App->Proxy CQL (single endpoint) Astra Origin Astra DB Proxy->Astra reads (initially) + dual writes Target Target Apache Cassandra Proxy->Target dual writes (+ async reads later) Copy Data copy CDM or Spark Astra->Copy read existing data (via Secure Connect Bundle) Copy->Target write existing data

The application talks only to the proxy. New writes are mirrored to both databases from the moment the proxy is deployed, while a bulk-copy tool backfills the data that already existed in Astra. Once the target holds a complete, validated copy, reads are moved across, the application is repointed directly at the new cluster, and the proxy is removed.

Is DataStax Astra DB just Apache Cassandra?

Section titled “Is DataStax Astra DB just Apache Cassandra?”

Astra is built on Apache Cassandra, and standard CQL tables are ordinary Cassandra tables. Astra adds a proprietary layer (the Data API, Collections, and Vectorize) that is not part of open-source Cassandra.

What replaces the Secure Connect Bundle after migration?

Section titled “What replaces the Secure Connect Bundle after migration?”

Standard contact points and credentials. Open-source Cassandra does not use a Secure Connect Bundle; the SCB is removed and standard contact points and credentials are used, as with any Cassandra cluster.

Is it possible to migrate off Astra DB with zero downtime?

Section titled “Is it possible to migrate off Astra DB with zero downtime?”

Yes. The ZDM Proxy dual-writes to both Astra and the new cluster while existing data is copied across; cutover occurs only once the target is validated.

Do SAI and vector search carry over from Astra?

Section titled “Do SAI and vector search carry over from Astra?”

Yes. Both are native to Apache Cassandra 5.0, so vector workloads require a Cassandra 5.0 or later target.