Saltar al contenido principal Saltar al contenido complementario

Microsoft SQL Server

Este tema explica cómo configurar la conectividad con un destino de Microsoft SQL Server mediante el conector Microsoft SQL Server Target. El destino Microsoft SQL Server se puede utilizar en una tarea de replicación o como plataforma de datos de destino en una canalización de datos. En una canalización de datos, se pueden realizar varias operaciones en la plataforma de destino, incluido el aterrizaje de datos, el almacenamiento de datos, la transformación de datos, la creación de centros de datos y el registro de datos. Antes de poder conectarse a un destino de Microsoft SQL Server, es necesario que configure los Requisitos previos de usuario en la base de datos. Si va a conectarse a Microsoft SQL Server a través de Pasarela de datos de movimiento de datos, también necesita instalar el controlador como se describe en Configuración del driver o controlador.

Para obtener información sobre las limitaciones y consideraciones al usar el conector Destino de Snowflake, vea Limitaciones y consideraciones.

Configurar las propiedades de la conexión

Esta sección describe las propiedades de conexión disponibles. Todas las propiedades son obligatorias a menos que se indique lo contrario.

Pasarela de datos de movimiento de datos

El destino de Microsoft SQL Server se puede utilizar en una canalización de datos o en una tarea de replicación. Si bien es posible que se requiera una pasarela de movimiento de datos para acceder al destino de Microsoft SQL Server en una canalización (dependiendo de si se puede acceder directamente a la base de datos desde Qlik Cloud), siempre es necesaria cuando se utiliza un destino de Microsoft SQL Server en una tarea de replicación.

Nota informativaAl acceder a la base de datos de destino mediante Pasarela de datos de movimiento de datos, también necesita instalar el controlador adecuado en el equipo de Pasarela de datos de movimiento de datos. Para más detalles, vea Configuración del driver o controlador a continuación.

Usar un destino de Microsoft SQL Server en una canalización de datos

Pasarela de datos: Solo se requiere una Pasarela de datos de movimiento de datos si la base de datos de destino no está accesible desde Qlik Cloud y solo se puede acceder a ella mediante un vínculo privado (por ejemplo, si está ubicada localmente detrás de un firewall o en una nube privada virtual). En tal caso, seleccione la Pasarela de datos de movimiento de datos a través de la cual desea acceder a la base de datos de destino.

En función del caso de uso que precise, será la misma Pasarela de datos de movimiento de datos implementada para transferir los datos desde la fuente de datos u otra distinta. Para más información sobre las posibilidades de implementación de la Pasarela de datos de movimiento de datos, vea Casos de uso habituales.

Nota informativaRequiere Pasarela de datos de movimiento de datos 2022.11.70 o una versión posterior.

Si es posible acceder directamente a la base de datos de destino desde Qlik Cloud, seleccione Ninguno.

Usar un destino de Microsoft SQL Server en una tarea de replicación

Pasarela de datos: Seleccione la Pasarela de datos de movimiento de datos que se utilizará para probar la conexión al destino de Microsoft SQL Server. Esta debería ser la misma puerta de enlace que se utilizó para acceder a la fuente de datos.

Nota informativa

Requiere Pasarela de datos de movimiento de datos 2023.5.10 o posterior.

Destino de datos

  • Proveedor Cloud: Elija uno de los siguientes, según proceda:

    • Ninguno (local)
    • Amazon RDS
    • Google Cloud
    • Microsoft Azure (admite tanto una instancia administrada de Microsoft Azure como una base de datos de Microsoft Azure)
  • Servidor: el nombre del host o la dirección IP del equipo en el que está instalada la base de datos de Microsoft SQL Server.

    Nota informativa

      Para anular el puerto predeterminado, agregue el puerto al nombre del servidor, separado por una coma. Por ejemplo, si el nombre del servidor es myserver.company.local y el puerto es 3333, entonces el nombre del servidor debería ser:

      myserver.company.local,3333

Propiedades de la cuenta

User Name y Password: el nombre de usuario y la contraseña de un usuario autorizado para acceder a la base de datos Microsoft SQL Server.

Propiedades de la base de datos

  • Nombre de la base de datos: hay dos métodos que puede utilizar para especificar una base de datos:

    • Método 1 - Seleccionarlo de una lista: Este método requiere crear el usuario en la base de datos maestra. Haga clic en Cargar bases de datos y seleccione una base de datos.
    • Método 2 - Manualmente: seleccione Insertar el nombre de la base de datos manualmente e indique el nombre de la base de datos.
  • Cifrado (certificado de servidor de confianza): Selecciónelo para cifrar la comunicación entre Qlik Cloud y el servidor de la base de datos. Cuando esté seleccionado, se confiará en el certificado del servidor de forma automática.
    • Nombre de host en certificado: Para confiar en el certificado del servidor solo si este nombre de host coincide con el valor especificado en este campo, escriba el nombre de host del certificado del host.

