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.
Se aplica a:SQL Server
PolyBase a partir de SQL Server 2019 permite conectarse a orígenes de datos compatibles con ODBC por medio del conector ODBC. A partir de la versión preliminar de SQL Server 2025 (17.x), esta característica está disponible en Linux.
En este artículo se muestra cómo crear la configuración de la conectividad mediante un origen de datos ODBC. En las instrucciones proporcionadas se usa un controlador ODBC específico como ejemplo. Consulte con el proveedor de ODBC para obtener ejemplos específicos. Consulte la documentación del controlador ODBC para el origen de datos con el fin de determinar las opciones de cadena de conexión apropiadas. Es posible que los ejemplos de este artículo no se apliquen a ningún controlador ODBC específico.
Requisitos previos
Nota:
En SQL Server 2022 (16.x) y versiones anteriores, esta característica requiere SQL Server en Windows.
PolyBase debe instalarse y habilitarse para la instalación de PolyBase de la instancia de SQL Server.
Antes de crear una credencial con ámbito de base de datos, debe crear una clave maestra.
Instalación del controlador ODBC
Siga las instrucciones de instalación del sistema operativo.
Sql Server 2025 (17.x) Preview tiene como valor predeterminado Microsoft ODBC Driver versión 18 para SQL Server, para orígenes de datos de PolyBase sqlserver
. Este controlador admite TDS 8.0 e incluye varias actualizaciones, características y algunos cambios importantes. Para usar TDS 8.0, debe usar una nueva opción de cifrado e instalar un certificado de confianza en el servidor.
Para obtener más información sobre Microsoft ODBC Driver versión 18 para SQL Server, consulte:
- Descargar controlador ODBC para SQL Server
- Controlador ODBC 18.0 para SQL Server publicado | Centro de comunidad de Microsoft
Para obtener más información sobre la compatibilidad con TDS 8.0 de SQL Server, consulte TDS 8.0.
Descargue e instale el controlador ODBC del origen de datos al que quiere conectarse en cada uno de los nodos de PolyBase. Una vez que el controlador está instalado correctamente, puede verlo y probarlo desde el Administrador de orígenes de datos ODBC.
En el ejemplo anterior, el nombre del conductor está encerrado en rojo. Use este nombre al crear el origen de datos externo.
Importante
Para mejorar el rendimiento de las consultas, habilite la agrupación de conexiones. Esto se puede hacer desde el Administrador de orígenes de datos ODBC.
Creación de objetos dependientes en SQL Server
Para usar el origen de datos ODBC, primero debe crear algunos objetos para completar la configuración.
En esta sección se utilizan los siguientes comandos de Transact-SQL:
Cree una credencial de ámbito de base de datos para acceder al origen de datos ODBC.
CREATE DATABASE SCOPED CREDENTIAL [<credential_name>] WITH IDENTITY = '<username>', SECRET = '<password>';
Por ejemplo, en el ejemplo siguiente se crea una credencial denominada
credential_name
, con una identidad deusername
. Reemplace<password>
por una contraseña compleja.CREATE DATABASE SCOPED CREDENTIAL credential_name WITH IDENTITY = 'username', SECRET = '<password>';
Cree un origen de datos externo con CREATE EXTERNAL DATA SOURCE.
CREATE EXTERNAL DATA SOURCE [<external_data_source_name>] WITH ( LOCATION = 'odbc://<ODBC server address>[:<port>]', CONNECTION_OPTIONS = 'Driver={<Name of installed driver>}; ServerNode = <name of server address>:<Port>', -- PUSHDOWN = [ON] | OFF, CREDENTIAL = [<credential_name>] );
En el ejemplo siguiente se crea un origen de datos externo:
- Con el nombre
external_data_source_name
- Se encuentra en el
SERVERNAME
ODBC y el puerto4444
- Se conecta con
CData ODBC Driver For SAP 2015
: es el controlador creado en Instalación del controlador ODBC - En
ServerNode
sap_server_node
, puerto5555
- Configurado para el procesamiento que se inserta en el servidor (
PUSHDOWN = ON
) - Mediante la credencial
credential_name
CREATE EXTERNAL DATA SOURCE external_data_source_name WITH ( LOCATION = 'odbc://SERVERNAME:4444', PUSHDOWN = ON, CONNECTION_OPTIONS = 'Driver={CData ODBC Driver For SAP 2015}; ServerNode = sap_server_node:5555', CREDENTIAL = credential_name );
- Con el nombre
Creación de una tabla externa
Una vez que haya creado los objetos dependientes, puede crear una tabla externa mediante T-SQL.
En esta sección se utilizan los siguientes comandos de Transact-SQL:
- CREATE EXTERNAL TABLE (CREAR TABLA EXTERNA)
- CREATE STATISTICS
Cree una o varias tablas externas.
Cree una tabla externa. Debe hacer referencia al origen de datos externo creado anteriormente mediante el
DATA_SOURCE
argumento y especificar la tabla de origen comoLOCATION
. No es necesario hacer referencia a todas las columnas, pero debe asegurarse de que los tipos están asignados correctamente.CREATE EXTERNAL TABLE [<your_table_name>] ( [<col1_name>] DECIMAL (38) NOT NULL, [<col2_name>] DECIMAL (38) NOT NULL, [<col3_name>] CHAR COLLATE Latin1_General_BIN NOT NULL ) WITH ( DATA_SOURCE = [<external_data_source_name>], LOCATION = '<sap_table_name>' );
Nota:
Tenga en cuenta que puede reutilizar los objetos dependientes para todas las tablas externas mediante este origen de datos externo.
Opcional: cree estadísticas en una tabla externa.
Para obtener un rendimiento óptimo de las consultas, se recomienda crear estadísticas en las columnas de tabla externa, sobre todo en las que se usan para combinaciones, filtros y agregados.
CREATE STATISTICS statistics_name ON contact(FirstName) WITH FULLSCAN;