Sur cette page, vous verrez comment configurer Adobe Campaign Classic de manière à pouvoir utiliser un compte externe Teradata. Vous apprendrez également à configurer votre base de données Teradata pour la rendre compatible avec l’ensemble des fonctionnalités de Campaign.

Remarque :

À noter que la configuration et l’utilisation générales d’un compte externe ne sont pas décrites dans ce document. Pour plus d’informations, référez-vous à cette page.

Compatibilité

Format Unicode

Version de la base de données Version du pilote Version minimum requise de Campaign
Remarque
15 15 ACC 17.9

Sous Linux :

  • Possible échec des requêtes horodatées
    (corrigé dans la version 8937 pour 18.4 et dans 8977 pour 18.10).
  • En mode de débogage, des avertissements en lien à une mauvaise utilisation de la mémoire dans le pilote peuvent vous être donnés. Cependant, nous n’avons constaté aucun problème de stabilité lors du test de cette installation.
15

16

ACC 17.9

Installation recommandée pour une base de données Teradata 15 sous Linux.
 
16
16
ACC 18.10
Les caractères Unicode avec paires de substitution ne sont pas entièrement traités.
  • L’utilisation de caractères de substitution dans les données devrait fonctionner.
  • L’utilisation de caractères de substitution dans les conditions de filtrage d’une requête ne fonctionne pas dans cette modification.

16

15

non pris en charge
 

Norme Latin-1

Seule la norme Latin-1 était prise en charge par les versions d’Adobe Campaign Classic antérieures à la 17.9.

À partir de la version 17.9, Adobe Campaign Classic prend en charge la base de données Teradata en Unicode, par défaut.

Les clients qui migrent vers une version récente de Campaign Classic dont la base de données Teradata est en Latin-1 doivent ajouter le paramètre APICharSize=1 dans les options du compte externe.

Description

Configuration de la base de données

Configuration de l’utilisateur

Les droits suivants sont indispensables : création, dépôt et exécution de procédures personnalisées ; création, dépôt, insertion et sélection de tables. Vous serez également amené à créer des fonctions pour le mode utilisateur, si vous souhaitez utiliser les fonctions md5 et sha2 sur votre instance Adobe Campaign (voir fonctions du mode utilisateur).

Assurez-vous de configurer le bon fuseau horaire. Celui-ci doit être le même que le fuseau horaire défini pour le compte externe créé dans l’instance Adobe Campaign.

Aucun mode de protection (solution de rechange) n’est défini par Campaign pour les objets créés dans la base de données. Nous vous conseillons de définir une valeur par défaut pour l’utilisateur. Campaign utilisera cette valeur pour se connecter à la base de données Teradata, via la requête suivante :

disable default fallback
MODIFY USER $login$ AS NO FALLBACK;

Fonctions du mode utilisateur

Lorsque vous voulez utiliser les fonctions md5 ou sha2 (sha256 ou sha512) dans votre instance Adobe Campaign, vous devez installer les fonctions du mode utilisateur suivantes sur votre base de données Teradata :

Vous trouverez ci-dessous la liste des versions testées et le sha1 des fichiers téléchargés :

  • md5_20080530.zip 65cc0bb6935f72fcd84fef1ebcd64c00115dfd1e ;
  • teradata-udf-sha2-1.0.zip e87438d37424836358bd3902cf1adeb629349780 ;
  • utk_release1.7.0.0.zip e58235f434f52c71316a577cb48e20b97d24f470.

Pour installer md5 :

  1. Décompressez le fichier md5_20080530.zip.

  2. Accédez au répertoire md5/src.

  3. Connectez-vous à votre base de données Teradata avec bteq.

  4. Exécutez la commande bteq suivante :

     

    .run file = hash_md5.btq

Pour installer sha2 :

  1. Décompressez le fichier teradata-udf-sha2-1.0.zip.

  2. Accédez au répertoire teradata-udf-sha2-1.0/src.

  3. Connectez-vous à votre base de données Teradata avec bteq.

  4. Exécutez les commandes bteq suivantes :

    .run file = hash_sha256.sql
    .run file = hash_sha512.sql

