You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: modules/ROOT/pages/components.adoc
+15-2Lines changed: 15 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -129,6 +129,19 @@ You can use {dsbulk-migrator} alone or with {product-proxy}.
129
129
130
130
For more information, see xref:ROOT:dsbulk-migrator.adoc[].
131
131
132
-
=== Custom data migration processes
132
+
=== Other data migration processes
133
133
134
-
If you want to write your own custom data migration processes, you can use a tool like Apache Spark(TM).
134
+
Depending on your source and target databases, there might be other data migration tools available for your migration.
135
+
For example, if you want to write your own custom data migration processes, you can use a tool like Apache Spark(TM).
136
+
137
+
To use a data migration tool with {product-proxy}, it must meet the following requirements:
138
+
139
+
* Built-in data validation functionality or compatibility with another data validation tool, such as {cass-migrator-short}.
140
+
141
+
* Avoids or minimizes changes to your data model, including column names and data types.
142
+
+
143
+
Because {product-proxy} requires that both databases can successfully process the same read/write statements, migrations that perform significant data transformations might not be compatible with {product-proxy}.
144
+
The impact of data transformations depends on your specific data model, database platforms, and the scale of your migration.
145
+
146
+
For data-only migrations that aren't concerned with live application traffic or minimizing downtime, your chosen tool depends on your source and target databases, the compatibility of the data models, and the scale of your migration.
147
+
Describing the full range of these tools is beyond the scope of this document, which focuses on full-scale platform migrations with the {product-short} tools and verified {product-short}-compatible data migration tools.
Copy file name to clipboardExpand all lines: modules/ROOT/pages/hcd-migration-paths.adoc
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -25,7 +25,7 @@ During the {product-short} process, you use a xref:ROOT:migrate-and-validate-dat
25
25
26
26
{company} recommends that you do the following:
27
27
28
-
* Choose a data migration tool that also includes strong validation capabilities, such as [{cass-migrator} ({cass-migrator-short})].
28
+
* Choose a data migration tool that also includes strong validation capabilities, such as xref:ROOT:cassandra-data-migrator.adoc[{cass-migrator} ({cass-migrator-short})].
29
29
* Be aware of incompatible data types that can fail to migrate from your old cluster.
30
30
//For example, {hcd-short} 1.2.3 doesn't support tuples in {dse-short} versions 6.8.4 and earlier.
31
31
@@ -44,7 +44,7 @@ For information about clusters that are eligible for {product} to {hcd-short}, s
44
44
To begin your {product} to {hcd-short}, go to xref:ROOT:introduction.adoc[].
45
45
46
46
You must set up your {hcd-short} clusters before you can enable the {product-proxy}.
47
-
For information about installing and configuring {hcd-short}, see the xref:1.1@hyper-converged-database:get-started:get-started-hcd.adoc[{hcd-short} documentation].
47
+
For information about installing and configuring {hcd-short}, see the xref:hyper-converged-database:get-started:get-started-hcd.adoc[{hcd-short} documentation].
48
48
49
49
== Migrate your code
50
50
@@ -67,7 +67,7 @@ However, you might want to update your code to take advantage of features and im
67
67
For example, {hcd-short} includes an {astra} {data-api} server that you can use for application development with your {hcd-short} databases, including vector search and hybrid search capabilities.
68
68
It provides several client libraries and direct access over HTTP.
69
69
70
-
For more information about connecting to {hcd-short} databases, see the xref:1.1@hyper-converged-database:get-started:get-started-hcd.adoc[{hcd-short} documentation].
70
+
For more information about connecting to {hcd-short} databases, see the xref:hyper-converged-database:get-started:get-started-hcd.adoc[{hcd-short} documentation].
With {product}, your applications can continue to run while you migrate data from one {cass-short}-based cluster to another, resulting in little or no downtime and minimal service interruptions.
6
+
With {product}, your applications can continue to run while you migrate data from one {cass-short}-based database to another, resulting in little or no downtime and minimal service interruptions.
7
7
8
8
.Why migrate?
9
9
[%collapsible]
@@ -21,9 +21,9 @@ For example, you might move from self-managed clusters to a cloud-based Database
21
21
* You want to consolidate client applications running on separate clusters onto one shared cluster to minimize sprawl and maintenance.
22
22
====
23
23
24
-
{product-short} is comprised of {product-proxy}, {product-utility}, and {product-automation}, which orchestrate activity-in-transition on your clusters.
24
+
{product-short} is comprised of {product-proxy}, {product-utility}, and {product-automation}, which orchestrate activity-in-transition on your databases.
25
25
To move and validate data, you use {sstable-sideloader}, {cass-migrator}, or {dsbulk-migrator}.
26
-
{product-proxy} keeps your clusters in sync at all times by a dual-write logic configuration, which means you can stop the migration or xref:rollback.adoc[roll back] at any point.
26
+
{product-proxy} keeps your databases in sync at all times by a dual-write logic configuration, which means you can stop the migration or xref:rollback.adoc[roll back] at any point.
27
27
For more information about these tools, see xref:ROOT:components.adoc[].
28
28
29
29
When the migration is complete, the data is present in the new database, and you can update your client applications to connect exclusively to the new database.
@@ -40,33 +40,29 @@ For more information, see xref:ROOT:feasibility-checklists.adoc[]
40
40
41
41
A migration project includes preparation for the migration and five migration phases.
42
42
43
-
The following sections describe the major events in each phase and how your client applications perform read and write operations on your origin and target clusters during each phase.
43
+
The following sections describe the major events in each phase and how your client applications perform read and write operations on your origin and target databases during each phase.
44
44
45
45
The _origin_ is is your existing {cass-short}-based environment, which can be {cass}, {dse-short}, or {astra-db}.
46
46
The _target_ is your new {cass-short}-based environment where you want to migrate your data and client applications.
47
47
48
-
=== Pre-migration client application operations
48
+
=== Migration planning
49
49
50
-
Here's a look at a pre-migration from a high-level view.
51
-
At this point, your client applications are performing read/write operations with an existing CQL-compatible database such as {cass}, {dse-short}, or {astra-db}.
50
+
Before you begin a migration, your client applications perform read/write operations with your existing CQL-compatible database, such as {cass}, {dse-short}, {hcd-short}, or {astra-db}.
//The text from this note is duplicated on the feasibility checks page.
56
-
[TIP]
54
+
While your application is stable with the current data model and database platform, you might need to make some adjustments before enabling {product-proxy}.
55
+
56
+
[IMPORTANT]
57
57
====
58
-
For the migration to succeed, the origin and target clusters must have matching schemas.
58
+
For the migration to succeed, the origin and target databases must have matching schemas, including keyspace names, table names, column names, and data types.
59
59
60
-
A CQL statement that your client application sends to {product-proxy} must be able to succeed on both the origin and target clusters.
60
+
A CQL statement that your client application sends to {product-proxy} must be able to succeed on both databases.
61
61
62
-
This means that any keyspace that your client application uses must exist on both the origin and target clusters with the same name.
63
-
The table names, column names, and data types must also match.
64
62
For more information, see xref:feasibility-checklists.adoc#_schemakeyspace_compatibility[Schema/keyspace compatibility].
65
63
====
66
64
67
-
=== Migration planning
68
-
69
-
Before you begin the migration, plan and prepare for the migration:
65
+
Before you begin the migration, plan and prepare for the migration by setting up your target infrastructure, reviewing compatibility requirements for {product-proxy}, and understanding when you can rollback the migration if necessary:
70
66
71
67
* xref:ROOT:feasibility-checklists.adoc[]
72
68
* xref:ROOT:deployment-infrastructure.adoc[]
@@ -77,43 +73,55 @@ Before you begin the migration, plan and prepare for the migration:
77
73
78
74
In this first phase, deploy the {product-proxy} instances and connect client applications to the proxies.
79
75
This phase activates the dual-write logic.
80
-
Writes are bifurcated (sent to both the origin and target), while reads are executed on the origin only.
76
+
Writes are sent to both the origin and target databases, while reads are executed on the origin only.
77
+
78
+
For more information and instructions, see xref:ROOT:phase1.adoc[].
In this optional phase, you can enable the _asynchronous dual reads_ feature to test the target cluster's ability to handle a production workload before you permanently switch your applications to the target cluster at the end of the migration process.
94
+
This phase is optional but recommended.
95
+
96
+
In this phase, you can enable the _asynchronous dual reads_ feature to test the target database's ability to handle a production workload before you permanently switch your applications to the target database at the end of the migration process.
96
97
97
-
When enabled, {product-proxy} sends asynchronous read requests to the secondary cluster in addition to the synchronous read requests that are sent to the primary cluster by default.
98
+
When enabled, {product-proxy} sends asynchronous read requests to the secondary database in addition to the synchronous read requests that are sent to the primary database by default.
98
99
99
100
For more information, see xref:ROOT:enable-async-dual-reads.adoc[] and xref:ROOT:components.adoc#how_zdm_proxy_handles_reads_and_writes[How {product-proxy} handles reads and writes].
=== Phase 5: Connect directly to the target cluster
115
+
=== Phase 5: Connect directly to the target database
116
+
117
+
In the final phase of the migration, you move your client applications off {product-proxy} and connect them directly to the target database.
118
+
119
+
Once this happens, the migration is complete, and you now exclusively use the target database.
113
120
114
-
In this phase, you move your client applications off {product-proxy} and connect them directly to the target cluster.
121
+
Whether you choose to destroy to retain the origin database depends on your organization's policies and whether you might need to revert to it in the future.
122
+
However, be aware that the origin database is no longer synchronized with the target database, and the origin database won't contain writes that happen after you disconnect {product-proxy}.
115
123
116
-
Once this happens, the migration is complete, and you now exclusively use the target cluster.
124
+
For more information, see xref:ROOT:connect-clients-to-target.adoc[].
@@ -128,4 +136,9 @@ All browsers are supported except Safari.
128
136
You don't need to install anything because the lab uses a pre-configured GitPod environment.
129
137
130
138
This lab provides an interactive, detailed walkthrough of the migration process, including pre-migration preparation and each of the five migration phases.
131
-
The lab describes and demonstrates all steps and automation required to prepare for and complete a migration from any supported origin database to any supported target database.
139
+
The lab describes and demonstrates all steps and automation required to prepare for and complete a migration from any supported origin database to any supported target database.
Copy file name to clipboardExpand all lines: modules/ROOT/pages/migrate-and-validate-data.adoc
+12-2Lines changed: 12 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -36,6 +36,16 @@ You can use {dsbulk-migrator} alone or with {product-proxy}.
36
36
37
37
For more information, see xref:ROOT:dsbulk-migrator.adoc[].
38
38
39
-
== Custom data migration processes
39
+
== Other data migration processes
40
40
41
-
If you want to write your own custom data migration processes, you can use a tool like Apache Spark(TM).
41
+
Depending on your source and target databases, there might be other {product-short}-compatible data migration tools available, or you can write your own custom data migration processes with a tool like Apache Spark(TM).
42
+
43
+
To use a data migration tool with {product-proxy}, it must meet the following requirements:
44
+
45
+
* Built-in data validation functionality or compatibility with another data validation tool, such as {cass-migrator-short}.
46
+
This is crucial to a successful migration.
47
+
48
+
* Preserves the data model, including column names and data types, so that {product-proxy} can send the same read/write statements to both databases successfully.
49
+
+
50
+
Migrations that perform significant data transformations might not be compatible with {product-proxy}.
51
+
The impact of data transformations depends on your specific data model, database platforms, and the scale of your migration.
0 commit comments