Todos los productos
Search
Centro de documentos

AnalyticDB:Manually migrate data from Amazon Redshift to AnalyticDB for PostgreSQL

Última actualización: Sep 22, 2026

Migre los datos de Amazon Redshift a AnalyticDB for PostgreSQL mediante Alibaba Cloud Data Online Migration o la herramienta ossimport.

Requisitos previos

  • La instancia de origen de Amazon Redshift.

  • Un bucket de Amazon S3 para exportar los datos de la instancia de Amazon Redshift.

  • Debe haber activado Alibaba Cloud Object Storage Service (OSS). Para obtener más información sobre OSS, consulte What is Object Storage OSS.

  • Debe haber creado un bucket de OSS. Para obtener más información, consulte Create a bucket.

    Nota

    Se recomienda crear el bucket de OSS en la misma región que su instancia de AnalyticDB for PostgreSQL. Esto simplifica la importación de datos a la base de datos.

  • Cree una instancia de AnalyticDB for PostgreSQL. Para obtener información sobre cómo elegir las especificaciones de la instancia, consulte Select instance specifications.

Selección de especificaciones

Seleccione las especificaciones de la instancia de destino de AnalyticDB for PostgreSQL según las especificaciones de la instancia de origen de Amazon Redshift.

Una instancia de Amazon Redshift se compone de un nodo líder y varios nodos de cómputo.

  • El nodo líder equivale al nodo coordinador de AnalyticDB for PostgreSQL. Este nodo se comunica con los clientes, analiza sintácticamente las consultas, elabora los planes de ejecución y distribuye las tareas a los nodos de cómputo.

  • Nodo de cómputo: un nodo de cómputo equivale a un nodo Segment en AnalyticDB for PostgreSQL y consta de varias particiones de nodo. Cada partición equivale a un único nodo Segment en AnalyticDB for PostgreSQL y se encarga del almacenamiento de datos y del cálculo de consultas.

Para determinar las especificaciones adecuadas de los nodos de AnalyticDB for PostgreSQL, compárelas con las especificaciones de cada partición de nodo de la instancia de origen de Amazon Redshift.

Ejemplo

La instancia de origen de Amazon Redshift contiene cuatro nodos de cómputo, y cada uno tiene dos particiones de nodo. Cada partición cuenta con 2 núcleos, 16 GB de memoria y 1 TB de almacenamiento.

Con base en las especificaciones de la instancia de origen de Amazon Redshift, seleccione ocho nodos segment al crear la instancia de AnalyticDB for PostgreSQL. Para cada nodo segment, elija la especificación de 2 núcleos y 16 GB, y establezca la capacidad de almacenamiento en 1,000 GB.

Nota
  • Para obtener más información sobre cómo crear una instancia de AnalyticDB for PostgreSQL, consulte Create an instance.

  • Se recomienda seleccionar ESSD como tipo de disco de almacenamiento. Un ESSD ofrece un mejor rendimiento de E/S que un Ultra Disk.

Procedimiento

Paso 1: Exportar los datos de Amazon Redshift

Utilice el comando UNLOAD para exportar los datos. Para obtener más información, consulte la documentación de UNLOAD.

A continuación se muestra la sintaxis del comando UNLOAD.

UNLOAD ('select-statement')
TO 's3://object-path/name-prefix'
AUTHORIZATION
[ option [ ... ] ]

