Data Transmission Service (DTS) migra datos de una instancia PolarDB-X 2.0 a una instancia Tablestore con un tiempo de inactividad mínimo. Este enfoque admite la migración de esquema, la migración completa de datos y la migración incremental de datos, por lo que puede mantener la base de datos de origen en línea mientras se ejecuta la migración.
Requisitos previos
Antes de empezar, asegúrese de tener lo siguiente:
Una instancia Tablestore. Para obtener instrucciones de configuración, consulte Use Tablestore
El AccessKey ID y el AccessKey secret de la cuenta de Alibaba Cloud (no de un usuario de Resource Access Management (RAM)) propietaria de la instancia Tablestore. Consulte Create an AccessKey pair
Si usa un AccessKey ID de usuario RAM, la tarea de migración de datos puede fallar porque al usuario RAM no se le conceden los permisos obligatorios. En su lugar, use las credenciales de la cuenta de Alibaba Cloud.
Límites
Base de datos de origen
|
Restricción |
Detalle |
|
Restricción de clave principal o única |
Las tablas deben tener una restricción PRIMARY KEY o UNIQUE con todos los campos únicos. Sin esta restricción, el destino puede contener registros duplicados. |
|
Uso de mayúsculas en los nombres de tabla |
Las tablas con letras mayúsculas en sus nombres solo admiten la migración de esquema; la migración completa y la migración incremental no son compatibles para estas tablas. |
|
Máximo de tablas por tarea |
Hasta 5,000 tablas cuando se migran tablas individuales con cambio de nombre. Si se excede este límite, se produce un error de solicitud. Para migrar más tablas, divida el trabajo en varias tareas o migre toda la base de datos. |
|
Registro binario |
El parámetro |
Destino (Tablestore)
|
Restricción |
Detalle |
|
Máximo de tablas |
Hasta 64 tablas por instancia Tablestore. Si se excede este límite, se produce un error de migración. Comuníquese con el soporte técnico de Tablestore para aumentar el límite. |
|
Nombres de tablas y columnas |
Los nombres deben contener solo letras, dígitos y guiones bajos ( |
|
Alcance de objetos |
Solo se puede migrar una base de datos (o varias tablas dentro de la misma base de datos) por tarea. No se admite la asignación de nombres por base de datos. |
General
Ejecute las migraciones fuera de las horas pico. La migración completa de datos usa recursos importantes de lectura y escritura en el origen y el destino, lo que aumenta la carga del servidor de la base de datos.
La migración completa de datos genera fragmentación en las tablas de destino. Después de la migración, el uso de almacenamiento del destino supera al uso de almacenamiento del origen.
Escriba datos en el destino solo a través de DTS durante la migración. Escribir desde otros orígenes provoca inconsistencia de datos entre el origen y el destino.
Facturación
|
Tipo de migración |
Cargo por configuración de la instancia |
Cargo por tráfico de Internet |
|
Migración de esquema y migración completa de datos |
Gratuito |
Gratuito |
|
Migración incremental de datos |
Con cargo. Consulte Billing overview. |
— |
Operaciones SQL compatibles para la migración incremental
|
Tipo de operación |
Instrucciones SQL |
|
DML |
INSERT, UPDATE, DELETE |
Permisos obligatorios para la cuenta de base de datos
|
Base de datos |
Migración de esquema |
Migración completa de datos |
Migración incremental de datos |
|
PolarDB-X 2.0 de origen |
SELECT |
SELECT |
REPLICATION SLAVE, REPLICATION CLIENT y SELECT sobre los objetos que se migrarán |
Para obtener instrucciones sobre cómo crear cuentas y conceder permisos, consulte Manage database accounts y Permissions required for an account to synchronize data.
Cree una tarea de migración
Paso 1: Abra la página Data Migration Tasks
Inicie sesión en Data Management (DMS) console.
En la barra de navegación superior, haga clic en DTS.
En el panel de navegación izquierdo, elija DTS (DTS) > Data Migration.
Los pasos anteriores pueden variar según el modo y el diseño de la consola DMS. Consulte Modo simple y Personalice el diseño y el estilo de la consola DMS. También puede ir directamente a la página Data Migration Tasks de la nueva consola DTS.
Paso 2: Seleccione una región
En la lista desplegable situada junto a Data Migration Tasks, seleccione la región donde reside la instancia de migración de datos.
En la nueva consola DTS, seleccione la región en la esquina superior izquierda de la página.
Paso 3: Configure las bases de datos de origen y destino
Haga clic en Create Task. En el asistente Create Task, configure los parámetros que se indican a continuación.
Base de datos de origen
|
Parámetro |
Descripción |
|
Select an existing DMS database instance |
(Opcional) Seleccione una instancia DMS existente para rellenar automáticamente los ajustes de conexión, o déjelo en blanco para configurarlos manualmente. |
|
Database Type |
Seleccione PolarDB-X 2.0. |
|
Access Method |
Seleccione Alibaba Cloud Instance. |
|
Instance Region |
La región donde reside la instancia PolarDB-X 2.0 de origen. |
|
Replicate Data Across Alibaba Cloud Accounts |
Seleccione No si el origen y el destino están en la misma cuenta. |
|
Instance ID |
El ID de la instancia PolarDB-X 2.0 de origen. |
|
Database Account |
La cuenta con los permisos enumerados en la sección Required database account permissions. |
|
Database Password |
La contraseña de la cuenta de base de datos. |
Base de datos de destino
|
Parámetro |
Descripción |
|
Select an existing DMS database instance |
(Opcional) Seleccione una instancia DMS existente para rellenar automáticamente los ajustes de conexión, o déjelo en blanco para configurarlos manualmente. |
|
Database Type |
Seleccione Tablestore. |
|
Access Method |
Seleccione Alibaba Cloud Instance. |
|
Instance Region |
La región donde reside la instancia Tablestore de destino. |
|
Instance ID |
El ID de la instancia Tablestore de destino. |
|
AccessKey ID of Alibaba Cloud Account |
El AccessKey ID de la cuenta de Alibaba Cloud propietaria de la instancia Tablestore. No use un AccessKey ID de usuario RAM. |
|
AccessKey Secret of Alibaba Cloud Account |
El AccessKey secret de la cuenta de Alibaba Cloud propietaria de la instancia Tablestore. |
Paso 4: Pruebe la conectividad
Haga clic en Test Connectivity and Proceed.
DTS agrega automáticamente sus bloques CIDR de servidor a la lista blanca de IP de las instancias de base de datos de Alibaba Cloud. Para bases de datos autogestionadas en instancias de Elastic Compute Service (ECS), DTS agrega los bloques CIDR a las reglas del security group de ECS. Si la base de datos autogestionada abarca varias instancias ECS, agregue manualmente los bloques CIDR de DTS al security group de cada instancia. Para bases de datos locales o de nubes de terceros, agregue manualmente los bloques CIDR a la lista blanca de IP de la base de datos. Consulte Agregue los bloques CIDR de los servidores DTS a la configuración de seguridad de las bases de datos locales.
Agregar los bloques CIDR de los servidores DTS a listas blancas de IP o reglas de security group introduce riesgos de seguridad. Antes de continuar, tome medidas preventivas, entre ellas: fortalecer la seguridad de cuentas y contraseñas, restringir los puertos expuestos, autenticar las llamadas de API, auditar periódicamente las listas blancas de IP y las reglas de security group, y usar Express Connect, VPN Gateway o Smart Access Gateway para conectar las bases de datos a DTS.
Paso 5: Configure los objetos y las opciones de migración
Configure los parámetros que se indican a continuación.
Tipo de migración
|
Opción |
Cuándo usarla |
|
Schema Migration + Full Data Migration |
Migración única. Se recomienda no escribir datos en la base de datos de origen durante la migración para garantizar la consistencia de los datos. |
|
Schema Migration + Full Data Migration + Incremental Data Migration |
Migración con tiempo de inactividad mínimo. DTS continúa capturando los cambios del origen durante la migración completa y luego los aplica al destino. |
Si no selecciona Incremental Data Migration, se recomienda no escribir datos en la base de datos de origen durante la migración. Esto garantiza la consistencia de los datos entre las bases de datos de origen y destino.
Manejo de conflictos
| Parámetro | Opción | Comportamiento |
|---|---|---|
| Processing Mode of Conflicting Tables | Precheck and Report Errors | La comprobación previa falla si las tablas de destino comparten nombres con las tablas de origen. Use la asignación de nombres de objetos para cambiar el nombre de las tablas antes de iniciar. |
| Ignore Errors and Proceed | Omite la comprobación previa. Las filas con claves principales coincidentes no se migran; las diferencias de esquema pueden provocar una migración parcial o un error de la tarea. Úselo con precaución. |
Configuración específica de Tablestore
|
Parámetro |
Opciones y guía |
|
Processing Policy of Dirty Data |
Skip ignora los errores de escritura y continúa. Block detiene la tarea ante errores de escritura. |
|
Data Write Mode |
Overwrite Row usa la operación UpdateRowChange para sobrescribir filas en la instancia Tablestore. Update Row usa la operación PutRowChange para actualizar filas en la instancia Tablestore. |
|
Batch Write Mode |
BulkImportRequest escribe datos sin conexión y ofrece mayor eficiencia de lectura y escritura a menor costo. BatchWriteRowRequest escribe datos en lotes. Use BulkImportRequest para lograr mayor eficiencia y reducir los costos de uso de la instancia Tablestore. |
|
More (avanzado) |
Queue Size: longitud de la cola de escritura. Thread Quantity: número de hilos de devolución de llamada de escritura. Concurrency: máximo de hilos de escritura simultáneos. Buckets: máximo de buckets simultáneos para datos incrementales (debe ser menor o igual que Concurrency). |
Selección de objetos
|
Parámetro |
Descripción |
|
Operation Types |
Los tipos de operación DML que se migrarán. De forma predeterminada, todos los tipos están seleccionados. |
|
Capitalization of Object Names in Destination Instance |
Controla el uso de mayúsculas en los nombres de bases de datos, tablas y columnas del destino. El valor predeterminado es DTS default policy. Consulte Especifique el uso de mayúsculas en los nombres de los objetos de la instancia de destino. |
|
Source Objects |
Seleccione las tablas o bases de datos que se migrarán y haga clic en el ícono de flecha para agregarlas a Selected Objects. Tablestore admite migrar solo una base de datos, o varias tablas dentro de la misma base de datos, por tarea. |
|
Selected Objects |
Haga clic derecho en un objeto para cambiarle el nombre. Haga clic en Batch Edit para cambiar el nombre de varios objetos. Nota: no se admite la asignación de nombres de bases de datos; solo se pueden asignar nombres de tablas y columnas. Para filtrar filas, haga clic derecho en una tabla y especifique condiciones SQL. Consulte Use SQL conditions to filter data. |
Paso 6: Configure los ajustes avanzados
Haga clic en Next: Advanced Settings y configure los parámetros que se indican a continuación.
|
Parámetro |
Descripción |
|
Select the dedicated cluster used to schedule the task |
De forma predeterminada, DTS programa la tarea en un clúster compartido. Seleccione un clúster dedicado para usar recursos dedicados. Consulte ¿Qué es un clúster dedicado de DTS?. |
|
Set Alerts |
Seleccione Yes para recibir notificaciones cuando la tarea presente errores o la latencia de la migración supere un umbral. Especifique los contactos de alerta y los umbrales. Consulte Configure el monitoreo y las alertas. |
|
Retry Time for Failed Connections |
Cuánto tiempo reintenta DTS una conexión con errores antes de marcar la tarea como con errores. Intervalo: 10–1440 minutos. Valor predeterminado: 720 minutos. Establezca como mínimo 30 minutos para permitir que las fallas transitorias se recuperen. |
|
The wait time before a retry when other issues occur in the source and destination databases |
Cuánto tiempo reintenta DTS las operaciones DDL o DML con errores. Intervalo: 1–1440 minutos. Valor predeterminado: 10 minutos. Establezca como mínimo 10 minutos. Este valor debe ser menor que Retry Time for Failed Connections. |
|
Enable Throttling for Full Data Migration |
Limita la carga de lectura/escritura en el origen y el destino durante la migración completa. Configure QPS to the source database, RPS of Full Data Migration y Data migration speed for full migration (MB/s). Solo se muestra cuando Full Data Migration está seleccionado. |
|
Enable Throttling for Incremental Data Migration |
Limita la carga durante la migración incremental. Configure RPS of Incremental Data Migration y Data migration speed for incremental migration (MB/s). Solo se muestra cuando Incremental Data Migration está seleccionado. |
|
Environment Tag |
Una etiqueta opcional para identificar la instancia DTS. |
|
Configure ETL |
La extracción, transformación y carga (ETL) no se admite para esta ruta de migración. Seleccione No. |
|
Whether to delete SQL operations on heartbeat tables of forward and reverse tasks |
Seleccione Yes para evitar que DTS escriba en las tablas de heartbeat de la base de datos de origen. En este caso, puede mostrarse una latencia de la instancia DTS. Seleccione No para escribir operaciones de heartbeat. En este caso, pueden verse afectadas funciones específicas, como la copia de seguridad física y la clonación de la base de datos de origen. |
Paso 7: Configure las columnas de clave principal
Haga clic en Next: Configure Database and Table Fields. En el cuadro de diálogo Note, haga clic en OK.
DTS asigna automáticamente la columna de clave principal de cada tabla a Primary Key Column de Tablestore. Para cambiar la asignación, establezca Definition Status en All y seleccione una o más columnas de la lista desplegable para crear una clave principal compuesta.
Paso 8: Ejecute la comprobación previa
Haga clic en Next: Save Task Settings and Precheck.
Para obtener una vista previa de los parámetros de API de esta configuración antes de guardarla, pase el cursor sobre Next: Save Task Settings and Precheck y haga clic en Preview OpenAPI parameters.
La tarea ejecuta una comprobación previa antes de iniciarse. Si hay elementos de la comprobación previa con errores:
Haga clic en View Details junto al elemento con errores, resuelva el problema y luego haga clic en Precheck Again.
Si se puede ignorar de forma segura un elemento de alerta, haga clic en Confirm Alert Details, haga clic en Ignore, confirme haciendo clic en OK y luego haga clic en Precheck Again.
Ignorar las alertas de la comprobación previa puede provocar inconsistencia de datos. Continúe solo si comprende las implicaciones.
Paso 9: Espere a que se supere la comprobación previa
Espere hasta que la success rate alcance 100% y luego haga clic en Next: Purchase Instance.
Paso 10: Configure la clase de instancia
En la página Purchase Instance, configure los parámetros que se indican a continuación en New Instance Class.
|
Parámetro |
Descripción |
|
Resource Group |
El resource group de la instancia DTS. Valor predeterminado: default resource group. Consulte ¿Qué es Resource Management? |
|
Instance Class |
Controla el rendimiento de la migración. Seleccione una clase según el volumen de datos y las restricciones de tiempo. Consulte Especificaciones de las instancias de migración de datos. |
Paso 11: Acepte los términos del servicio
Lea y acepte los Data Transmission Service (Pay-as-you-go) Service Terms; para ello, seleccione la casilla de verificación.
Paso 12: Inicie la migración
Haga clic en Buy and Start. La tarea aparece en la lista de tareas, donde puede monitorear su progreso.