Compartir a través de


Configuración de Oracle Database en una actividad de copia

En este artículo se describe cómo usar la actividad de copia en la canalización de datos para copiar datos desde y hacia Oracle Database.

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.

Source

Las siguientes propiedades son compatibles con Oracle Database en la pestaña Origen de una actividad de copia.

Captura de pantalla que muestra la pestaña de origen y la lista de propiedades.

Se requieren las siguientes propiedades:

  • Conexión: seleccione una conexión de base de datos de Oracle en la lista de conexiones. Si no existe ninguna conexión, cree una nueva conexión de base de datos de Oracle seleccionando Más en la parte inferior de la lista de conexiones.
  • Usar consulta: seleccione entre Tabla o Consulta.
    • Si se selecciona Tabla:

      • Tabla: especifique el nombre de la tabla en Oracle Database para leer los datos. Seleccione la tabla en la lista desplegable o seleccione Escribir manualmente para introducir el nombre de la tabla y el esquema.

        Captura de pantalla que muestra Usar consulta - Tabla.

    • Si se selecciona Consulta:

      • Consulta: especifique la consulta SQL personalizada para leer los datos. Por ejemplo: SELECT * FROM MyTable.

        Si habilita la carga con particiones, deberá enlazar todos los parámetros de partición integrados correspondientes en la consulta. Consulte la sección Copia en paralelo desde Oracle Database para obtener algunos ejemplos.

        Captura de pantalla que muestra Usar consulta - Consulta.

En Avanzado, puede especificar los campos siguientes:

  • Opción de partición: especifique las opciones de creación de particiones de datos que se usan para cargar datos desde Oracle Database. Cuando se habilita una opción de partición (es decir, no Ninguno), el grado de paralelismo para cargar datos simultáneamente desde una base de datos de Oracle se controla mediante la pestaña 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 datos de origen, enlace ?DfTabularPartitionName en la cláusula WHERE. Consulte la sección Copia en paralelo desde Oracle Database para ver un ejemplo.

      Captura de pantalla que muestra la configuración al seleccionar Particiones físicas de la tabla.

    Si selecciona Rango dinámico:

    • Nombre de columna de partición: especifique el nombre de la columna de origen en tipo entero que se usará mediante la creación de particiones por rangos para la copia en paralelo. Si no se especifica, se detectará automáticamente la clave principal de la tabla y se usará como columna de partición.

      Si usa una consulta para recuperar datos de origen, enlace ?DfRangePartitionColumnName en la cláusula WHERE. Consulte la sección Copia en paralelo desde Oracle Database para ver un ejemplo.

    • Límite de partición superior: especifique el valor máximo de la columna de partición para copiar los datos.

      Si usa una consulta para recuperar datos de origen, enlace ?DfRangePartitionUpbound en la cláusula WHERE. Para ver un ejemplo, consulte la sección Copia en paralelo desde Oracle Database.

    • Límite de partición superior: especifique el valor mínimo de la columna de partición para copiar los datos.

      Si usa una consulta para recuperar datos de origen, enlace ?DfRangePartitionLowbound en la cláusula WHERE. Para ver un ejemplo, consulte la sección Copia en paralelo desde Oracle Database.

      Captura de pantalla que muestra la configuración al seleccionar Intervalo dinámico.

  • Tiempo de espera de consulta (minutos): especifique el tiempo de espera para la ejecución del comando de consulta; el valor predeterminado es de 120 minutos. Si se establece un parámetro para esta propiedad, los valores permitidos son intervalos de tiempo, como "02:00:00" (120 minutos).

  • Columnas adicionales: añada columnas de datos adicionales para almacenar la ruta relativa o el valor estático de los archivos de origen. La expresión se admite para este último.

Destino

Las siguientes propiedades son compatibles con Oracle Database en la pestaña Destino de una actividad de copia.

Captura de pantalla en la que se muestra la pestaña Destino.

