Konfigurera PolyBase för åtkomst till externa data i Teradata

gäller för:SQL Server

Den här artikeln beskriver hur du använder PolyBase på en SQL Server-instans för att fråga externa data i Teradata.

Förutsättningar

Om du inte har installerat PolyBase, se PolyBase-installation. Installationsartikeln förklarar kraven.

Innan du skapar en databasomfångad autentiseringsuppgift måste en huvudnyckel skapas.

Om du vill använda PolyBase på Teradata krävs VC++ redistributable.

Konfigurera en extern Teradata-datakälla

Om du vill köra frågor mot data från en Teradata-datakälla måste du skapa externa tabeller för att referera till externa data. Det här avsnittet innehåller exempelkod för att skapa dessa externa tabeller.

Följande Transact-SQL kommandon används i det här avsnittet:

  1. Skapa en databasomfattande autentiseringsuppgift för åtkomst till Teradata-källan.

    /*  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';
    

    Viktig

    Teradata ODBC Connector för PolyBase stöder endast grundläggande autentisering, inte Kerberos-autentisering.

  2. Skapa en extern datakälla med 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. Skapa en extern tabell med 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. Valfritt: Skapa statistik i en extern tabell.

    Vi rekommenderar att du skapar statistik för externa tabellkolumner, särskilt de som används för kopplingar, filter och aggregeringar, för optimal frågeprestanda.

    CREATE STATISTICS statistics_name ON customer (C_CUSTKEY) WITH FULLSCAN; 
    

Viktig

När du har skapat en extern datakälla kan du använda CREATE EXTERNAL TABLE kommandot för att skapa en frågebar tabell över den källan.