Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion modules/ROOT/nav.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@
** xref:ROOT:troubleshooting-scenarios.adoc[]
** xref:ROOT:faqs.adoc[]
** xref:ROOT:glossary.adoc[]
** xref:ROOT:contributions.adoc[]
* Release notes
** {product-proxy-repo}/releases[{product-proxy} release notes]
** {product-automation-repo}/releases[{product-automation} release notes]
Expand Down
19 changes: 5 additions & 14 deletions modules/ROOT/pages/astra-migration-paths.adoc
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
= {astra} migration toolkit
:description: Learn which migration tools you can use to migrate data to {astra}.

The {astra} migration toolkit includes all xref:ROOT:components.adoc[{company} migration tools] that are designed to help you migrate your data to {astra-db}.
The {astra} migration toolkit includes all xref:ROOT:components.adoc[{company} migration tools] that are designed to help you xref:astra-db-serverless:databases:migration-path-serverless.adoc[migrate your data to {astra-db}].

== Migration tool compatibility

Use the following table to learn which tools are compatible with your current database provider or service:
Use the following table to learn which tools are compatible with your current database provider or service.
If you have questions about migrating from a specific source to {astra-db}, contact your {company} account representative or {support-url}[{company} Support].

.Migration tool compatibility
[cols="2,1,1,1,1"]
|===
|Origin |{sstable-sideloader} |{cass-migrator} |{product-proxy} |{dsbulk-migrator}/{dsbulk-loader}
Expand Down Expand Up @@ -95,13 +95,4 @@ Use the following table to learn which tools are compatible with your current da
|icon:check[role="text-success",alt="Supported"]
|icon:check[role="text-success",alt="Supported"]

|===

== Get support for your migration

If you have questions about migrating from a specific source to {astra-db}, contact your {company} account representative, {support-url}[{company} Support], or an https://www.datastax.com/products/datastax-astra/migration-toolkit[{astra} migration toolkit expert].

== See also

* https://www.datastax.com/events/migrating-your-legacy-cassandra-app-to-astra-db[Migrating your legacy {cass-reg} app to {astra-db}]
* xref:astra-db-serverless:databases:migration-path-serverless.adoc[Migrate to {astra-db}]
|===
1 change: 0 additions & 1 deletion modules/ROOT/pages/change-read-routing.adoc
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
= Route reads to the target
:page-tag: migration,zdm,zero-downtime,zdm-proxy,read-routing

This topic explains how you can configure {product-proxy} to route all reads to the target cluster instead of the origin cluster.

Expand Down
3 changes: 1 addition & 2 deletions modules/ROOT/pages/components.adoc
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
= Compare {company} migration tools
:navtitle: Compare migration tools
:description: Learn about {company} migration tools.
:page-tag: migration,zdm,zero-downtime,zdm-proxy,components

The {company} {product} ({product-short}) toolkit includes {product-proxy}, {product-utility}, {product-automation}, and several data migration tools.

Expand All @@ -14,7 +13,7 @@ You can use these tools alone or with {product-proxy}.
== {product-proxy}

The main component of the {company} {product} toolkit is {product-proxy-repo}[{product-proxy}], which is designed to be a lightweight proxy that handles all real-time requests generated by your client applications during the migration process.
This tool is open-source software that is open for xref:ROOT:contributions.adoc[public contributions].
This tool is open-source software.

{product-proxy} is an orchestrator for monitoring application activity and keeping multiple clusters (databases) in sync through dual writes.
{product-proxy} isn't linked to the actual migration process.
Expand Down
10 changes: 1 addition & 9 deletions modules/ROOT/pages/connect-clients-to-proxy.adoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
= Connect your client applications to {product-proxy}
:navtitle: Connect client applications to {product-proxy}
:page-tag: migration,zdm,zero-downtime,zdm-proxy,connect-apps

{product-proxy} is designed to be similar to a conventional {cass-reg} cluster.
You communicate with it using the CQL query language used in your existing client applications.
Expand Down Expand Up @@ -66,14 +65,7 @@ The details may vary but you'll still see the same general pattern described in