Las siguientes propiedades son obligatorias:

  • Conexión: seleccione una conexión de base de datos de Oracle en la lista de conexiones. Si la conexión no existe, cree una nueva conexión de base de datos de Oracle seleccionando Más en la parte inferior de la lista de conexiones.
  • Tabla: seleccione la tabla de la base de datos en la lista desplegable. O bien, active Escribir manualmente para escribir el nombre de la tabla y el esquema manualmente.

En Avanzado, puede especificar los campos siguientes:

  • Script anterior a la copia: especifique una consulta SQL para que se ejecute la actividad de copia antes de escribir datos en Oracle Database en cada ejecución. Puede usar esta propiedad para limpiar los datos cargados previamente.
  • Tiempo de espera de escritura por lotes: especifique el 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. El valor permitido es timespan. Un ejemplo es 00:30:00 (30 minutos).
  • Tamaño del lote de escritura: especifique el número de filas que insertar en la tabla de Oracle Database por lote. El valor que se permite es un entero (número de filas). El valor predeterminado es 10 000.
  • Máximo de conexiones simultáneas: límite superior de conexiones simultáneas establecidas con el almacén de datos durante la ejecución de la actividad. Especifique un valor solo cuando quiera limitar las conexiones simultáneas.

Asignación

Para la configuración de la pestañaAsignación, vaya a Configurar las asignaciones en la ficha Asignación .

Configuración

Para la configuración de la pestañaConfiguración, consulte Configurar los otros parámetros en la ficha Configuración .

Copia en paralelo desde Oracle Database

El conector de bases de datos de Oracle proporciona creación de particiones de datos integrada para copiar datos de Oracle Database en paralelo. Puede encontrar las opciones de creación de particiones de datos en la pestaña Origen de la actividad de copia.

Al habilitar la copia con particiones, el servicio ejecuta consultas en paralelo en el origen de Oracle Database para cargar los datos mediante particiones. El grado paralelo se controla mediante el ajuste Grado de paralelismo de copia en la pestaña de 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 basadas en la configuración y la opción de partición especificadas, y cada consulta recupera una parte de los datos de la base de datos de Oracle.

Se le sugiere que habilite la copia en paralelo con la creación de particiones de datos, especialmente si carga grandes cantidades de datos de su base de datos de Oracle. Estas son algunas configuraciones sugeridas para diferentes escenarios. Cuando se copian datos en un almacén de datos basado en archivos, se recomienda escribirlos en una carpeta como varios archivos (solo especifique el nombre de la carpeta), en cuyo caso el rendimiento es mejor que escribirlos en un único archivo.

Escenario Configuración sugerida
Carga completa de 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: partición por rangos dinámica.
Columna de partición: especifique la columna usada para crear la partición de 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. Opciones de partición: particiones físicas de la tabla.
Consulta: SELECT * FROM <TABLENAME> PARTITION("?DfTabularPartitionName") 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 Oracle Database.
Durante la ejecución, el servicio reemplaza ?DfTabularPartitionName por el nombre real de la partición y se lo envía a Oracle Database.
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: partición por rangos dinámica.
Consulta: SELECT * FROM <TABLENAME> WHERE ?DfRangePartitionColumnName <= ?DfRangePartitionUpbound AND ?DfRangePartitionColumnName >= ?DfRangePartitionLowbound AND <your_additional_where_clause>.
Columna de partición: especifique la columna usada para crear la partición de datos. Puede crear particiones en la columna con un tipo de datos entero.
Límite de partición superior y límite de partición inferior: especifique si quiere filtrar en la columna de partición para recuperar solo los datos entre el intervalo inferior y el superior.

Durante la ejecución, el servicio reemplaza ?DfRangePartitionColumnName, ?DfRangePartitionUpbound y ?DfRangePartitionLowbound por el nombre real de la columna y los rangos de valores de cada partición y se los envía a Oracle Database.
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.

Sugerencia

Al copiar datos de una tabla sin particiones, puede usar la opción de partición "Dynamic range" (Intervalo dinámico) para crear particiones en una columna de enteros. Si los datos de origen no tienen este tipo de columna, puede aprovechar la función ORA_HASH de la consulta de origen para generar una columna y usarla como columna de partición.

Resumen de tabla

Las tablas siguientes contienen más información sobre la actividad de copia en Oracle Database.

