Delen via


PolyBase configureren voor toegang tot externe gegevens met algemene ODBC-typen

van toepassing op:SQL Server-

Met PolyBase vanaf SQL Server 2019 kunt u verbinding maken met odbc-compatibele gegevensbronnen met behulp van de ODBC-connector. Vanaf SQL Server 2025 (17.x) Preview is deze functie beschikbaar op Linux.

In dit artikel wordt uitgelegd hoe u connectiviteit configureert met behulp van een ODBC-gegevensbron. De opgegeven richtlijnen maken gebruik van één specifiek ODBC-stuurprogramma als voorbeeld. Neem contact op met uw ODBC-provider voor specifieke voorbeelden. Raadpleeg de documentatie van het ODBC-stuurprogramma voor uw gegevensbron om de juiste verbindingsreeksopties te bepalen. De voorbeelden in dit artikel zijn mogelijk niet van toepassing op een specifiek ODBC-stuurprogramma.

Voorwaarden

Notitie

In SQL Server 2022 (16.x) en eerdere versies vereist deze functie SQL Server in Windows.

  • PolyBase moet geïnstalleerd en ingeschakeld zijn voor uw SQL Server-exemplaar PolyBase-installatie.

  • Voordat u een database-scoped referentie maakt, moet u een hoofdsleutel maken.

Het ODBC-stuurprogramma installeren

Volg de installatie-instructies voor uw besturingssysteem.

SQL Server 2025 (17.x) Preview is standaard ingesteld op Microsoft ODBC-stuurprogrammaversie 18 voor SQL Server, voor PolyBase-gegevensbronnen sqlserver . Dit stuurprogramma ondersteunt TDS 8.0 en bevat verschillende updates, functies en enkele belangrijke wijzigingen. Als u TDS 8.0 wilt gebruiken, moet u een nieuwe versleutelingsoptie gebruiken en een vertrouwd certificaat op uw server installeren.

Zie voor meer informatie over Microsoft ODBC-stuurprogrammaversie 18 voor SQL Server:

Zie TDS 8.0 voor meer informatie over ondersteuning voor SQL Server TDS 8.0.

Download en installeer het ODBC-stuurprogramma van de gegevensbron waarmee u verbinding wilt maken op elk van de PolyBase-knooppunten. Zodra het stuurprogramma correct is geïnstalleerd, kunt u het stuurprogramma bekijken en testen vanuit de ODBC-gegevensbronbeheerder.

Schermopname van PolyBase-uitschaalgroepen.

In het vorige voorbeeld is de naam van de bestuurder met rood omcirkeld. Gebruik deze naam wanneer u de externe gegevensbron maakt.

Belangrijk

Schakel verbindingspooling in om de queryprestaties te verbeteren. Dit kan worden bereikt vanuit de ODBC-gegevensbronbeheerder.

Afhankelijke objecten maken in SQL Server

Als u de ODBC-gegevensbron wilt gebruiken, moet u eerst een paar objecten maken om de configuratie te voltooien.

In deze sectie worden de volgende Transact-SQL opdrachten gebruikt:

  1. Maak een database-gebaseerde referentie voor toegang tot de ODBC-bron.

    CREATE DATABASE SCOPED CREDENTIAL [<credential_name>]
        WITH IDENTITY = '<username>', SECRET = '<password>';
    

    In het volgende voorbeeld wordt bijvoorbeeld een referentie gemaakt met de naam credential_name, met een identiteit van username. Vervang <password> door een complex wachtwoord.

    CREATE DATABASE SCOPED CREDENTIAL credential_name
        WITH IDENTITY = 'username', SECRET = '<password>';
    
  2. Maak een externe gegevensbron met 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>]
    );
    

    In het volgende voorbeeld wordt een externe gegevensbron gemaakt:

    • Benoemde external_data_source_name
    • Gelegen op de ODBC-SERVERNAME en poort 4444
    • Verbinding maken met CData ODBC Driver For SAP 2015- Dit is het stuurprogramma dat is gemaakt onder Het ODBC-stuurprogramma installeren
    • Op ServerNodesap_server_node poort 5555
    • Geconfigureerd voor verwerking die naar de server wordt gepusht (PUSHDOWN = ON)
    • De credential_name-referentie gebruiken
    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
    );
    

Een externe tabel maken

Zodra u de afhankelijke objecten hebt gemaakt, kunt u een externe tabel maken met behulp van T-SQL.

In deze sectie worden de volgende Transact-SQL opdrachten gebruikt:

  1. Maak een of meer externe tabellen.

    Maak een externe tabel. U moet verwijzen naar de externe gegevensbron die u eerder hebt gemaakt met behulp van het DATA_SOURCE argument en de brontabel opgeven als de LOCATION. U hoeft niet naar alle kolommen te verwijzen, maar u moet ervoor zorgen dat de datatypes correct zijn toegewezen.

    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>'
    );
    

    Notitie

    Houd er rekening mee dat u de afhankelijke objecten voor alle externe tabellen opnieuw kunt gebruiken met behulp van deze externe gegevensbron.

  2. Optioneel: Statistieken maken in een externe tabel.

    Voor optimale queryprestaties raden we u aan statistieken te maken voor externe tabelkolommen, met name de kolommen die worden gebruikt voor joins, filters en aggregaties.

    CREATE STATISTICS statistics_name ON contact(FirstName) WITH FULLSCAN;