WHERE option IS
{ [ FORMAT [ AS ] ] CSV | PARQUET
| PARTITION BY ( column_name [, ... ] ) [ INCLUDE ]
| MANIFEST [ VERBOSE ] 
| HEADER           
| DELIMITER [ AS ] 'delimiter-char' 
| FIXEDWIDTH [ AS ] 'fixedwidth-spec'   
| ENCRYPTED [ AUTO ]
| BZIP2  
| GZIP 
| ZSTD
| ADDQUOTES 
| NULL [ AS ] 'null-string'
| ESCAPE
| ALLOWOVERWRITE
| CLEANPATH
| PARALLEL [ { ON | TRUE } | { OFF | FALSE } ]
| MAXFILESIZE [AS] max-size [ MB | GB ] 
| REGION [AS] 'Amazon-region' }
Nota
  • Al exportar los datos, se recomienda usar el formato FORMAT AS PARQUET o CSV.

  • Para mejorar la eficiencia de la exportación y generar más fragmentos de archivos, habilite la exportación paralela con PARALLEL ON.

  • Use el parámetro MAXFILESIZE para generar varios segmentos de archivo. Establezca la cantidad de segmentos como un múltiplo entero de la cantidad de nodos de su instancia de AnalyticDB for PostgreSQL. De esta forma, mejorará la eficiencia de la importación paralela mediante una tabla externa de OSS.

Paso 2: Sincronizar los datos con Alibaba Cloud OSS

Sincronice los datos mediante uno de estos dos métodos: Data Online Migration o la herramienta ossimport.