Información de origen

Nombre Descripción Value Obligatorio Propiedad de script JSON
Connection La conexión al almacén de datos de origen. <la conexión de base de datos de Oracle> conexión
Usar consulta La manera de leer datos de Oracle Database. Aplica Tabla para leer datos de la tabla especificada o aplica Consulta para leer datos mediante consultas SQL. Tabla
Consulta
/
Para Tablas
nombre del esquema Nombre del esquema. < el nombre del esquema > No esquema
nombre de tabla Nombre de la tabla. < nombre de la tabla > No table
Para consulta
Consultar Use la consulta SQL personalizada para leer los datos. Un ejemplo es SELECT * FROM MyTable.
Si habilita la carga con particiones, deberá enlazar todos los parámetros de partición integrados correspondientes en la consulta. Consulte la sección Copia en paralelo desde Oracle Database para obtener algunos ejemplos.
< Consultas SQL> No oracleReaderQuery
Opción de partición Las opciones de creación de particiones de datos que se usan para cargar datos desde Oracle Database. Ninguno (valor predeterminado)
Particiones físicas de la tabla
Intervalo dinámico
No /
Para Particiones físicas de la tabla
Nombres de partición Lista de particiones físicas que deben copiarse. Si usa una consulta para recuperar datos de origen, enlace ?DfTabularPartitionName en la cláusula WHERE. < los nombres de partición > No partitionNames
Para Intervalo dinámico
Nombre de columna de partición Especifique el nombre de la columna de origen in integer type que usará la creación de particiones por rangos para la copia en paralelo. Si no se especifica, se detectará automáticamente la clave principal de la tabla y se usará como columna de partición.
Si usa una consulta para recuperar datos de origen, enlace ?DfRangePartitionColumnName en la cláusula WHERE. Consulte la sección Copia en paralelo desde Oracle Database para ver un ejemplo.
< los nombres de columna de partición > No partitionColumnName
Límite superior de partición Especifique el valor máximo de la columna de partición para copiar datos. Si usa una consulta para recuperar datos de origen, enlace ?DfRangePartitionUpbound en la cláusula WHERE. Para ver un ejemplo, consulte la sección Copia en paralelo desde Oracle Database. < límite superior de partición > No partitionUpperBound
Límite inferior de partición Especifique el valor mínimo de la columna de partición para copiar datos. Si utiliza una consulta para recuperar datos de origen, enlace ?DfRangePartitionLowbound en la cláusula WHERE. Para ver un ejemplo, consulte la sección Copia en paralelo desde Oracle Database. < límite inferior de partición > No partitionLowerBound
Tiempo de espera de la consulta El tiempo de espera para la ejecución del comando de consulta, el valor predeterminado es de 120 minutos. timespan No queryTimeout
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. • Name
• Valor
No additionalColumns:
• nombre
• valor

Información de destino

Nombre Descripción Value Obligatorio Propiedad de script JSON
Connection La conexión al almacén de datos de destino. <la conexión de base de datos de Oracle> conexión
Tabla La tabla de datos de destino. <nombre de la tabla de destino> /
nombre del esquema Nombre del esquema. < el nombre del esquema > esquema
nombre de tabla Nombre de la tabla. < nombre de la tabla > table
Pre-copy script (Script anterior a la copia) Consulta SQL para la actividad de copia que ejecutar antes de escribir datos en Oracle Database en cada ejecución. Puede usar esta propiedad para limpiar los datos cargados previamente. < el script anterior a la copia > No preCopyScript
Tiempo de espera de escritura por lotes Tiempo de espera para que la operación de inserción por lotes se complete antes de que se agote el tiempo de espera. timespan No writeBatchTimeout
Tamaño del lote de escritura Número de filas que se va a insertar en la tabla SQL por lote. integer
(el valor predeterminado es 10 000)
No writeBatchSize
Número máximo de conexiones simultáneas Número máximo de conexiones simultáneas establecidas en el almacén de datos durante la ejecución de la actividad. Especifique un valor solo cuando quiera limitar las conexiones simultáneas. < número máximo de conexiones simultáneas > No maxConcurrentConnections