This topic does not describe details or APIs for any of the drivers mentioned above.
All the drivers come with a complete set of documentation for exactly this task.
The following links provide some good starting points for learning about the interfaces for each specific driver:

//TODO: Move this to the driver docs and replace this whole list with a link to the connect page.
* The https://docs.datastax.com/en/developer/java-driver/latest/manual/core/[core driver section] of the Java driver manual.
* The https://docs.datastax.com/en/developer/python-driver/latest/getting_started/[getting started guide] for the Python driver.
* The https://docs.datastax.com/en/developer/csharp-driver/latest/index.html#basic-usage[basic usage section] of the C# driver documentation.
* The https://docs.datastax.com/en/developer/cpp-driver/latest/topics/[getting started section] of the C/C++ driver documentation.
* The https://docs.datastax.com/en/developer/nodejs-driver/latest/#basic-usage[basic usage section] of the Node.js driver documentation.
For driver documentation, see xref:datastax-drivers:ROOT:index.adoc[].

== Connect applications to {product-proxy}

Expand Down
9 changes: 1 addition & 8 deletions modules/ROOT/pages/connect-clients-to-target.adoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
= Phase 5: Connect your client applications directly to the target
:navtitle: Phase 5: Connect client applications directly to the target
:page-tag: migration,zdm,zero-downtime,zdm-proxy,connect-apps,target

Phase 5 is the last phase of the xref:ROOT:introduction.adoc[migration process].
In this phase, you configure your client applications to connect directly and exclusively to the target cluster.
Expand Down Expand Up @@ -142,8 +141,6 @@ session = cluster.connect()
.Driver pseudocode to connect to {astra-db}
[%collapsible]
====
//Recalling the xref:connect-clients-to-proxy.adoc#_connecting_company_drivers_to_cassandra[pseudocode to enable your client application to connect to the proxy], here it is how your code needs to change to connect directly to {astra-db}:

The following pseudocode provides guidance on how you might change your driver's code to connect directly to {astra-db}.
This is for illustration purposes only; the exact syntax depends on your driver and programming language.

Expand Down Expand Up @@ -206,8 +203,4 @@ Your migration is now complete, and your target cluster is the source of truth f

When you are ready, you can decommission your origin cluster and {product-proxy}, as these are no longer needed and clean xref:ROOT:rollback.adoc[rollback] is no longer possible.

If you need to revert to the origin cluster after this point, you must perform a full migration with your previous origin cluster as the target to ensure that all data is rewritten and synchronized back to the origin.

== See also

* https://www.datastax.com/events/migrating-your-legacy-cassandra-app-to-astra-db[Migrating your legacy {cass-reg} app to {astra-db}]
If you need to revert to the origin cluster after this point, you must perform a full migration with your previous origin cluster as the target to ensure that all data is rewritten and synchronized back to the origin.
51 changes: 0 additions & 51 deletions modules/ROOT/pages/contributions.adoc

This file was deleted.

1 change: 0 additions & 1 deletion modules/ROOT/pages/create-target.adoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
= Create the target environment for your migration
:navtitle: Create target environment for migration
:page-tag: migration,zdm,zero-downtime,zdm-proxy,target

In this phase of the migration, you must create and prepare a new database (cluster) to be the target for your migration.
You must also gather authentication credentials to allow {product-proxy} and your client applications to connect to the new database.
Expand Down
1 change: 0 additions & 1 deletion modules/ROOT/pages/deploy-proxy-monitoring.adoc
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
= Deploy {product-proxy} and monitoring
:page-tag: migration,zdm,zero-downtime,deploy,zdm-proxy,monitoring

This topic explains how to use the Ansible automation playbooks that you set up in the xref:setup-ansible-playbooks.adoc[prior topic] to deploy {product-proxy} and its monitoring stack.

Expand Down
1 change: 0 additions & 1 deletion modules/ROOT/pages/deployment-infrastructure.adoc
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
= Deployment and infrastructure considerations
:page-tag: migration,zdm,zero-downtime,zdm-proxy,deploy,infrastructure

As part of planning your migration, you need to prepare your infrastructure.

Expand Down
31 changes: 8 additions & 23 deletions modules/ROOT/pages/faqs.adoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
= Frequently Asked Questions
:navtitle: FAQs
:page-tag: migration,zdm,zero-downtime,zdm-proxy,faq
:page-aliases: ROOT:contributions.adoc