Data Online Migration

  1. Inicie sesión en la consola de Alibaba Cloud Data Transport.

  2. Cree una dirección de datos de origen y una dirección de datos de destino para la sincronización.

    1. En el panel de navegación izquierdo, elija Data Online Migration > Data Addresses.

    2. Haga clic en Create Data Address para crear una dirección de origen.

    3. En el panel Create Data Address, configure los siguientes parámetros y haga clic en OK.

      Parámetro

      Obligatorio

      Descripción

      Name

      Sí

      • El nombre debe tener entre 3 y 63 caracteres.

      • El nombre puede contener letras minúsculas, dígitos, guiones (-) y guiones bajos (_). Distingue entre mayúsculas y minúsculas.

      • El nombre no puede comenzar con un guion (-) ni con un guion bajo (_).

      Type

      Sí

      Seleccione AWS S3.

      Domain name

      Sí

      Introduzca el endpoint del servicio AWS S3. Los endpoints se enumeran en Amazon S3 endpoints.

      AccessKeyId

      Sí

      Introduzca la clave de acceso del usuario de IAM. Esta clave autentica el acceso de lectura a los datos de origen.

      SecretAccessKey

      Sí

      Bucket

      Sí

      Introduzca el nombre del bucket de origen de AWS S3.

      Nota

      El nombre del bucket no puede comenzar ni terminar con espacios, saltos de línea ni tabulaciones.

      Prefix

      No

      Especifique un prefijo para migrar solo un subconjunto de los datos.

      • Si lo especifica, solo se migrarán los datos ubicados bajo ese prefijo. El prefijo no debe comenzar con una barra diagonal (/), pero debe terminar con una.

      • Si omite este parámetro, se migrarán todos los datos del bucket.

      Tunnel

      No

      Seleccione el nombre del canal que desea utilizar.

      Importante
      • Este parámetro es obligatorio únicamente cuando se migran datos a través de una conexión Express Connect o VPN, o desde un sistema de almacenamiento autogestionado.

      • Debe asociar un agente si el destino es un sistema de archivos local o si la migración utiliza una conexión dedicada, por ejemplo, hacia un entorno de nube financiera o Apsara Stack.

      Agent

      No

      Seleccione el nombre del agente que desea utilizar.

      Importante
      • Este parámetro es obligatorio únicamente cuando se migran datos a través de una conexión Express Connect o VPN, o desde un sistema de almacenamiento autogestionado.

      • Puede seleccionar un máximo de 200 agentes para un canal específico.

    4. Vuelva a hacer clic en Create Data Address para crear una dirección de destino.

    5. En el panel Create Data Address, configure los siguientes parámetros y haga clic en OK.

      Parámetro

      Obligatorio

      Descripción

      Data Type

      Sí

      El tipo de la dirección de datos de destino. Seleccione OSS.

      Data Name

      Sí

      El nombre de la dirección de datos de origen. Debe tener entre 3 y 63 caracteres. No puede contener caracteres especiales, excepto guiones (-) y guiones bajos (_).

      Data Region

      Sí

      La región donde reside la dirección de datos de destino.

      Enable Transfer Acceleration

      No

      Si desea usar Data Online Migration junto con la función de aceleración de transferencia de Object Storage Service (OSS), habilite dicha función para los buckets. La aceleración de transferencia surte efecto en un plazo de 30 minutos después de habilitarse. Una vez habilitada, espere 30 minutos antes de crear una tarea de migración.

      Importante

      Si utiliza la función de aceleración de transferencia para acceder a sus buckets de OSS, se le cobrarán tarifas adicionales por este concepto. Para obtener más información, consulte Access OSS using transfer acceleration.

      OSS Endpoint

      Sí

      El endpoint de la dirección de datos de destino. Seleccione un endpoint según la región donde resida dicha dirección. Para obtener más información, consulte Regions and endpoints.

      Nota

      Cuando migra datos de servicios de nube de terceros a OSS, debe acceder a OSS desde un endpoint público a través de Internet.

      Access Key Id and Access Key Secret

      Sí

      El par de AccessKey del usuario de RAM que se utiliza para escribir datos en la dirección de datos de destino. OSS emplea este par de AccessKey para comprobar si el usuario de RAM tiene permisos para escribir datos en dicha dirección.

      OSS Bucket

      Sí

      El bucket de OSS al que se migran los datos.

      OSS Prefix

      No

      El prefijo de la dirección de datos de destino.

      • Si especifica un prefijo, los datos de origen se migran al directorio indicado. El valor no puede comenzar con una barra diagonal (/) y debe terminar con una. Ejemplo: data/to/oss/.

      • Si no especifica un prefijo, los datos de origen se migran al directorio raíz del bucket de destino.

      Importante

      Si el nombre de un archivo de origen comienza con una barra diagonal (/), debe especificar un prefijo de OSS al definir la dirección de datos de destino. De lo contrario, la tarea de migración fallará. Por ejemplo, si el nombre del archivo que se va a migrar es /test/test.png, debe especificar un prefijo de OSS, como oss/. Una vez completada la migración, el nombre del archivo cambiará de /test/test.png a oss//test/test.png.

  3. Cree una tarea de migración en línea.

    1. En el panel de navegación izquierdo, elija Data Online Migration > Data Migration Tasks.

    2. Haga clic en Create Data Migration Task.

    3. En el panel Create Data Migration Task, lea los términos del servicio, seleccione I understand the preceding terms and want to activate Data Transport y, a continuación, haga clic en Next.

    4. En el cuadro de diálogo Charges, haga clic en Create.

    5. En la pestaña Configure Task, configure los siguientes parámetros y haga clic en Next.

      Parámetro

      Obligatorio

      Descripción

      Job Name

      Sí

      El nombre de la dirección de datos de origen. Debe tener entre 3 y 63 caracteres. No puede contener caracteres especiales, excepto guiones (-) y guiones bajos (_).

      Source Data Address

      Sí

      La dirección de datos de origen que creó.

      Destination Data Address

      Sí

      La dirección de datos de destino que creó.

      Specified Directory

      No

      Los directorios cuyos archivos y subdirectorios se migran o se excluyen de la migración. Valores válidos:

      • Do not filter: migra todos los datos de la dirección de origen.

      • Exclude: no migra los archivos ni los subdirectorios de los directorios especificados.

        Por ejemplo, si desea migrar todos los directorios dentro de root_dir/, excepto root_dir/bad_sub1/ y root_dir/bad_sub2/, elija esta opción e indique bad_sub1/ y bad_sub2/.

      • Contain: migra únicamente los archivos y subdirectorios de los directorios especificados.

        Por ejemplo, si desea migrar solo root_dir/good_sub1/ y root_dir/good_sub2/ dentro de root_dir/, elija esta opción e indique good_sub1/ y good_sub2/.

      Nota
      • El nombre de un directorio solo puede contener dígitos y letras. Si utiliza caracteres especiales, la tarea de migración podría fallar.

      • El nombre de un directorio no puede comenzar con una barra diagonal (/) ni con una barra diagonal inversa (\), y no debe contener barras diagonales dobles (//), puntos dobles (..) ni comillas dobles ("). La cadena formada por todos los nombres de directorio especificados no puede superar los 10 KB de longitud.

      • El nombre de un directorio debe terminar con una barra diagonal (/). Por ejemplo, puede especificar docs/ como nombre de directorio.

      • Puede especificar hasta 20 directorios de tipo Exclude o Contain.

      Migration Type

      Sí

      El modo de migración de datos. Valores válidos:

      • Full: el sistema migra todos los datos de la dirección de origen a la de destino. Debe configurar el parámetro Start Time Point of File. El sistema migra todos los datos cuya última hora de modificación sea posterior a la indicada. Una vez migrados todos los datos, la tarea finaliza.

        Si modifica los datos de la dirección de origen después de completar la tarea, envíe otra tarea para migrarlos nuevamente. En este caso, el sistema migrará únicamente los datos modificados.

      • Incremental: el sistema ejecuta una tarea de migración según los valores que haya definido en los parámetros Migration Interval y Migration Times.

        • Debe configurar el parámetro Start Time Point of File. Durante la primera migración, el sistema traslada todos los datos cuya última hora de modificación sea posterior a la indicada. Al finalizar esta primera migración, la migración incremental se ejecuta según el valor definido en el parámetro Migration Interval. En cada migración incremental, el sistema transfiere únicamente los datos creados o modificados entre el inicio de la migración anterior y el inicio de la actual.

        • Si establece el parámetro Migration Times en N, se ejecuta una migración completa y luego (N - 1) migraciones incrementales.

          Por ejemplo, suponga que la hora actual es las 08:00 del 10 de marzo de 2019, y configura Migration Interval en 1, Migration Times en 5 y Start Time Point of File en las 08:00 del 5 de marzo de 2019. Cuando inicie la primera migración, el sistema transferirá todos los archivos cuya última modificación esté entre las 08:00 del 5 de marzo de 2019 y las 08:00 del 10 de marzo de 2019. En este ejemplo, la primera migración tarda una hora en completarse y la segunda comienza a las 10:00 del 10 de marzo de 2019. El intervalo de 08:00 a 10:00 incluye una hora para el primer proceso de migración y una hora de intervalo. Durante la segunda migración, el sistema transfiere los archivos modificados entre las 08:00 y las 10:00 del 10 de marzo de 2019. La tarea total consta de una migración completa y cuatro incrementales.

      Importante

      Antes de iniciar una migración completa o incremental, el sistema compara los archivos de la dirección de origen con los de la dirección de destino. Si un archivo de origen tiene el mismo nombre que uno de destino, este último se sobrescribe cuando se cumple alguna de las siguientes condiciones:

      • Los valores Content-Type de los archivos en la dirección de origen y en la de destino son distintos.

      • La última hora de modificación del archivo en la dirección de origen es posterior a la del archivo en la dirección de destino.

      • El tamaño del archivo en la dirección de origen difiere del tamaño del archivo en la dirección de destino.

      Start Time Point of File

      Sí

      La hora utilizada para filtrar los datos que se van a migrar. El sistema transfiere los datos creados o modificados después de la hora indicada. Valores válidos:

      • All: migra todos los archivos.

      • Assign: migra únicamente los archivos creados o modificados después de la hora indicada.

        Por ejemplo, si establece la hora en las 08:00:00 del 1 de noviembre de 2018, solo se migrarán los archivos creados o modificados después de esa fecha y hora.

      Migration Interval

      Este parámetro es obligatorio si establece Migration Type en Incremental.

      El valor predeterminado es 1 y el máximo es 24. Unidad: horas.

      Migration Times

      Este parámetro es obligatorio si establece Migration Type en Incremental.

      El valor predeterminado es 1 y el máximo es 30.

      File Overwrite Method

      Sí

      El método utilizado para procesar un archivo de la dirección de origen que tiene el mismo nombre que un archivo de la dirección de destino. Valores válidos:

      • LastModified: si un archivo de origen tiene el mismo nombre que uno de destino, el sistema compara la última hora de modificación indicada por la propiedad LastModified de ambos archivos.

        • Si la última hora de modificación del archivo de origen es posterior a la del archivo de destino, el archivo de origen se migra y sobrescribe al de destino.

        • Si la última hora de modificación del archivo de origen es anterior a la del archivo de destino, el archivo de origen no se migra y se conserva el de destino.

        • Si ambos archivos tienen la misma hora de modificación, el sistema comprueba los valores de las propiedades Size y Content-Type.

          Si los valores de Size y Content-Type coinciden, el archivo de origen no se migra. Si difieren en al menos una propiedad, el archivo de origen se migra y sobrescribe al de destino.

      • Condition: si un archivo de origen tiene el mismo nombre que uno de destino, el sistema compara los valores de las propiedades LastModified, Size y Content-Type de ambos archivos.

        • Si todos los valores de las propiedades coinciden, el archivo de origen no se migra.

        • Si difieren en al menos una propiedad, el archivo de origen se migra y sobrescribe al de destino.

      • All: si un archivo de origen tiene el mismo nombre que uno de destino, el sistema no realiza ninguna comparación y sobrescribe directamente el archivo de destino con el de origen.

      • No: si un archivo de origen tiene el mismo nombre que uno de destino, el sistema no realiza ninguna comparación y omite directamente el archivo de origen durante la migración.

        Aviso
        • Si selecciona Condition o LastModified, los archivos más antiguos podrían sobrescribir a los más recientes.

        • Si selecciona Condition o LastModified, asegúrese de que los archivos de origen tengan valores de LastModified, Size y Content-Type. De lo contrario, la política de sobrescritura podría no funcionar correctamente y los datos no se migrarán como se espera.

    6. En la pestaña Performance Tuning, dentro de la sección Data Estimation, introduzca los valores de Size of Data to Be Migrated y Number of Files to Be Migrated.

      Nota

      Para garantizar una migración sin contratiempos, estime los datos con la mayor precisión posible. Para obtener más información, consulte Estimate migration data.

    7. Opcional: En la pestaña Performance Tuning, dentro de la sección Bandwidth Throttling, configure Time Range (Hour) y Max Bandwidth, y luego haga clic en Add.

      Nota

      Para evitar afectar su negocio en línea, se recomienda configurar Time Range (Hour) y Max Bandwidth para la migración según los horarios pico y valle de su operación.

    8. Haga clic en Create y espere a que finalice la tarea de migración.

ossimport

  1. Descargue e instale ossimport en modo independiente. Para obtener más información, consulte ossimport overview.

    La estructura de archivos de ossimport en modo independiente es la siguiente:

    ossimport
    ├── bin
    │   └── ossimport2.jar  # A full JAR that includes Master, Worker, TaskTracker, and Console modules
    ├── conf
    │   ├── local_job.cfg   # Job configuration file
    │   └── sys.properties  # System runtime parameter configuration file
    ├── console.bat         # Windows command-line interface (CLI) for distributed task submission
    ├── console.sh          # Linux CLI for distributed task submission
    ├── import.bat          # One-click import on Windows. Runs the migration task configured in conf/local_job.cfg, including startup, migration, validation, and retries.
    ├── import.sh           # One-click import on Linux. Runs the migration task configured in conf/local_job.cfg, including startup, migration, validation, and retries.
    ├── logs                # Log directory
    └── README.md           # Documentation. We strongly recommend that you read this file *before use*.
  2. Configure ossimport en modo independiente.

    Modifique los siguientes parámetros en el archivo de configuración conf/local_job.cfg.

    srcType=s3
    srcAccessKey=<Amazon AccessKey ID>
    srcSecretKey=<Amazon AccessKey Secret>
    srcDomain=<Domain name of the Amazon S3 region>
    srcBucket=<Name of the Amazon S3 bucket>
    destAccessKey=<Alibaba Cloud AccessKey ID>
    destSecretKey=<Alibaba Cloud AccessKey Secret>
    destDomain=<Endpoint of the OSS region>
    destBucket=<Name of the OSS bucket>
    destPrefix=
    isSkipExistFile=true

    Para obtener más información sobre la configuración de ossimport, consulte ossimport overview.

  3. Ejecute ossimport para sincronizar los datos con OSS. Para obtener más información sobre ossimport en modo independiente, consulte Standalone deployment.

Paso 3: Crear las tablas de destino

Cree las tablas de destino en la instancia de AnalyticDB for PostgreSQL con la misma estructura que las tablas de origen de Amazon Redshift. Para consultar la sintaxis de creación de tablas, vea CREATE TABLE.

Si necesita modificar definiciones DDL de objetos como esquemas, tablas, funciones y vistas, consulte DDL syntax conversion.

Paso 4: Importar los datos desde OSS

Importe los datos a AnalyticDB for PostgreSQL mediante el comando COPY o una tabla externa de OSS:

Conversión de sintaxis DDL

La sintaxis DDL de Amazon Redshift difiere de la de AnalyticDB for PostgreSQL. Convierta las siguientes instrucciones DDL antes de la migración.

Crear un esquema

Cree un esquema siguiendo la sintaxis de AnalyticDB for PostgreSQL. A continuación se muestra un ejemplo:

CREATE SCHEMA schema1 AUTHORIZATION xxxpoc;
GRANT ALL ON SCHEMA schema1 TO xxxpoc;
GRANT ALL ON SCHEMA schema1 TO public;
COMMENT ON SCHEMA model IS 'for xxx migration  poc test';

CREATE SCHEMA oss_external_table AUTHORIZATION xxxpoc;

Cree una función

AnalyticDB for PostgreSQL no es compatible con algunas funciones SQL de Amazon Redshift. Debe personalizar o reescribir estas funciones. Por ejemplo:

  • Reemplace CONVERT_TIMEZONE(a,b,c) con la siguiente instrucción:

    timezone(b, timezone(a,c))
  • Reemplace GETDATE() con la siguiente instrucción:

    current_timestamp(0)::timestamp
  • Reemplace u optimice una función definida por el usuario (UDF). A continuación se muestra un ejemplo de función en Redshift:

    CREATE OR REPLACE FUNCTION public.f_jdate(dt timestamp WITHOUT time zone)
    RETURNS character varying AS
    '      from datetime import timedelta, datetime
           if dt.hour < 4:
                  d = timedelta(days=-1)
                  dt = dt + d
           return str(dt.date())'
    LANGUAGE plpythonu IMMUTABLE;
    COMMIT;

    Utilice la siguiente instrucción para reemplazar la función anterior:

    to_char(a - interval '4 hour', 'yyyy-mm-dd')
  • Otras funciones estándar de Amazon Redshift.

    Consulte la documentación de PostgreSQL sobre funciones y operadores para modificar o implementar las funciones que no son compatibles entre Amazon Redshift y AnalyticDB for PostgreSQL. Algunos ejemplos de funciones incompatibles son:

Cree una tabla

  • Modifique el nombre de la tabla

    En Amazon Redshift, la longitud máxima del nombre de una tabla es de 127 bytes. En cambio, en AnalyticDB for PostgreSQL la longitud máxima predeterminada es de 63 bytes. Acorte los nombres de cualquier objeto (como tablas, funciones o vistas) que supere este límite.

  • Modifique el algoritmo de compresión

    Elimine ENCODE XXX de la instrucción CREATE TABLE de Amazon Redshift y reemplácelo con la siguiente cláusula:

    WITH (COMPRESSTYPE={ZLIB|ZSTD|RLE_TYPE|NONE})

    Para obtener información sobre los algoritmos de compresión compatibles con AnalyticDB for PostgreSQL, consulte Compression.

  • Modifique la clave de distribución

    Amazon Redshift es compatible con tres estilos de distribución. Modifique la clave de distribución según las siguientes reglas:

    • EVEN: reemplácelo con DISTRIBUTED RANDOMLY.

    • KEY: reemplácelo con DISTRIBUTED BY (column, [ ... ] ).

    • ALL: reemplácelo con DISTRIBUTED REPLICATED.

  • Modifique la clave de ordenamiento

    Elimine la opción COMPOUND o INTERLEAVED de la cláusula de clave de ordenamiento de Amazon Redshift [ COMPOUND | INTERLEAVED ] SORTKEY (column_name [, ...] ) ] y reemplácela con la siguiente cláusula:

    ORDER BY (column, [ ... ])

