Delen via


PolyBase configureren voor toegang tot externe gegevens in Teradata

van toepassing op:SQL Server-

In dit artikel wordt uitgelegd hoe u PolyBase op een SQL Server-exemplaar gebruikt om een query uit te voeren op externe gegevens in Teradata.

Voorwaarden

Als u PolyBase nog niet hebt geïnstalleerd, raadpleegt u PolyBase-installatie. In het installatieartikel worden de vereisten uitgelegd.

Voordat u een database-scoped referentie maakt, moet eerst een hoofdsleutel worden aangemaakt.

Voor het gebruik van PolyBase op Teradata is VC++ redistributable vereist.

Een externe Teradata-gegevensbron configureren

Als u een query wilt uitvoeren op de gegevens uit een Teradata-gegevensbron, moet u externe tabellen maken om te verwijzen naar de externe gegevens. Deze sectie bevat voorbeeldcode voor het maken van deze externe tabellen.

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

  1. Maak een databasegerelateerde referentie voor toegang tot de Teradata-bron.

    /*  specify credentials to external data source
    *  IDENTITY: user name for external source. 
    *  SECRET: password for external source.
    */
    CREATE DATABASE SCOPED CREDENTIAL credential_name WITH IDENTITY = 'username', Secret = 'password';
    

    Belangrijk

    De Teradata ODBC-connector voor PolyBase ondersteunt alleen basisverificatie, niet Kerberos-verificatie.

  2. Maak een externe gegevensbron met CREATE EXTERNAL DATA SOURCE.

    /*  LOCATION: Location string should be of format '<vendor>://<server>[:<port>]'.
    * PUSHDOWN: specify whether computation should be pushed down to the source. ON by default.
    * CONNECTION_OPTIONS: Specify driver location
    * CREDENTIAL: the database scoped credential, created above.
    */  
    CREATE EXTERNAL DATA SOURCE external_data_source_name
    WITH (LOCATION = teradata://<server address>[:<port>],
    -- PUSHDOWN = ON | OFF,
    CREDENTIAL = credential_name);
    
  3. Maak een externe tabel met CREATE EXTERNAL TABLE.

    /*
    * LOCATION: Two-part identifier indicating the database and the table name.
    * DATA_SOURCE: Data source created above.
    */
    CREATE EXTERNAL TABLE [TableC] (
      [MyKey] INT NOT NULL,
      [RandomInt] INT NOT NULL,
      [RandomFloat] DECIMAL(13, 2) NOT NULL)
    WITH (
      LOCATION = 'TD_SERVER_DB.TableC',
      DATA_SOURCE = external_data_source_name)
    
  4. Optioneel: Statistieken maken in een externe tabel.

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

    CREATE STATISTICS statistics_name ON customer (C_CUSTKEY) WITH FULLSCAN; 
    

Belangrijk

Zodra u een externe gegevensbron hebt gemaakt, kunt u de opdracht CREATE EXTERNAL TABLE opdracht gebruiken om een querybare tabel over die bron te maken.

Volgende stappen

Zie PolyBase Transact-SQL referentievoor meer zelfstudies over het maken van externe gegevensbronnen en externe tabellen in verschillende gegevensbronnen.

Zie Overzicht van SQL Server PolyBasevoor meer informatie over PolyBase.