If you're new to the {company} {product} features, these FAQs are for you.

Expand Down Expand Up @@ -84,24 +84,19 @@ Before {company} {product} was available, migrating client applications between

== Is there support available if I have questions or issues during our migration?

{product-proxy} and related software tools in the migration suite include technical assistance by {support-url}[{company} Support] for {dse-short} and Luna subscribers, and {astra} users who are on an Enterprise plan.
Free and Pay As You Go plan users do not have support access and must raise questions in the {astra-ui} chat.
https://www.datastax.com/products/luna[Luna] is a subscription to the {cass} support and expertise at {company}.
{product-proxy} and related software tools in the migration suite include technical assistance by {support-url}[{company} Support] for {dse-short} users, https://www.ibm.com/docs/en/esfac[IBM Elite Support for {cass}] subscribers, and {astra} organizations on an Enterprise plan.

For any observed problems with {product-proxy}, submit a {product-proxy-repo}/issues[GitHub Issue] in the {product-proxy} GitHub repo.

Additional examples serve as templates, from which you can learn about migrations.
{company} does not assume responsibility for making the templates work for specific use cases.

== Where are the public GitHub repos?

//TODO: Move to contribution guide.
== Can I contribute to {product-proxy}?

All the {product-proxy} GitHub repos are public and open source.
You are welcome to read the code and submit feedback via GitHub Issues per repo.
In addition to sending feedback, you may submit Pull Requests (PRs) for potential inclusion.
Yes.
See https://github.com/datastax/zdm-proxy/blob/main/CONTRIBUTING.md[CONTRIBUTING.md].

To submit PRs, you must for first agree to the https://cla.datastax.com/[{company} Contribution License Agreement (CLA)].
== Where are the public GitHub repos?

* {product-proxy-repo}[{product-proxy}] repo.

Expand All @@ -111,7 +106,6 @@ To submit PRs, you must for first agree to the https://cla.datastax.com/[{compan

* {dsbulk-migrator-repo}[dsbulk-migrator] repo for the tool that allows simple data migrations without validation and reconciliation capabilities.


== Does {product-proxy} support Transport Layer Security (TLS)?

Yes, and here's a summary:
Expand Down Expand Up @@ -164,14 +158,5 @@ At the same time, with on-premise clusters you take on the cost of infrastructur
Ranging from large enterprises to small teams, IT managers, operators, and developers are realizing that the Total Cost of Ownership (TCO) with cloud solutions is much lower than continuing to run on-prem physical data centers.

A CNDB like {astra-db} is a different environment.
Running on proven cloud providers like AWS, Google Cloud, and Azure, {astra-db} greatly reduces complexity and increases convenience by surfacing a subset of configurable settings, providing a UI (the {astra-ui}) and APIs and CLI tools to interact with your {astra-db} organizations and databases.

//TODO: Content to incorporate somewhere:

////
Zero-Downtime Migration (ZDM) Proxy is a proxy that mirrors traffic between the origin and target database. The requests are CQL-oriented - effectively, any database that uses the Cassandra drivers can use the proxy. Therefore, it can be used with Apache Cassandra, DataStax Enterprise (including Search and Graph through the driver), ScyllaDB, Instaclutsr, Amazon Keyspaces, Microsoft CosmosDB, Aiven’s Cassandra, Yugabyte, and anything else that the drivers can connect to. A matrix of what we’ve tested is found here: CQL databases tested with ZDM Proxy.

Cassandra Data Migrator migrates historical data and does validation and reconciliation. It uses the CQL interface to do its work. Therefore, it can be used to migrate data from any origin database that speaks CQL.