A continuación se muestran algunos ejemplos:

  • Ejemplo 1

    Instrucción CREATE TABLE en Amazon Redshift:

    CREATE TABLE schema1.table1
    (
        filed1 VARCHAR(100) ENCODE lzo,
        filed2 INTEGER DISTKEY,
        filed3 INTEGER,
        filed4 BIGINT ENCODE lzo,
        filed5 INTEGER
    )
    INTERLEAVED SORTKEY
    (
        filed1,
        filed2
    );

    Instrucción CREATE TABLE convertida en AnalyticDB for PostgreSQL:

    CREATE TABLE schema1.table1
    (
        filed1 VARCHAR(100) ,
        filed2 INTEGER,
        filed3 INTEGER,
        filed4 BIGINT,
        filed5 INTEGER
    )
    WITH(APPENDONLY=true,ORIENTATION=column,COMPRESSTYPE=zstd)
    DISTRIBUTED BY (filed2)
    ORDER BY (filed1, filed2);
    
    -- Sort
    SORT schema1.table1;
    MULTISORT schema1.table1;
  • Ejemplo 2

    Instrucción CREATE TABLE en Amazon Redshift, que incluye las opciones ENCODE y SORTKEY:

    CREATE TABLE schema2.table2
    (
        filed1 VARCHAR(50) ENCODE lzo,
        filed2 VARCHAR(50) ENCODE lzo,
        filed3 VARCHAR(20) ENCODE lzo,
    )
    DISTSTYLE EVEN
    INTERLEAVED SORTKEY
    (
        filed1
    );

    Instrucción CREATE TABLE convertida en AnalyticDB for PostgreSQL:

    CREATE TABLE schema2.table2
    (
        filed1 VARCHAR(50),
        filed2 VARCHAR(50),
        filed3 VARCHAR(20)
    )
    WITH(APPENDONLY=true, ORIENTATION=column, COMPRESSTYPE=zstd)
    DISTRIBUTED randomly
    ORDER BY (filed1);
    
    -- Sort
    SORT schema2.table2;
    MULTISORT schema2.table2;
    Nota

    Para obtener más información sobre las claves de ordenamiento, consulte Use sort keys and rough set indexes to accelerate queries on column-oriented tables.

Cree una vista

Convierta la instrucción CREATE VIEW de Amazon Redshift en una instrucción SQL que cumpla con la sintaxis de AnalyticDB for PostgreSQL. Las reglas de conversión son similares a las de CREATE TABLE.

Nota

La cláusula WITH NO SCHEMA BINDING no es compatible.

Documentos relacionados

Para obtener información sobre la migración automática, consulte Automatically migrate data from Amazon Redshift to AnalyticDB for PostgreSQL.