使用Campaign Federated Data Access(FDA)選項來處理儲存在外部資料庫中的資訊。 請遵循下列步驟來設定Teradata的存取權。
您需要安裝Teradata的驅動程式,才能建置與Campaign的連線。
安裝用於Teradata](https://downloads.teradata.com/download/connectivity/odbc-driver/linux)的[ODBC驅動程式。
它由三個軟體包組成,可以按以下順序安裝在Red Hat(或CentOS)/Suse上:
配置ODBC驅動程式。 配置可在標準檔案中執行:/etc/odbc.ini用於常規參數,/etc/odbcinst.ini用於聲明驅動程式:
/etc/odbc.ini
[ODBC]
InstallDir=/etc/
"InstallDir"與odbcinst.ini檔案的位置相對應。
/etc/odbcinst.ini
[ODBC DRIVERS]
teradata=Installed
[teradata]
Driver=/opt/teradata/client/15.10/lib64/tdata.so
APILevel=CORE
ConnectFunctions=YYY
DriverODBCVer=3.51
SQLLevel=1
指定Adobe Campaign伺服器的環境變數:
在FDA中連線至Teradata外部資料庫需要Adobe Campaign伺服器上執行其他設定步驟。 進一步瞭解。
Teradata外部帳戶可讓您將Campaign例項連接至Teradata外部資料庫。
在促銷活動Explorer中,按一下Administration / Platform / External accounts。
按一下New ,然後選擇External database作為Type。
要配置Teradata外部帳戶,您必須指定:
Type:選擇類 Teradata 型。
Server:Teradata伺服器的URL或名稱
Account:用於訪問Teradata資料庫的帳戶的名稱
Password:用於連接到Teradata資料庫的口令
Database:資料庫名稱(可選)
Options:要通過Teradata傳遞的選項。使用下列格式:'parameter=value'。 使用半欄作為值之間的分隔符。
Timezone:Teradata中設定的時區。進一步了解
當多個Adobe Campaign使用者連線至相同的FDA Teradata外部帳戶時,Query banding標籤可讓您在作業階段中設定查詢頻帶,即一組金鑰/值配對。
設定此選項時,每當Campaign使用者對Teradata資料庫執行查詢時,Adobe Campaign會傳送中繼資料,其中包含與此使用者相關的索引鍵清單。 然後Teradata管理員就可以將這些資料用於稽核或管理存取權限。
有關Query banding的詳細資訊,請參閱 Teradata文檔。
要配置查詢條帶,請執行以下步驟:
使用Default輸入預設查詢節區,如果用戶沒有關聯的查詢節區,則將使用該節區。 如果此欄位留空,則沒有查詢節區的使用者將無法使用Teradata。
使用Users欄位為每位使用者指定查詢頻帶。 您可以根據需要添加任意數量的鍵/值對,例如priority=1;workload=high。 如果用戶未分配查詢節區,將應用Default欄位。
勾選Active方塊以啟用此功能
如果在測試連接TIM-030008日期'2'時出現以下錯誤:缺少字元(iRc=-53)確保ODBC驅動程式已正確安裝,並且已為Campaign伺服器設定了LD_LIBRARY_PATH(Linux)/PATH(Windows)。
錯誤ODB-240000 ODBC錯誤:[Microsoft][ODBC Driver Manager]未找到資料源名稱,且未指定預設驅動程式。 在Windows中執行。Adobe Campaign預期teradata會在odbcinst.ini中命名為'{teradata}'。
啟動Campaign 18.10後,可以在外部帳戶的選項中添加ODBCDriverName="Teradata Database ODBC驅動程式16.10"。 版本號可以更改,通過運行odbcad32.exe並訪問「Drivers(驅動程式)」頁籤可以找到確切的名稱。
如果您使用舊版的促銷活動,則必須將驅動程式安裝建立的odbcinst.ini的Teradata部分複製到名為Teradata的新部分。 Regedit可用於此情況。 如果您的基礎是latin1,則必須在選項中添加APICharSize=1。
外部資料庫需要以下權限:建立/刪除/執行自定義過程、建立/刪除/插入/選擇表。 如果您想在Adobe Campaign例項上使用md5和sha2函式,您也必須建立使用者模式函式。
請務必設定正確的時區。 它應符合在Adobe Campaign例項中建立的外部帳戶中所設定的內容。
Adobe Campaign不會針對它將在資料庫中建立的物件設定保護模式(後援)。 您可能需要在Adobe Campaign使用下列查詢來連線至Teradata資料庫的使用者上設定預設值:
禁用預設後援 |
---|
MODIFY USER $login$ AS NO FALLBACK; |
如果您想在Adobe Campaign實例中使用md5函式,則必須從此頁(md5_20080530.zip)在Teradata資料庫上安裝用戶模式函式。
下載檔案的sha1如下: 65cc0bb6935f72fcd84fef1ebcd64c00115dfd1e。
要安裝md5:
解壓縮md5_20080530.zip檔案。
轉到md5/src目錄。
使用方法連接到您的Teradata資料庫。
運行以下beq命令:
.run file = hash_md5.btq
如果您想在Adobe Campaign實例中使用sha2函式,則必須從此頁(teradata-udf-sha2-1.0.zip)在Teradata資料庫上安裝使用者模式函式。
下載檔案的sha1如下:e87438d37424836358bd3902cf1adeb629349780。
要安裝sha2:
解壓縮teradata-udf-sha2-1.0.zip檔案。
前往teradata-udf-sha2-1.0/src目錄。
使用方法連接到您的Teradata資料庫。
運行以下兩個beq命令:
.run file = hash_sha256.sql
.run file = hash_sha512.sql
如果您想在Adobe Campaign實例中使用udf_utf16to8函式,則必須從Teradataunicode工具套件page(utk_release1.7.0.0.zip)的,在Teradata資料庫上安裝使用者模式函式。
下載檔案的sha1如下: e58235f434f52c71316a577cb48e20b97d24f470。
若要安裝udf_utf16to8:
解壓縮utk_release1.7.0.0.zip檔案。
在擷取的檔案中尋找udf_utf16to8.o,並導覽至包含檔案的目錄。 它應命名為utk_release1.7.0.0/utk_release1.7.0.0/04 TranslationUDFs/01 Teradata UDFs/suselinux-x8664/udf_installation/。
使用方法連接到您的Teradata資料庫。
鍵入以下beq命令:
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));
安裝驅動程式時需要以下操作:
檔案名和sha1:
tdobc1620_linux_indep.16.20.00.00-1.tar.gz 121fdd978b56fe1304fc5cb7819741b0847f44fd
TeradataToolsAndUtilitiesBase__linux_indep.16.20.01.00.tar.gz b 29d0af5ffd8dcf68a9dba6f8639387b19c563
如果您的Linux散發沒有套件,您可以如CentOS 7中所述安裝(例如使用docker),然後複製Adobe Campaign伺服器上/opt/teradata的內容。
要安裝ODBC驅動程式:
解壓縮tdobc1620__linux_indep.16.20.00.00-1.tar.gz檔案。
前往tdobc1620目錄。
您可能需要修正安裝指令碼:
"sed -i s/16.10/16.20/ setup_wrapper.sh".
運行setup_wrapper.sh。
安裝工具:
解壓縮TeradataToolsAndUtilitiesBase__linux_indep.16.20.01.00.tar.gz檔案。
前往TeradataToolsAndUtilitiesBase/Linux/i386-x8664/tdicu目錄。
運行setup_wrapper.sh。
前往TeradataToolsAndUtilitiesBase/Linux/i386-x8664/cliv2目錄。
運行setup_wrapper.sh。
前往TeradataToolsAndUtilitiesBase/Linux/i386-x8664/tptbase目錄。
運行setup_wrapper.sh。
libtelapi.so檔案應可在/opt/teradata/client/16.20/lib64中使用。
您首先需要下載適用於Windows的Teradata工具和公用程式。 您可以從此頁面下載
確保安裝ODBC驅動程式和Teradata Parallel Transporter Base。 它將安裝用於在Teradata資料庫上批量載入的telapi.dll。
確保驅動程式和實用程式的路徑位於nlserver在執行期間將具有的PATH變數中。 預設情況下,路徑為C:\Program Files (x86)\Teradata\Client\15.10\bin on Windows 32 bits or C:\Program Files\Teradata\Client\15.10\bin on 64 bit)。
Teradata使用非標準的時區名稱,您可以在 Teradata站點上找到清單。 Adobe Campaign會嘗試將外部設定中的時區轉換為Teradata所瞭解的時區。 如果找不到對應,則會找到會話的壁櫥GMT+X(或GMT-X)時區,日誌中會出現警告。
轉換完成時,會讀取名為teradata_timezones.txt的檔案,該檔案應位於下列datakit目錄:/usr/local/neolane/nl6/datakit under linux. 如果您編輯此檔案,請務必連絡Adobe Campaign團隊,以變更原始碼,否則下次促銷活動更新時,此檔案將會覆寫。
使用-verbose開關運行nlserver時,將指示用於連接的時區,例如:
15:04:04 > ODB-240007 Teradata: will use 'Europe Central' as session time zone.
如果使用的時區不正確,則可在外部帳戶上新增名為「TimeZoneName」的選項。 在這種情況下,請使用Teradata值,例如"TimeZoneName=Europe Central"。
當在Teradata檔案中使用大量載入或「快速載入」時,Campaign無法指出時區。 因此,建議您設定促銷活動用來連線之使用者的預設時區:
MODIFY USER $login$ AS TIME ZONE = 'Europe Central';