Propiedades internas

Las propiedades internas son para casos de uso especiales y, por lo tanto, no se exponen en el cuadro de diálogo. Solo deberá usarlas si se lo indica el Soporte de Qlik.

Haga uso de los botones Crear nuevo y Cancelar a la derecha de los campos para agregar o eliminar propiedades según sea necesario.

Nombre

El nombre que mostrará la conexión.

Requisitos previos

Requisitos previos de usuario

  • El usuario especificado en la configuración del conector debe tener al menos el rol de usuario db_owner en la base de datos de Microsoft SQL Server de destino.
  • Para poder seleccionar una base de datos (haciendo clic en Cargar bases de datos en el cuadro de diálogo del conector), el usuario especificado en la configuración del conector debe haberse creado en la base de datos maestra.

Configuración del driver o controlador

Solo se requiere un controlador si accede a la base de datos a través de Pasarela de datos de movimiento de datos. Vea Pasarela de datos de movimiento de datos más arriba para obtener información sobre los casos de uso cuando se requiere Pasarela de datos de movimiento de datos.

Puede instalar el driver usando la utilidad de instalación del driver (recomendado) o manualmente. La instalación manual solo debe intentarse en el improbable caso de que encuentre un problema con la utilidad de instalación del driver.

Uso de la utilidad de instalación del driver para instalar el driver/controlador

Esta sección describe cómo instalar el driver necesario. El proceso implica ejecutar un script que descargará, instalará y configurará automáticamente el driver requerido. También puede ejecutar secuencias de script para actualizar y desinstalar el driver según sea necesario.

  • Asegúrese de que Python 3.6 o posterior esté instalado en el servidor de la pasarela de Movimiento de datos.

    Python viene preinstalado en la mayoría de las distribuciones de Linux. Puede verificar qué versión de Python está instalada en su sistema ejecutando el siguiente comando:

    python3 --version

Para descargar e instalar el driver:

  1. Detenga el servicio Data Movement gateway:

    sudo systemctl stop repagent

  2. Opcionalmente, confirme que el servicio se ha detenido:

    sudo systemctl status repagent

    El estado debería ser el siguiente:

    Active: inactive (dead) since <timestamp> ago

  3. En la máquina de la puerta de enlace de Movimiento de datos, cambie el directorio de trabajo a:

    opt/qlik/gateway/movement/drivers/bin

  4. Ejecute el siguiente comando:

    Sintaxis:

    ./install sqlserver

    Si no logra descargar el driver (debido a restricciones de acceso o problemas técnicos), aparecerá un mensaje indicándole dónde puede descargar el driver y dónde copiarlo en la máquina de la puerta de enlace de Movimiento de datos. Una vez hecho esto, ejecute nuevamente el comando install sqlserver.

    De lo contrario, se mostrará el EULA del driver.

  5. Puede realizar una de las acciones siguientes:

    • Pulse [Intro] repetidamente para desplazarse por el EULA.
    • Pulse la barra espaciadora repetidamente para desplazarse rápidamente por el EULA.
    • Pulse q para salir del texto de la licencia y ver las opciones de aceptación del EULA.
  6. Puede realizar una de las acciones siguientes:

    • Escriba "y" y pulse [Intro] para aceptar el EULA y comenzar la instalación.
    • Escriba "n" y pulse [Intro] para rechazar el EULA y salir de la instalación.
    • Escriba "v" y pulse [Intro] para ver el EULA de nuevo.

  7. Se instalará el driver.

  8. Espere a que termine la instalación (indicado mediante la palabra "Completado") y luego inicie el servicio de Data Movement gateway:

    sudo systemctl start repagent

  9. Opcionalmente, confirme que el servicio se ha iniciado:

    sudo systemctl status repagent

    El estado debería ser el siguiente:

    Active: active (running) since <timestamp> ago

Ejecute el comando de actualización si desea desinstalar versiones anteriores del driver antes de instalar el driver provisto.

