Configuración de la tarea de sustitución de caracteres - AWS Database Migration Service

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Configuración de la tarea de sustitución de caracteres

Puede especificar que la tarea de replicación sustituya caracteres en la base de datos de destino para todas las columnas de la base de datos de origen con el tipo de WSTRING datos AWS DMS STRING o. Para obtener información sobre cómo utilizar un archivo de configuración de tareas para establecer la configuración de las tareas, consulte Ejemplo de configuración de tarea.

Puede configurar la sustitución de caracteres para cualquier tarea con puntos de enlace desde las siguientes bases de datos de origen y de destino:

  • Bases de datos de origen

    • Oracle

    • Microsoft SQL Server

    • MySQL

    • PostgreSQL

    • SAP Adaptive Server Enterprise (ASE)

    • IBM Db2 LUW

  • Bases de datos de destino:

    • Oracle

    • Microsoft SQL Server

    • MySQL

    • PostgreSQL

    • SAP Adaptive Server Enterprise (ASE)

    • Amazon Redshift

Puede especificar sustituciones de caracteres mediante el parámetro CharacterSetSettings en la configuración de la tarea. Estas sustituciones de caracteres se producen para caracteres especificados mediante el valor de punto de código Unicode en notación hexadecimal. Puede implementar las sustituciones en dos fases, en el orden siguiente si se especifican ambas:

  1. Reemplazo de caracteres individuales: AWS DMS puede reemplazar los valores de los caracteres seleccionados en el origen por valores de reemplazo específicos de los caracteres correspondientes del destino. Utilice la matriz CharacterReplacements de CharacterSetSettings para seleccionar todos los caracteres de origen que tengan los puntos de código Unicode que especifique. Utilice esta matriz también para especificar los puntos de código de sustitución para los caracteres correspondientes en el destino.

    Para seleccionar todos los caracteres del origen que tengan un punto de código determinado, establezca una instancia de SourceCharacterCodePoint en la matriz CharacterReplacements en ese punto de código. A continuación, especifique el punto de código de sustitución para todos los caracteres de destino equivalentes estableciendo la instancia correspondiente de TargetCharacterCodePoint en esta matriz. Para eliminar los caracteres de destino en lugar de reemplazarlos, establezca las instancias adecuadas de TargetCharacterCodePoint en cero (0). Puede sustituir o eliminar tantos valores diferentes de caracteres de destino como desee especificando pares adicionales de configuración TargetCharacterCodePoint SourceCharacterCodePoint y en la matriz CharacterReplacements. Si especifica el mismo valor para varias instancias de SourceCharacterCodePoint, se aplica al destino el valor de la última configuración correspondiente de TargetCharacterCodePoint.

    Por ejemplo, suponga que especifica los siguientes valores para CharacterReplacements.

    "CharacterSetSettings": { "CharacterReplacements": [ { "SourceCharacterCodePoint": 62, "TargetCharacterCodePoint": 61 }, { "SourceCharacterCodePoint": 42, "TargetCharacterCodePoint": 41 } ] }

    En este ejemplo, AWS DMS reemplaza todos los caracteres con el valor hexadecimal 62 del punto de código fuente del destino por caracteres con el valor 61 del punto de código. Además, AWS DMS reemplaza todos los caracteres con el punto de código fuente 42 en el destino por caracteres con el valor de punto de código 41. En otras palabras, AWS DMS sustituye todas las instancias de la letra 'b' del destino por la letra 'a'. Del mismo modo, AWS DMS reemplaza todas las instancias de 'B' la letra del destino por la letra'A'.

  2. Validación y reemplazo del conjunto de caracteres: una vez completada la sustitución de caracteres individuales, AWS DMS puede asegurarse de que todos los caracteres de destino tengan puntos de código Unicode válidos en el conjunto de caracteres único que especifique. Puede utilizar CharacterSetSupport en CharacterSetSettings para configurar la verificación y modificación de este carácter de destino. Para especificar el conjunto de caracteres de verificación, establezca CharacterSet en CharacterSetSupport en el valor de cadena del conjunto de caracteres. (Los posibles valores para CharacterSet son los siguientes). Puede hacer que AWS DMS modifique los caracteres de destino no válidos de una de las siguientes maneras:

    • Especificar un único punto de código Unicode de sustitución para todos los caracteres de destino no válidos, independientemente de su punto de código actual. Para configurar este punto de código de sustitución, CharacterSetSupport establezca ReplaceWithCharacterCodePoint en el valor especificado.

    • Configurar la eliminación de todos los caracteres de destino no válidos estableciendo ReplaceWithCharacterCodePoint en cero (0).

    Por ejemplo, suponga que especifica los siguientes valores para CharacterSetSupport.

    "CharacterSetSettings": { "CharacterSetSupport": { "CharacterSet": "UTF16_PlatformEndian", "ReplaceWithCharacterCodePoint": 0 } }

    En este ejemplo, AWS DMS elimina todos los caracteres encontrados en el destino que no sean válidos en el juego de "UTF16_PlatformEndian" caracteres. Por tanto, todos los caracteres especificados con el valor hexadecimal 2FB6 se eliminan. Este valor no es válido porque se trata de un punto de código Unicode de 4 bytes y los conjuntos de caracteres UTF16 solo aceptan caracteres con puntos de código de 2 bytes.