Pour installer udf_utf16to8 :

  1. Décompressez le fichier utk_release1.7.0.0.zip.

  2. Recherchez udf_utf16to8.o parmi les fichiers extraits, et accédez au répertoire qui contient le fichier, qui doit être nommé utk_release1.7.0.0/utk_release1.7.0.0/04 TranslationUDFs/01 Teradata UDFs/suselinux-x8664/udf_installation/.

  3. Connectez-vous à votre base de données Teradata avec bteq.

  4. Saisissez la commande bteq suivante :

    REPLACE FUNCTION udf_utf16to8 (
        inputString VARCHAR(8000) CHARACTER SET UNICODE
    ) RETURNS VARCHAR(16000) CHARACTER SET LATIN
    LANGUAGE C
    NO SQL
    EXTERNAL NAME 'CO!i18n103!udf_utf16to8.o!F!udf_utf16to8'
    PARAMETER STYLE SQL;
     
    -- Test: should return 410042
    SELECT CAST(Char2HexInt(UDF_UTF16to8(_UNICODE'004100000042'XC)) AS VARCHAR(100));

Configuration du serveur Campaign

Linux

Installation du pilote

Cette installation nécessite :

Noms de fichiers et sha1 :

  • tdodbc1620__linux_indep.16.20.00.00-1.tar.gz 121fdd978b56fe1304fc5cb7819741b0847f44fd
  • TeradataToolsAndUtilitiesBase__linux_indep.16.20.01.00.tar.gz b29d0af5ffd8dcf68a9dbbaa6f8639387b19c563

S’il n’existe pas de package pour votre distribution Linux, vous pouvez procéder à l’installation, comme expliqué, sous CentOS 7 (à l’aide de Docker, par exemple), puis copier le contenu du répertoire /opt/teradata sur votre serveur Adobe Campaign. Cette solution fonctionne très bien sous Debian 8.

Pour installer le pilote ODBC :

  1. Procédez à l’extraction du fichier tdodbc1620__linux_indep.16.20.00.00-1.tar.gz.

  2. Accédez au répertoire tdodbc1620.

  3. Il se peut que vous deviez corriger le script d’installation : « sed -i s/16.10/16.20/ setup_wrapper.sh ».

  4. Exécutez setup_wrapper.sh. Les options par défaut devraient convenir.

Pour installer Tools :

  1. Procédez à l’extraction du fichier TeradataToolsAndUtilitiesBase__linux_indep.16.20.01.00.tar.gz.

  2. Accédez au répertoire TeradataToolsAndUtilitiesBase/Linux/i386-x8664/tdicu.

  3. Exécutez setup_wrapper.sh. Les options par défaut devraient convenir.

  4. Accédez au répertoire TeradataToolsAndUtilitiesBase/Linux/i386-x8664/cliv2.

  5. Exécutez setup_wrapper.sh. Les options par défaut devraient convenir.

  6. Accédez au répertoire TeradataToolsAndUtilitiesBase/Linux/i386-x8664/tptbase.

  7. Exécutez setup_wrapper.sh. Les options par défaut devraient convenir.

  8. Un fichier libtelapi.so devrait être disponible dans /opt/teradata/client/16.20/lib64.

Configuration du pilote

/etc/odbc.ini
[ODBC]
InstallDir=/etc/  
[ODBC Data Sources]
Teradata=/opt/teradata/client/16.20/lib64/tdataodbc_sb64.so
/etc/odbcinst.ini
[ODBC DRIVERS]
teradata=Installed  
[teradata]
Driver=/opt/teradata/client/16.20/lib64/tdataodbc_sb64.so
APILevel=CORE
ConnectFunctions=YYY
DriverODBCVer=3.51
SQLLevel=1

Variables d’environnement

Copiez les lignes suivantes dans vos fichiers customer.sh :

customer.sh
export ODBCINI="/etc/odbc.ini"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/opt/teradata/client/16.20/lib64:/opt/teradata/client/16.20/odbc_64/lib"

Windows

Téléchargez d’abord Teradata Tools and Utilities pour Windows.

Assurez-vous d’installer le pilote ODBC et Teradata Parallel Transporter. Ceci entraînera l’installation de telapi.dll, fichier utilisé pour le chargement en masse sur la base de données Teradata.