Astra DB Sideloader is able to import native Cassandra data (sstables) such as backups from an origin database and load them directly into the Astra Serverless data plane. Because it takes native Cassandra data, we can only import data from (specific versions of) native Cassandra databases such as Apache Cassandra, DataStax Enterprise, Hyper-Converged Database, Instaclustr, and Aiven. Sideloader cannot import data from databases that are simply Cassandra compatible, such as ScyllaDB, Keyspaces, CosmosDB, or Yugabyte, which don’t have the same native Cassandra format. In such cases, customers can use the Cassandra Data Migrator, which uses CQL.
////
Running on proven cloud providers like AWS, Google Cloud, and Azure, {astra-db} greatly reduces complexity and increases convenience by surfacing a subset of configurable settings.
It provides a UI (the {astra-ui}), APIs, and CLI tools to interact with your {astra-db} organizations and databases.
3 changes: 1 addition & 2 deletions modules/ROOT/pages/feasibility-checklists.adoc
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
= Feasibility checks
:page-tag: migration,zdm,zero-downtime,zdm-proxy,feasibility
:page-aliases: ROOT:preliminary-steps.adoc

Before starting your migration, refer to the following considerations to ensure that your client application workload and xref:glossary.adoc#origin[**Origin**] are suitable for this {product} process.
Expand Down Expand Up @@ -66,7 +65,7 @@ For example, if your compound primary key is `PRIMARY KEY (A, B)` and you always
== Considerations for {astra-db} migrations

{astra-db} implements guardrails and sets limits to ensure good practices, foster availability, and promote optimal configurations for your databases.
Check the list of https://docs.datastax.com/en/astra-serverless/docs/plan/planning.html#_astra_db_database_guardrails_and_limits[guardrails and limits] to make sure that your application workload can be successful within these limits.
Check the list of xref:astra-db-serverless:databases:database-limits.adoc[guardrails and limits] to make sure that your application workload can be successful within these limits.

If you need to make changes to the application or data model to ensure that your workload can run successfully in {astra-db}, then you need to do these changes before you start the migration process.

Expand Down
3 changes: 1 addition & 2 deletions modules/ROOT/pages/glossary.adoc
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
= Glossary
:page-tag: migration,zdm,zero-downtime,glossary

//TODO: Determine which terms are actually needed. Convert to partials if the definitions need to be repeated, otherwise replace links to this page with links to more useful and complete information.

Expand Down Expand Up @@ -27,7 +26,7 @@ For more information, see xref:ROOT:enable-async-dual-reads.adoc[].

{cass-short} Query Language (CQL) is a query language for the {cass-short} database.
It includes DDL and DML statements.
For details, see https://docs.datastax.com/en/astra/astra-db-vector/cql/develop-with-cql.html[Develop with the {cass-short} Query Language].
For details, see the xref:cql:ROOT:index.adoc[{cass-short} Query Language documentation].

== Dual-write logic

Expand Down
5 changes: 2 additions & 3 deletions modules/ROOT/pages/hcd-migration-paths.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ During the {product-short} process, you use a xref:ROOT:migrate-and-validate-dat

* Choose a data migration tool that also includes strong validation capabilities, such as xref:ROOT:cassandra-data-migrator.adoc[{cass-migrator} ({cass-migrator-short})].
* Be aware of incompatible data types that can fail to migrate from your old cluster.
//For example, {hcd-short} 1.2.3 doesn't support tuples in {dse-short} versions 6.8.4 and earlier.

Data validation tools can identify inconsistencies as missing or mismatched data, but you still need to have a plan to resolve them.
For example, you might need to modify your applications to use a different data type or perform additional post-migration writes to populate lost data.
Expand Down Expand Up @@ -76,5 +75,5 @@ If you have questions about your {hcd-short} migration, contact your {company} a
== See also

* xref:ROOT:mc-migration-paths.adoc[]
//* xref:1.2@hyper-converged-database:migrate:dse-68-to-hcd-12.adoc[In-place upgrade from {dse-short} 6.8 to {hcd-short} 1.2.3]
//* xref:1.1@hyper-converged-database:migrate:dse-51-to-hcd-11.adoc[In-place upgrade from {dse-short} 5.1 to {hcd-short} 1.1]
* xref:1.2@hyper-converged-database:migrate:dse-68-to-hcd-12.adoc[In-place upgrade from {dse-short} 6.8 to {hcd-short} 1.2.3]
* xref:1.1@hyper-converged-database:migrate:dse-51-to-hcd-11.adoc[In-place upgrade from {dse-short} 5.1 to {hcd-short} 1.1]
Loading