Configurer PolyBase pour accéder à des données externes dans Teradata

S’applique à :SQL Server

Cet article explique comment utiliser PolyBase sur une instance de SQL Server pour interroger des données externes dans Teradata.

Prerequisites

Si vous n’avez pas installé PolyBase, consultez Installation de PolyBase. Cet article décrit les prérequis pour l’installation.

La clé principale doit être créée avant les informations d’identification incluses dans l’étendue de la base de données.

Pour utiliser PolyBase sur Teradata, VC++ Redistributable est nécessaire.

Configurer une source de données externes Teradata

Pour interroger les données d’une source de données Teradata, vous devez créer des tables externes pour référencer les données externes. Cette section fournit un exemple de code pour créer ces tables externes.

Les commandes Transact-SQL suivantes sont utilisées dans cette section :

  1. Créez des informations d’identification incluses dans l’étendue de la base de données pour accéder à la source Teradata.

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

    Important

    Le connecteur ODBC Teradata pour Polybase prend uniquement en charge l’authentification de base (l’authentification Kerberos n’est pas prise en charge).

  2. Créez une source de données externe avec 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. Créez une table externe avec 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. Facultatif : Créez des statistiques sur une table externe.

    Pour des performances de requêtes optimales, nous vous recommandons de créer des statistiques sur les colonnes de table externe, en particulier celles utilisées pour les jointures, les filtres et les agrégats.

    CREATE STATISTICS statistics_name ON customer (C_CUSTKEY) WITH FULLSCAN; 
    

Important

Une fois que vous avez créé une source de données externes, vous pouvez utiliser la commande CREATE EXTERNAL TABLE afin de créer une table requêtable sur cette source.

Étapes suivantes

Pour plus de tutoriels sur la création de sources de données externes et de tables externes vers diverses sources de données, consultez référence PolyBase Transact-SQL.

Pour en savoir plus sur PolyBase, consultez Vue d’ensemble de SQL Server PolyBase.