Assurez-vous que le chemin d’accès au pilote et aux utilitaires se trouve dans la variable PATH utilisée par nlserver lors de l’exécution. Le chemin d’accès par défaut est C:\Program Files (x86)\Teradata\Client\15.10\bin pour Windows 32 bits et C:\Program Files\Teradata\Client\15.10\bin pour Windows 64 bits.

Configuration du compte externe

Pour configurer votre compte externe, sélectionnez Teradata et laissez le nom de la base de données vide. Pensez à déployer les fonctions.

Si l’erreur suivante apparaît au moment de tester la connexion, TIM-030008 Date '2': missing character(s) (iRc=-53), assurez-vous que le pilote ODBC est bien installé et que les variables LD_LIBRARY_PATH (Linux) / PATH (Windows) sont définies pour le serveur Campaign.

L’erreur ODB-240000 ODBC error: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified. se produit sous Windows lorsque vous utilisez un pilote 16.X. Campaign s’attend à ce que le teradata soit nommé '{teradata}' dans odbcinst.ini.
Si vous possédez la version 18.10 du serveur Campaign, vous pouvez ajouter ODBCDriverName="Teradata Database ODBC Driver 16.10" dans les options du compte externe. Même si votre numéro de version est différent, vous trouverez exactement le même nom lors de l’exécution d’odbcad32.exe et dans l’onglet Drivers.
Pour les versions antérieures à 18.10, vous devrez copier la section Teradata du fichier odbcinst.ini, créé lors de l’installation du pilote, vers une nouvelle section Teradata. Vous pouvez utiliser regedit.

Si votre base est en latin-1, vous devrez ajouter APICharSize=1 aux options. Reportez-vous à la section compatibilité pour plus d’informations.

Fuseau horaire

La gestion des fuseaux horaires a été améliorée et ajoutée aux versions 8931 pour 18.4 et 8977 pour 18.10.

Teradata utilise des noms de fuseaux horaires non standard. Vous en trouverez la liste sur le site de Teradata. Campaign essaiera de convertir le fuseau horaire donné dans la configuration externe en une valeur comprise par Teradata. Si aucune correspondante n’est trouvée, le fuseau horaire GMT + X (ou GMT - X) le plus proche sera trouvé pour la session et un avertissement sera ajouté au journal.
La conversion s’effectue grâce à la lecture d’un fichier nommé teradata_timezones.txt, censé se trouver dans le répertoire datakit suivant : /usr/local/neolane/nl6/datakit sous Linux. Si vous modifiez ce fichier, assurez-vous de contacter l’équipe Adobe Campaign pour que la modification soit apportée au code source. Autrement, le fichier sera écrasé lors de la mise à jour de Campaign suivante.

Le fuseau horaire utilisé pour la connexion est indiqué au moment de l’exécution de nlserver avec le commutateur verbose. Par exemple :

15:04:04 >   ODB-240007 Teradata: will use 'Europe Central' as session time zone.

Si le fuseau horaire utilisé n’est pas le bon, l’option « TimeZoneName » peut être ajoutée au compte externe. Dans ce cas, utilisez la valeur Teradata, par exemple « TimeZoneName=Europe Central ».

Lors de l’utilisation du chargement en masse (« fast load » dans la documentation Teradata), il est impossible pour Campaign d’indiquer le fuseau horaire. Par conséquent, nous vous recommandons de définir le fuseau horaire par défaut de l’utilisateur, que Campaign utilise pour se connecter :

MODIFY USER $login$ AS TIME ZONE = 'Europe Central';

Conclusion

Grâce à ce tutoriel, la connexion entre votre instance Campaign et votre base de données Teradata devrait fonctionner sans problème.
Si tel n’était pas le cas, contactez l’équipe d’assistance d’Adobe Campaign.

Ce produit est distribué sous licence Creative Commons Attribution - Pas d’utilisation commerciale - Partage à l’identique 3.0 non transposé  Les publications Twitter™ et Facebook ne sont pas couvertes par les dispositions Creative Commons.

Mentions légales   |   Politique de confidentialité en ligne