Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se describe cómo usar la actividad de copia en una canalización para copiar datos desde y hacia Azure Database for PostgreSQL.
Configuración admitida
Para la configuración de cada pestaña en la actividad de copia, vaya a las secciones siguientes respectivamente.
General
Consulte las instruccionesgenerales para configurar la pestaña de parámetros General.
Fuente
Vaya a la pestaña Origen para configurar el origen de la actividad de copia. Consulte el siguiente contenido para obtener la configuración detallada.
Las siguientes tres propiedades son necesarias:
Conexión: seleccione una conexión de Azure Database for PostgreSQL en la lista de conexiones. Si no existe ninguna conexión, cree una nueva conexión de Azure Database for PostgreSQL.
Usar consulta: seleccione Tabla para leer datos de la tabla especificada o seleccione Consulta para leer datos mediante consultas.
Si selecciona Tabla:
Tabla: seleccione la tabla de la lista desplegable o seleccione Introducir manualmente para introducirla manualmente y leer los datos.
Si selecciona Consulta:
Consulta: especifique la consulta SQL personalizada para leer datos. Por ejemplo:
SELECT * FROM mytableoSELECT * FROM "MyTable".Nota:
En PostgreSQL, el nombre de entidad se trata como sin distinción entre mayúsculas y minúsculas si no está entre comillas.
Versión: la versión que especifique. Se recomienda actualizar a la versión más reciente para aprovechar las mejoras más recientes. Al seleccionar la versión 2.0, el conector usa el modo de requerir SSL si encripta la conexión. Para obtener más información sobre el modo SSL, vaya a este artículo.
En Avanzado, puede especificar los campos siguientes:
tiempo de espera de consulta (minutos): especifique el tiempo de espera antes de terminar el intento de ejecutar un comando y generar un error; el valor predeterminado es 120 minutos. Si el parámetro se establece para esta propiedad, los valores permitidos son intervalos de tiempo, como "02:00:00" (120 minutos). Para obtener más información, vea CommandTimeout.
Opción de partición: especifica las opciones de creación de particiones de datos que se usan para cargar datos de Azure Database for PostgreSQL. Cuando se habilita una opción de partición (es decir, no Ninguno), el grado de paralelismo para cargar datos simultáneamente desde una instancia de Azure Database for PostgreSQL se controla mediante el grado de paralelismo de copia en la pestaña Configuración de la actividad de copia.
Si selecciona Ninguno, decide no usar la partición.
Si selecciona Particiones físicas de la tabla:
Nombres de partición: especifique la lista de particiones físicas que se deben copiar.
Si usa una consulta para recuperar los datos de origen, vincula
?AdfTabularPartitionNameen la cláusula WHERE. Para obtener un ejemplo, consulte la sección Copia en paralelo desde Azure Database for PostgreSQL .
Si selecciona Rango dinámico:
Nombre de columna de partición: especifique el nombre de la columna de origen de tipo entero o fecha/fecha y hora (
int,smallint,bigint,date,timestamp without time zone,timestamp with time zoneotime without time zone) que usará la partición por rangos para la copia paralela. Si no se especifica, la clave principal de la tabla se detecta automáticamente y se usa como columna de partición.Si usa una consulta para recuperar los datos de origen, vincula
?AdfRangePartitionColumnNameen la cláusula WHERE. Para ver un ejemplo, consulte la sección Copia en paralelo desde Azure Database for PostgreSQL.Límite superior de partición: especifique el valor máximo de la columna de partición para copiar los datos.
Si usa una consulta para recuperar los datos de origen, vincula
?AdfRangePartitionUpbounden la cláusula WHERE. Para ver un ejemplo, consulte la sección Copia en paralelo desde Azure Database for PostgreSQL. .Límite inferior de partición: especifique el valor mínimo de la columna de partición para copiar los datos.
Si usa una consulta para recuperar los datos de origen, vincula
?AdfRangePartitionLowbounden la cláusula WHERE. Para ver un ejemplo, consulte la sección Copia en paralelo desde Azure Database for PostgreSQL.
Columnas adicionales: agregue columnas de datos adicionales para almacenar la ruta de acceso relativa o el valor estático de los archivos de origen. La expresión se admite para este último.
Destino
Vaya a la pestaña Destino para configurar el destino de la actividad de copia. Consulte el siguiente contenido para obtener la configuración detallada.
Las siguientes tres propiedades son necesarias:
Conexión: seleccione una conexión de Azure Database for PostgreSQL en la lista de conexiones. Si no existe ninguna conexión, cree una nueva conexión de Azure Database for PostgreSQL.
Tabla: seleccione la tabla de la lista desplegable o seleccione Entrar manualmente para escribir datos.
Versión: la versión que especifique. Se recomienda actualizar a la versión más reciente para aprovechar las mejoras más recientes. Al seleccionar la versión 2.0, el conector usa el modo de requerir SSL si encripta la conexión. Para obtener más información sobre el modo SSL, vaya a este artículo.
En Avanzado, puede especificar los campos siguientes:
Método de escritura: seleccione el método usado para escribir datos en Azure Database for PostgreSQL. Seleccione el comando Copiar (valor predeterminado, que es más eficaz), Inserción masiva y Upsert (para la versión 2.0).
-
upsert: Elija esta opción si los datos de origen incluyen tanto inserciones como actualizaciones.
-
columnas clave: elija la columna que se usa para determinar si una fila del origen coincide con una fila del destino.
-
columnas clave: elija la columna que se usa para determinar si una fila del origen coincide con una fila del destino.
-
upsert: Elija esta opción si los datos de origen incluyen tanto inserciones como actualizaciones.
Script de copia previa: especifique una consulta SQL para que se ejecute la actividad de copia antes de escribir datos en Azure Database for PostgreSQL en cada ejecución. Puede usar esta propiedad para limpiar los datos cargados previamente.
Tiempo de espera de escritura de lotes: especifique el tiempo de espera para que finalice la operación de inserción por lotes antes de que se agote el tiempo de espera. El valor permitido es timespan. El valor predeterminado es 00:30:00 (30 minutos).
Tamaño de lote de escritura: Especifique el número de filas cargadas en la base de datos de Azure para PostgreSQL por lote. El valor permitido es un entero que representa el número de filas. El valor predeterminado es 1 000 000.
Cartografía
Para configurar la pestaña Asignación, consulte Configurar las asignaciones en la pestaña Asignación.
Configuración
Para la configuración de la pestaña Configuración, vaya a Configurar los otros parámetros en la pestaña configuración.
Copia paralela de Azure Database for PostgreSQL
En la actividad de copia, el conector de Azure Database for PostgreSQL proporciona la opción de crear particiones de datos integradas para copiar los datos en paralelo. Puede encontrar opciones de particionado de datos en la pestaña Fuente de la actividad de copia.
Al habilitar la copia con particiones, la actividad de copia ejecuta consultas en paralelo en el origen de Azure Database for PostgreSQL para cargar los datos por particiones. El grado paralelo se controla mediante el grado de paralelismo de copia en la pestaña configuración de la actividad de copia. Por ejemplo, si establece Grado de paralelismo de copia en cuatro, el servicio genera y ejecuta simultáneamente cuatro consultas en función de la configuración y la opción de partición especificadas, y cada consulta recupera una parte de los datos de su instancia de Azure Database for PostgreSQL.
Se sugiere habilitar la copia en paralelo con la creación de particiones de datos, especialmente si se cargan grandes cantidades de datos de Azure Database for PostgreSQL. A continuación se sugieren configuraciones para diferentes escenarios. Al copiar datos en el almacén de datos basado en archivos, se recomienda escribir en una carpeta como varios archivos (solo especificar el nombre de carpeta), en cuyo caso el rendimiento es mejor que escribir en un solo archivo.
| Escenario | Configuración sugerida |
|---|---|
| Carga completa de datos desde una tabla grande, con particiones físicas. |
Opción de partición: particiones físicas de la tabla. Durante la ejecución, el servicio detecta automáticamente las particiones físicas y copia los datos por particiones. |
| Carga completa de una tabla grande, sin particiones físicas, aunque con una columna de enteros para la creación de particiones de datos. |
Opciones de partición: Intervalo dinámico. Columna de partición: Especifique la columna utilizada para particionar los datos. Si no se especifica, se usa la columna de clave principal. |
| Cargue una gran cantidad de datos mediante una consulta personalizada con particiones físicas. |
Opción de partición: particiones físicas de la tabla. Consulta: SELECT * FROM ?AdfTabularPartitionName WHERE <your_additional_where_clause>.Nombre de la partición: especifique los nombres de las particiones desde las que se copiarán los datos. Si no se especifican, el servicio detecta automáticamente las particiones físicas en la tabla que ha especificado en el conjunto de datos de PostgreSQL. Durante la ejecución, el servicio reemplaza ?AdfTabularPartitionName por el nombre real de la partición y se lo envía a Azure Database for PostgreSQL. |
| Carga de grandes cantidades de datos mediante una consulta personalizada, sin particiones físicas, aunque cuenta con una columna de enteros para la creación de particiones de datos. |
Opciones de partición: Intervalo dinámico. Consulta: SELECT * FROM ?AdfTabularPartitionName WHERE ?AdfRangePartitionColumnName <= ?AdfRangePartitionUpbound AND ?AdfRangePartitionColumnName >= ?AdfRangePartitionLowbound AND <your_additional_where_clause>.Columna de partición: Especifique la columna utilizada para particionar los datos. Puede crear particiones en la columna con el tipo de datos entero o date/datetime. Límite superior de partición y Límite inferior de partición: especifique si desea filtrar por la columna de partición para recuperar datos solo entre el intervalo inferior y el superior. Durante la ejecución, el servicio reemplaza ?AdfRangePartitionColumnName, ?AdfRangePartitionUpbound, y ?AdfRangePartitionLowbound por el nombre real de la columna y los rangos de valor para cada partición y los envía a Azure Database for PostgreSQL. Por ejemplo, si establece la columna de partición "ID" con un límite inferior de 1 y un límite superior de 80, con la copia en paralelo establecida en 4, el servicio recupera los datos de 4 particiones. Los identificadores están comprendidos entre [1, 20], [21, 40], [41, 60] y [61, 80] respectivamente. |
Procedimientos recomendados para cargar datos con la opción de partición:
- Elija una columna distintiva como columna de partición (como clave principal o clave única) para evitar la asimetría de datos.
- Si la tabla tiene una partición integrada, use la opción de partición "Particiones físicas de tabla" para obtener un mejor rendimiento.
Resumen de tabla
La tabla siguiente contiene más información sobre la actividad de copia en Azure Database for PostgreSQL.
Información de origen
| Nombre | Descripción | Importancia | Obligatorio | Propiedad de script JSON |
|---|---|---|---|---|
| Conexión | Tu conexión con el almacén de datos de origen. | < tu conexión de Azure Database for PostgreSQL > | Sí | conexión |
| Usar consulta | La manera de leer datos. Aplique Table para leer datos de la tabla especificada o aplicar Query para leer datos mediante consultas. | • Tabla • Consulta |
Sí | • typeProperties (en typeProperties ->source)-esquema - mesa • consulta |
| Versión | Versión que especifique. Se recomienda actualizar a la versión más reciente para aprovechar las mejoras más recientes. Al seleccionar la versión 2.0, el conector usa el modo de requerir SSL si encripta la conexión. Para obtener más información sobre el modo SSL, vaya a este artículo. | • 2.0 • 1.0 |
Sí | Versión: • 2.0 • 1.0 |
| tiempo de espera de consulta (minutos) | El tiempo de espera antes de finalizar el intento de ejecutar un comando y generar un error, el valor predeterminado es de 120 minutos. Si el parámetro se establece para esta propiedad, los valores permitidos son intervalos de tiempo, como "02:00:00" (120 minutos). Para obtener más información, vea CommandTimeout. | lapso de tiempo | No | queryTimeout |
| Nombres de partición | Lista de particiones físicas que deben copiarse. Si usa una consulta para recuperar los datos de origen, vincula ?AdfTabularPartitionName en la cláusula WHERE. |
< nombres de partición > | No | nombresDePartición |
| Nombre de columna de partición | Nombre de la columna de origen en tipo entero o fecha/fecha y hora (int, smallint, bigint, date, timestamp without time zone, timestamp with time zone o time without time zone) que se utilizará para la partición en intervalos en la copia en paralelo. Si no se especifica, la clave principal de la tabla se detecta automáticamente y se usa como columna de partición. |
< los nombres de columna de partición > | No | partitionColumnName |
| Límite superior de partición | Valor máximo de la columna de partición para copiar los datos afuera. Si utiliza una consulta para recuperar los datos fuente, inserte ?AdfRangePartitionUpbound dentro de la cláusula WHERE. |
< límite superior de partición > | No | partitionUpperBound |
| Límite inferior de partición | Valor mínimo de la columna de partición para copiar los datos fuera. Si usa una consulta para recuperar los datos de origen, enganche ?AdfRangePartitionLowbound en la cláusula WHERE. |
< límite inferior de partición > | No | partitionLowerBound |
| Columnas adicionales | Agregue columnas de datos adicionales para almacenar la ruta de acceso relativa o el valor estático de los archivos de origen. La expresión se admite para este último. | • Nombre • Valor |
No | columnas adicionales: • nombre •valor |
Información de destino
| Nombre | Descripción | Importancia | Obligatorio | Propiedad de script JSON |
|---|---|---|---|---|
| Conexión | Su conexión al almacén de datos de destino. | < tu conexión de Azure Database for PostgreSQL > | Sí | conexión |
| Tabla | Tabla de datos de destino para escribir datos. | < nombre de la tabla de destino > | Sí | typeProperties (en typeProperties ->sink):-esquema - mesa |
| Versión | Versión que especifique. Se recomienda actualizar a la versión más reciente para aprovechar las mejoras más recientes. Al seleccionar la versión 2.0, el conector usa el modo de requerir SSL si encripta la conexión. Para obtener más información sobre el modo SSL, vaya a este artículo. | • 2.0 • 1.0 |
Sí | Versión: • 2.0 • 1.0 |
| Método Write | El método usado para escribir datos en Azure Database for PostgreSQL. | • Copiar comando (valor predeterminado) • Inserción masiva • Upsert (para la versión 2.0) |
No | writeMethod: • CopyCommand • BulkInsert • Actualizar o insertar |
| Columnas de clave | Elija qué columna se usa para determinar si una fila del origen coincide con una fila del destino. | <la columna de clave> | No | claves / llaves |
| Script de copia previa | Consulta SQL para que se ejecute la actividad de copia antes de escribir datos en Azure Database for PostgreSQL en cada ejecución. Puede usar esta propiedad para limpiar los datos cargados previamente. | < tu script de preparación de copia > | No | preCopyScript |
| Tiempo de espera de escritura por lotes | Tiempo que se concede a la operación de inserción por lotes para que finalice antes de que se agote el tiempo de espera. | lapso de tiempo (El valor predeterminado es 00:30:00 [30 minutos]). |
No | writeBatchTimeout |
| Tamaño del lote de escritura | Número de filas cargadas en Azure Database for PostgreSQL por lote. | entero (el valor predeterminado es 1000 000) |
No | writeBatchSize |