配置对Hadoop的访问

使用活动​联合数据访问(联合数据访问)选项处理存储在外部数据库中的信息。 请按照以下步骤配置访问Hadoop。

  1. 配置Hadoop数据库
  2. 将Hadoop外部帐户配置为活动

配置Hadoop3.0

在联合数据访问中连接到Hadoop外部数据库需要Adobe Campaign服务器上的以下配置。 请注意,此配置适用于Windows和Linux。

  1. 根据您的操作系统版本,下载Hadoop的ODBC驱动程序。 驱动程序可在此页上找到。

  2. 然后,您需要安装ODBC驱动程序并为配置单元连接创建DSN。 说明可在此页中找到

  3. 下载和安装ODBC驱动程序后,需要重新启动Campaign Classic。 要执行此操作,请运行以下命令:

    systemctl stop nlserver.service
    systemctl start nlserver.service
    
  4. 在Campaign Classic中,您随后可以配置Hadoop外部帐户。 有关如何配置外部帐户的详细信息,请参阅本节

Hadoop外部帐户

Hadoop外部帐户允许您将活动实例连接到Hadoop外部数据库。

  1. 在Campaign Classic中,配置Hadoop外部帐户。 在​Explorer​中,单击​Administration / Platform / External accounts

  2. 单击 New.

  3. 选择​External database​作为外部帐户的​Type

  4. 配置​Hadoop​外部帐户,必须指定:

    • Type:ODBC(Sybase ASE,Sybase IQ)

    • Server:DNS的名称

    • Account:用户的名称

    • Password:用户帐户密码

    • Database:如果未在DSN中指定数据库的名称。如果在DSN中指定,则可将其留空

    • Time zone:服务器时区

连接器支持以下ODBC选项:

名称
ODBCMgr iODBC
仓库 1/2/4

连接器还支持以下配置单元选项:

名称 说明
bulkKey Azureblob或DataLake访问密钥 对于wasb://或wasbs://批量加载程序(即,如果批量加载工具与wasb://或wasbs://开始)。
它是用于批量加载的blob或DataLake存储桶的访问密钥。
hdfsPort 端口号
默认设置为8020
对于HDFS批量加载(即,如果批量加载工具开始为webhdfs://或webhdfss://)。
bucketsNumber 20 创建聚簇表时的桶数。
fileFormat 镶木 工作表的默认文件格式。

配置Hadoop2.1

如果需要连接到Hadoop2.1,请按照以下步骤操作WindowsLinux

Hadoop2.1 for Windows

  1. 为Windows安装ODBC和Azure HD Insight驱动程序。

  2. 通过运行ODBC数据源管理工具创建DSN(数据源名称)。 Hive的系统DSN范例供您修改。

    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>
    
  3. 创建Hadoop外部帐户,详见本节

Hadoop2.1 for Linux

  1. 安装unixodbc for Linux。

    apt-get install unixodbc
    
  2. 从HortonWorks下载并安装Apache Hive的ODBC驱动程序:https://www.cloudera.com/downloads.html

    dpkg -i hive-odbc-native_2.1.10.1014-2_amd64.deb
    
  3. 检查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
    
  4. 创建DSN(数据源名称)并编辑odbc.ini文件。 然后,为您的配置单元连接创建DSN。

    以下是HDInsight设置一个名为“病毒”的连接的示例:

    [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
    
    注意

    此处的​UseNativeQuery​参数非常重要。 活动识别配置单元,除非设置UseNativeQuery,否则将无法正常工作。 通常,驱动程序或Hive SQL Connector将重写查询并篡改列顺序。

    身份验证设置取决于配置单元/Hadoop配置。 例如,对于HD Insight,请使用AuthMech=6进行用户/密码身份验证,如此处所述。

  5. 导出变量。

    export ODBCINI=/etc/myodbc.ini
    export ODBCSYSINI=/etc/myodbcinst.ini
    
  6. 通过/usr/lib/hive/lib/native/Linux-amd64-64/hortonworks.hiveodbc.ini设置Hortonworks驱动程序。

    必须使用UTF-16才能连接活动和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
    
  7. 您现在可以使用isql测试连接。

    isql vorac
    isql vorac -v
    
  8. 创建Hadoop外部帐户,详见本节

在此页面上