Utilisez l’option Campaign Federated Data Access (FDA) pour traiter les informations stockées dans des bases de données externes. Suivez les étapes ci-dessous pour configurer l’accès à Hadoop.
La connexion à une base de données externe Hadoop dans FDA requiert les paramétrages suivants sur le serveur Adobe Campaign. Notez que cette configuration est possible pour Windows et Linux.
Téléchargez les pilotes ODBC pour Hadoop en fonction de votre version de système d’exploitation. Les pilotes se trouvent dans cette page.
Vous devez ensuite installer les pilotes ODBC et créer un DSN pour votre connexion Hive. Les instructions se trouvent dans cette page
Après avoir téléchargé et installé les pilotes ODBC, vous devez redémarrer Campaign Classic. Pour cela, exécutez la commande suivante :
systemctl stop nlserver.service
systemctl start nlserver.service
Dans Campaign Classic, vous pouvez ensuite configurer votre compte externe Hadoop. Pour plus d’informations sur la configuration de votre compte externe, voir cette section.
Le compte externe Hadoop vous permet de connecter votre instance Campaign à votre base de données externe Hadoop.
Dans Campaign Classic, configurez votre compte externe Hadoop. Dans l’Explorateur, cliquez sur Administration / Plateforme / Comptes externes.
Cliquez sur Nouveau.
Sélectionnez Base de données externe en tant que Type de compte externe.
Pour configuer le compte externe Hadoop, vous devez indiquer les informations suivantes :
Type : ODBC (Sybase ASE, Sybase IQ)
Serveur : nom du DNS
Compte : nom de l’utilisateur
Mot de passe : mot de passe du compte utilisateur
Base de données : nom de la base de données s’il n’est pas spécifié dans le DSN. Il peut rester vide s’il est spécifié dans le DSN
Fuseau horaire : fuseau horaire du serveur
Le connecteur prend en charge les options ODBC suivantes :
Nom | Valeur |
---|---|
ODBCMgr | iODBC |
warehouse | 1/2/4 |
Le connecteur prend également en charge les options Hive suivantes :
Nom | Valeur | Description |
---|---|---|
bulkKey | Clé d’accès Azure Blob ou DataLake. | Pour les chargeurs en masse wasb:// ou wasbs:// (c.-à-d. si l’outil de chargement en masse a pour préfixe wasb:// ou wasbs://). Il s’agit de la clé d’accès pour le compartiment de blob ou de DataLake servant au chargement en masse. |
hdfsPort | Numéro de port défini par défaut sur 8020 |
Pour le chargement HDFS en masse (c.-à-d. si l’outil de chargement en masse a pour préfixe webhdfs:// ou webhdfss://). |
bucketsNumber | 20 | Nombre de compartiments lors de la création d’une table regroupée. |
fileFormat | PARQUET | Format de fichier par défaut pour les tables de travail. |
Si vous devez vous connecter à Hadoop 2.1, suivez les étapes décrites ci-dessous pour Windows ou Linux.
Installez les pilotes ODBC et Azure HD Insight pour Windows.
Créez le nom de la source de données (DSN) en exécutant l’outil d’administrateur de la source de données ODBC. Un exemple de DSN système pour Hive vous est fourni. Vous pouvez le modifier.
Description: vorac (or any name you like)
Host: vorac.azurehdinsight.net
Port: 443
Database: sm_tst611 (or your database name)
Mechanism: Azure HDInsight Service
User/Password: admin/<your password here>
Créez le compte externe Hadoop, comme décrit dans cette section.
Installez unixodbc pour Linux.
apt-get install unixodbc
Téléchargez et installez les pilotes ODBC pour Apache Hive depuis HortonWorks : https://www.cloudera.com/downloads.html.
dpkg -i hive-odbc-native_2.1.10.1014-2_amd64.deb
Vérifiez l’emplacement des fichiers ODBC.
root@campadpac71:/tmp# odbcinst -j
unixODBC 2.3.1
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /root/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
Créez le nom de la source de données et éditez le fichier odbc.ini. Puis, créez un nom de source de données pour votre connexion Hive.
Voici un exemple pour HDInsight destiné à configurer une connexion appelée "viral" :
[ODBC Data Sources]
vorac
[vorac]
Driver=/usr/lib/hive/lib/native/Linux-amd64-64/libhortonworkshiveodbc64.so
HOST=vorac.azurehdinsight.net
PORT=443
Schema=sm_tst611
HiveServerType=2
AuthMech=6
UID=admin
PWD=<your password here>
HTTPPath=
UseNativeQuery=1
Le paramètre UseNativeQuery est ici très important. Campaign est basé sur Hive et ne fonctionnera pas correctement si le paramètre UseNativeQuery n’est pas défini. En règle générale, le pilote ou Hive SQL Connector réécrit les requêtes et modifie l’ordre des colonnes.
La configuration de l’authentification dépend de la configuration de Hive/Hadoop. Par exemple, pour HDInsight, utilisez AuthMech=6 pour l’authentification par utilisateur/mot de passe, comme décrit ici.
Exportez les variables.
export ODBCINI=/etc/myodbc.ini
export ODBCSYSINI=/etc/myodbcinst.ini
Configurez les pilotes Hortonworks via /usr/lib/hive/lib/native/Linux-amd64-64/hortonworks.hiveodbc.ini.
Vous devez utiliser UTF-16 pour vous connecter à Campaign et unix-odbc (libodbcinst).
[Driver]
DriverManagerEncoding=UTF-16
ErrorMessagesPath=/usr/lib/hive/lib/native/hiveodbc/ErrorMessages/
LogLevel=0
LogPath=/tmp/hive
SwapFilePath=/tmp
ODBCInstLib=libodbcinst.so
Vous pouvez maintenant tester votre connexion en utilisant isql.
isql vorac
isql vorac -v
Créez le compte externe Hadoop, comme décrit dans cette section.