Para descargar y actualizar el driver:

  1. Detenga el servicio Data Movement gateway:

    sudo systemctl stop repagent

  2. Opcionalmente, confirme que el servicio se ha detenido:

    sudo systemctl status repagent

    El estado debería ser el siguiente:

    Active: inactive (dead) since <timestamp> ago

  3. En la máquina de la puerta de enlace de Movimiento de datos, cambie el directorio de trabajo a:

    opt/qlik/gateway/movement/drivers/bin

  4. Ejecute el siguiente comando:

    Sintaxis:

    ./update sqlserver

    Si no logra descargar el driver (debido a restricciones de acceso o problemas técnicos), aparecerá un mensaje indicándole dónde puede descargar el driver y dónde copiarlo en la máquina de la puerta de enlace de Movimiento de datos. Una vez hecho esto, ejecute nuevamente el comando update sqlserver.

    De lo contrario, se mostrará el EULA del driver.

  5. Puede realizar una de las acciones siguientes:

    • Pulse [Intro] repetidamente para desplazarse por el EULA.
    • Pulse la barra espaciadora repetidamente para desplazarse rápidamente por el EULA.
    • Pulse q para salir del texto de la licencia y ver las opciones de aceptación del EULA.
  6. Puede realizar una de las acciones siguientes:

    • Escriba "y" y pulse [Intro] para aceptar el EULA y comenzar la instalación.
    • Escriba "n" y pulse [Intro] para rechazar el EULA y salir de la instalación.
    • Escriba "v" y pulse [Intro] para ver el EULA desde el principio.
  7. El driver anterior se desinstalará y se instalará el nuevo driver.

  8. Espere a que termine la instalación (indicado mediante la palabra "Completado") y luego inicie el servicio de Data Movement gateway:

    sudo systemctl start repagent

  9. Opcionalmente, confirme que el servicio se ha iniciado:

    sudo systemctl status repagent

    El estado debería ser el siguiente:

    Active: active (running) since <timestamp> ago

Ejecute el comando de desinstalación si desea desinstalar el driver.

Para desinstalar el driver:

  1. Detenga todas las tareas configuradas para utilizar este conector.

  2. En la máquina de la pasarela de Movimiento de datos, cambie el directorio de trabajo a:

    opt/qlik/gateway/movement/drivers/bin

  3. Ejecute el siguiente comando:

    Sintaxis:

    ./uninstall sqlserver

    Se desinstalará el driver.

Instalar los controladores manualmente

Solo debe intentar instalar el driver manualmente si la instalación automática del driver no se realizó correctamente.

Cuando utilice Microsoft SQL Server como destino en una canalización de datos, deberá instalar tanto el controlador ODBC como el controlador JDBC. Cuando utilice Microsoft SQL Server como destino en la tarea de replicación, solo necesita instalar el controlador ODBC.

Una vez que haya instalado Pasarela de datos de movimiento de datos, descargue el controlador msodbcsql<versión>.x86_64.rpm. Encontrará un enlace de descarga directa a la versión compatible en binary-artifacts, en /opt/qlik/gateway/movement/drivers/manifests/sqlserver.yaml. Una vez completada la descarga, copie el RPM a la máquina de Pasarela de datos de movimiento de datos.

En el servidor de Data Movement gateway, abra un símbolo del shell y haga lo siguiente:

  1. Detenga el servicio Data Movement gateway:

    sudo systemctl stop repagent

  2. Opcionalmente, confirme que el servicio se ha detenido:

    sudo systemctl status repagent

  3. El estado debería ser el siguiente:

    Active: inactive (dead) since <timestamp> ago

  4. Instale el controlador (RPM).

  5. Cambie el directorio de trabajo a <product_dir>/bin.

  6. Copie la ubicación del controlador en el archivo site_arep_login.sh de la siguiente manera:

    echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/opt/microsoft/msodbcsql<version>/lib64/" >> site_arep_login.sh

    Esto agregará el controlador a "LD_LIBRARY_PATH" y actualizará la ubicación del controlador en el archivo site_arep_login.sh .

  7. Opcionalmente, confirme que se copió la ubicación del controlador:

    cat site_arep_login.sh
  8. Inicie el servicio Data Movement gateway:

    sudo systemctl start repagent

  9. Opcionalmente, confirme que el servicio se ha iniciado:

    sudo systemctl status repagent

    El estado debería ser el siguiente:

    Active: active (running) since <timestamp> ago

  10. Data Movement gateway requiere la siguiente biblioteca ODBC: msodbcsql-18.1.so.1.1

    Para verificar qué versión de la biblioteca está instalada actualmente, lance el siguiente comando:

    ls /opt/microsoft/msodbcsql<version>/lib64/

    Si la biblioteca existente tiene un número de versión diferente (por ejemplo, libmsodbcsql-18.0.so.1.1), debe crear un enlace simbólico entre la biblioteca actual y la biblioteca requerida.

    Para hacer esto, ejecute los siguientes comandos:

    cd /opt/microsoft/msodbcsql<version>/lib64/
    ln -s existing_library_name msodbcsql-18.1.so.1.1

    donde existing_library_name es el nombre de la biblioteca actualmente instalada (por ejemplo, libmsodbcsql-18.0.so.1.1).