nota

La tarea de replicación completa todas las sustituciones de caracteres especificadas antes de iniciar las transformaciones globales o de nivel de tabla que especifique a través del mapeo de tablas. Para obtener más información sobre la asignación de tablas, consulte Uso del mapeo de tablas para especificar la configuración de tareas.

La sustitución de caracteres no admite los tipos de datos LOB. Esto incluye cualquier tipo de datos que DMS considere un tipo de datos LOB. Por ejemplo, el tipo de datos Extended de Oracle se considera un LOB. Para obtener más información acerca de las tipos de datos de origen, consulte Tipos de datos de origen para Oracle a continuación:

Los valores AWS DMS compatibles CharacterSet aparecen en la siguiente tabla.

UTF-8 ibm-860_P100-1995 ibm-280_P100-1995
UTF-16 ibm-861_P100-1995 ibm-284_P100-1995
UTF-16BE ibm-862_P100-1995 ibm-285_P100-1995
UTF-16LE ibm-863_P100-1995 ibm-290_P100-1995
UTF-32 ibm-864_X110-1999 ibm-297_P100-1995
UTF-32BE ibm-865_P100-1995 ibm-420_X120-1999
UTF-32LE ibm-866_P100-1995 ibm-424_P100-1995
UTF16_PlatformEndian ibm-867_P100-1998 ibm-500_P100-1995
UTF16_OppositeEndian ibm-868_P100-1995 ibm-803_P100-1999
UTF32_PlatformEndian ibm-869_P100-1995 ibm-838_P100-1995
UTF32_OppositeEndian ibm-878_P100-1996 ibm-870_P100-1995
UTF-16BE,version=1 ibm-901_P100-1999 ibm-871_P100-1995
UTF-16LE,version=1 ibm-902_P100-1999 ibm-875_P100-1995
UTF-16,version=1 ibm-922_P100-1999 ibm-918_P100-1995
UTF-16,version=2 ibm-1168_P100-2002 ibm-930_P120-1999
UTF-7 ibm-4909_P100-1999 ibm-933_P110-1995
IMAP-mailbox-name ibm-5346_P100-1998 ibm-935_P110-1999
SCSU ibm-5347_P100-1998 ibm-937_P110-1999
BOCU-1 ibm-5348_P100-1997 ibm-939_P120-1999
CESU-8 ibm-5349_P100-1998 ibm-1025_P100-1995
ISO-8859-1 ibm-5350_P100-1998 ibm-1026_P100-1995
US-ASCII ibm-9447_P100-2002 ibm-1047_P100-1995
gb18030 ibm-9448_X100-2005 ibm-1097_P100-1995
ibm-912_P100-1995 ibm-9449_P100-2002 ibm-1112_P100-1995
ibm-913_P100-2000 ibm-5354_P100-1998 ibm-1122_P100-1999
ibm-914_P100-1995 ibm-1250_P100-1995 ibm-1123_P100-1995
ibm-915_P100-1995 ibm-1251_P100-1995 ibm-1130_P100-1997
ibm-1089_P100-1995 ibm-1252_P100-2000 ibm-1132_P100-1998
ibm-9005_X110-2007 ibm-1253_P100-1995 ibm-1137_P100-1999
ibm-813_P100-1995 ibm-1254_P100-1995 ibm-4517_P100-2005
ibm-5012_P100-1999 ibm-1255_P100-1995 ibm-1140_P100-1997
ibm-916_P100-1995 ibm-5351_P100-1998 ibm-1141_P100-1997
ibm-920_P100-1995 ibm-1256_P110-1997 ibm-1142_P100-1997
iso-8859_10-1998 ibm-5352_P100-1998 ibm-1143_P100-1997
iso-8859_11-2001 ibm-1257_P100-1995 ibm-1144_P100-1997
ibm-921_P100-1995 ibm-5353_P100-1998 ibm-1145_P100-1997
iso-8859_14-1998 ibm-1258_P100-1997 ibm-1146_P100-1997
ibm-923_P100-1998 macos-0_2-10.2 ibm-1147_P100-1997
ibm-942_P12A-1999 macos-6_2-10.4 ibm-1148_P100-1997
ibm-943_P15A-2003 macos-7_3-10.2 ibm-1149_P100-1997
ibm-943_P130-1999 macos-29-10.2 ibm-1153_P100-1999
ibm-33722_P12A_P12A-2009_U2 macos-35-10.2 ibm-1154_P100-1999
ibm-33722_P120-1999 ibm-1051_P100-1995 ibm-1155_P100-1999
ibm-954_P101-2007 ibm-1276_P100-1995 ibm-1156_P100-1999
euc-jp-2007 ibm-1006_P100-1995 ibm-1157_P100-1999
ibm-1373_P100-2002 ibm-1098_P100-1995 ibm-1158_P100-1999
windows-950-2000 ibm-1124_P100-1996 ibm-1160_P100-1999
ibm-950_P110-1999 ibm-1125_P100-1997 ibm-1164_P100-1999
ibm-1375_P100-2008 ibm-1129_P100-1997 ibm-1364_P110-2007
ibm-5471_P100-2006 ibm-1131_P100-1997 ibm-1371_P100-1999
ibm-1386_P100-2001 ibm-1133_P100-1997 ibm-1388_P103-2001
windows-936-2000 ISO_2022,locale=ja,version=0 ibm-1390_P110-2003
ibm-1383_P110-1999 ISO_2022,locale=ja,version=1 ibm-1399_P110-2003
ibm-5478_P100-1995 ISO_2022,locale=ja,version=2 ibm-5123_P100-1999
euc-tw-2014 ISO_2022,locale=ja,version=3 ibm-8482_P100-1999
ibm-964_P110-1999 ISO_2022,locale=ja,version=4 ibm-16684_P110-2003
ibm-949_P110-1999 ISO_2022,locale=ko,version=0 ibm-4899_P100-1998
ibm-949_P11A-1999 ISO_2022,locale=ko,version=1 ibm-4971_P100-1999
ibm-970_P110_P110-2006_U2 ISO_2022,locale=zh,version=0 ibm-9067_X100-2005
ibm-971_P100-1995 ISO_2022,locale=zh,version=1 ibm-12712_P100-1998
ibm-1363_P11B-1998 ISO_2022,locale=zh,version=2 ibm-16804_X110-1999
ibm-1363_P110-1997 HZ ibm-37_P100-1995,swaplfnl
windows-949-2000 x11-compound-text ibm-1047_P100-1995,swaplfnl
windows-874-2000 ISCII,version=0 ibm-1140_P100-1997,swaplfnl
ibm-874_P100-1995 ISCII,version=1 ibm-1141_P100-1997,swaplfnl
ibm-1162_P100-1999 ISCII,version=2 ibm-1142_P100-1997,swaplfnl
ibm-437_P100-1995 ISCII,version=3 ibm-1143_P100-1997,swaplfnl
ibm-720_P100-1997 ISCII,version=4 ibm-1144_P100-1997,swaplfnl
ibm-737_P100-1997 ISCII,version=5 ibm-1145_P100-1997,swaplfnl
ibm-775_P100-1996 ISCII,version=6 ibm-1146_P100-1997,swaplfnl
ibm-850_P100-1995 ISCII,version=7 ibm-1147_P100-1997,swaplfnl
ibm-851_P100-1995 ISCII,version=8 ibm-1148_P100-1997,swaplfnl
ibm-852_P100-1995 LMBCS-1 ibm-1149_P100-1997,swaplfnl
ibm-855_P100-1995 ibm-37_P100-1995 ibm-1153_P100-1999,swaplfnl
ibm-856_P100-1995 ibm-273_P100-1995 ibm-12712_P100-1998,swaplfnl
ibm-857_P100-1995 ibm-277_P100-1995 ibm-16804_X110-1999,swaplfnl
ibm-858_P100-1997 ibm-278_P100-1995 ebcdic-xml-us