Nota informativaNo es necesario instalar el controlador JDBC cuando se utiliza Microsoft SQL Server como destino en una tarea de replicación.
  1. Descargue el archivo mssql-jdbc-<version>.jar. Encontrará un enlace de descarga directa a la versión compatible en binary-artifacts en /opt/qlik/gateway/movement/drivers/manifests/sqlserver.yaml. Una vez que se complete la descarga, copie el archivo JAR a la siguiente carpeta de la máquina de Pasarela de datos de movimiento de datos:

    /opt/qlik/gateway/movement/qcs_agents/qdi-db-commands/lib

  2. Reinicie el servicio de Pasarela de datos de movimiento de datos ejecutando el comando descrito en Reiniciar el servicio

Limitaciones y consideraciones

Limitaciones y consideraciones cuando se utiliza en una canalización de datos

  • Al enviar datos a Microsoft SQL Server en una canalización de datos, no se admiten vistas en vivo. Para más información sobre las vistas en vivo, vea Almacenar conjuntos de datos.

Limitaciones y consideraciones para todas las tareas de datos

Si los siguientes tipos de objetos grandes están vacíos en la base de datos de origen (0 bytes), no estarán vacíos después de la carga completa:

  • BLOB se escribirá como 0x0000 (2 bytes)
  • TEXT (VARCHAR(max)) se escribirá como 0X00 (1 byte)
  • NTEXT (NVARCHAR(max)) se escribirá como 0x0000 (2 bytes)

Nota informativaSi estos tipos están vacíos durante el procesamiento de cambios, se escribirán correctamente en el destino como vacíos (0 bytes).

Limitaciones y consideraciones solo para las tareas de replicación

  • Las columnas LOB de tamaño completo no se admiten en el Modo de aplicación optimizado por lotes. Puede solucionar esta restricción limitando el tamaño de la columna LOB en la configuración de la tarea o cambiando al modo de aplicación Por transacción.
  • Cuando las opciones Aplicar optimizado por lotes y Replicar columnas LOB limitadas (KB) están habilitadas, las columnas BLOB y CLOB en el destino se truncarán a una cuarta parte del tamaño especificado en el campo Limitar tamaño LOB a.
  • Si necesita replicar caracteres emoji de 4 bytes, use una transformación para convertir el tipo de datos de WSTRING(n) a WSTRING (n*2).

Tipos de datos

La información del tipo de datos nativo se conserva y se muestra en la columna Tipo de datos nativo en las vistas de conjuntos de datos. Si la columna no está visible, debe abrir el selector de columnas de la vista del conjunto de datos y seleccionar la columna Tipo de datos nativo.

Tipos de datos de destino admitidos
Tipos de datos de Qlik Cloud Tipos de datos de Microsoft SQL Server

BOOLEAN

TINYINT

BYTES

VARBINARY(length)

DATE

DATE

TIME

TIME(0)

DATETIME

DATETIME2(scale)

INT1

SMALLINT

INT2

SMALLINT

INT4

INT

INT8

BIGINT

NUMERIC

NUMERIC(p,s)

REAL4

REAL

REAL8

FLOAT

STRING

Si la columna es una fecha o una hora:

DATETIME2

Si la columna no es una fecha o una hora:

VARCHAR(length)

UINT1

INT2

UINT2

INT4

UINT4

INT8

UINT8

NUMERIC(20)

WSTRING

NVARCHAR(length)

BLOB

VARBINARY(max)

IMAGE

CLOB

VARCHAR(max)

TEXT

NCLOB

NVARCHAR(max)

NTEXT

No se admiten los siguientes tipos de datos de SQL Server. Los datos no se leerán.

  • CURSOR

  • SQL_VARIANT

  • TABLE

Los siguientes tipos de datos se convierten a VARCHAR (MAX):

  • XML

  • GEOGRAPHY

  • GEOMETRY

¿Esta página le ha sido útil?

No dude en indicarnos en qué podemos mejorar si encuentra algún problema en esta página o su contenido, como, por ejemplo, errores tipográficos, pasos que falta o errores técnicos.