[Ultimate]{class="badge positive"}

Snowflake來源

IMPORTANT
  • Snowflake來源可在來源目錄中提供給已購買Real-Time Customer Data Platform Ultimate的使用者。
  • 根據預設,Snowflake來源會將null解譯為空字串。 請聯絡您的Adobe代表,以確保您的null值在Adobe Experience Platform中正確寫入null
  • 為了讓Experience Platform擷取資料,所有表格型批次來源的時區都必須設定為UTC。 Snowflake來源唯一支援的時間戳記是TIMESTAMP_NTZ與UTC時間。

Snowflake是雲端型資料倉儲平台,專為讓組織有效儲存、處理及分析大量資料而設計。 Snowflake是專為善用雲端的可擴充性和彈性而建置,可支援資料整合、進階分析以及跨團隊的順暢共用。 作為完全受管理的服務,Snowflake消除了傳統資料庫常見的維護複雜性,讓您能夠專注於從資料中獲取見解和價值。

您可以使用Snowflake來源連線,並將資料從Snowflake帶到Adobe Experience Platform。 請閱讀以下檔案,瞭解如何設定您的Snowflake來源並連線至Experience Platform。

先決條件 prerequisites

本節概述將Snowflake來源連線至Experience Platform之前,需要完成的設定工作。

IP位址允許清單

將來源連線至Experience Platform之前,您必須先將區域特定的IP位址新增至允許清單。 如需詳細資訊,請參閱允許清單IP位址以連線至Experience Platform的指南以瞭解詳細資訊。

收集必要的認證

您必須提供下列認證屬性的值,才能驗證您的Snowflake來源。

帳戶金鑰驗證(Azure)

提供下列認證的值,以使用帳戶金鑰驗證將Snowflake連線至Azure上的Experience Platform。

table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2
認證 說明
account 帳戶名稱可唯一識別組織內的帳戶。 在此情況下,您必須跨不同的Snowflake組織唯一識別帳戶。 若要這麼做,您必須在帳戶名稱前加上組織名稱。 例如: myorg-myaccount.snowflakecomputing.com。 閱讀擷取 Snowflake 帳戶識別碼的相關章節以取得其他指引。 如需詳細資訊,請參閱Snowflake 文件,以瞭解詳情。
warehouse Snowflake倉儲管理應用程式的查詢執行程式。 每個Snowflake倉儲彼此獨立,在將資料帶到Experience Platform時必須個別存取。
database Snowflake資料庫包含您要帶入Experience Platform的資料。
username Snowflake帳戶的使用者名稱。
password Snowflake使用者帳戶的密碼。
role 在Snowflake工作階段中使用的預設存取控制角色。 該角色應為已指派給指定使用者的現有角色。 預設角色為PUBLIC
connectionString 用來連線至您Snowflake執行個體的連線字串。 Snowflake的連線字串模式為jdbc:snowflake://{ACCOUNT_NAME}.snowflakecomputing.com/?user={USERNAME}&password={PASSWORD}&db={DATABASE}&warehouse={WAREHOUSE}
金鑰組驗證(Azure)

若要使用金鑰組驗證,請先產生2048位元的RSA金鑰組。 接下來,提供以下憑證的值,以使用金鑰組驗證連線至Azure上的Experience Platform。

table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2
認證 說明
account 帳戶名稱可唯一識別組織內的帳戶。 在此情況下,您必須跨不同的Snowflake組織唯一識別帳戶。 若要這麼做,您必須在帳戶名稱前加上組織名稱。 例如: myorg-myaccount.snowflakecomputing.com。 閱讀擷取 Snowflake 帳戶識別碼的相關章節以取得其他指引。 如需詳細資訊,請參閱Snowflake 文件,以瞭解詳情。
username 您Snowflake帳戶的使用者名稱。
privateKey 您Base64-帳戶的Snowflake編碼私密金鑰。 您可以產生加密或未加密的私密金鑰。 如果您使用加密的私密金鑰,則在對Experience Platform進行驗證時,也必須提供私密金鑰複雜密碼。 如需詳細資訊,請閱讀擷取您的私密金鑰的相關章節。
privateKeyPassphrase 私密金鑰複雜密碼是附加的安全性層級,在使用加密的私密金鑰進行驗證時必須使用此層級。 如果您使用未加密的私密金鑰,則不需要提供複雜密碼。
port Snowflake透過網際網路連線到伺服器時使用的連線埠號碼。
database 包含您要擷取至Experience Platform之資料的Snowflake資料庫。
warehouse Snowflake倉儲管理應用程式的查詢執行程式。 每個Snowflake倉儲彼此獨立,在將資料帶到Experience Platform時必須個別存取。

如需這些值的詳細資訊,請參閱Snowflake 金鑰組驗證指南

基本驗證(AWS)

提供下列認證的值,以使用基本驗證將Snowflake連線至AWS上的Experience Platform。

note warning
WARNING
Snowflake來源的基本驗證(或帳戶金鑰驗證)將於2025年11月被取代。 您必須移至金鑰組型驗證,才能繼續使用該來源,並將資料庫中的資料擷取至Experience Platform。 如需有關棄用的詳細資訊,請閱讀Snowflake 減少認證洩露風險的最佳實務指南
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2
認證 說明
host 您的Snowflake帳戶連線到的主機URL。
port Snowflake透過網際網路連線到伺服器時使用的連線埠號碼。
username 與您的Snowflake帳戶相關聯的使用者名稱。
password 與您的Snowflake帳戶關聯的密碼。
database 將從其中提取資料的Snowflake資料庫。
schema 與您的Snowflake資料庫關聯的結構描述名稱。 您必須確保您要授與資料庫存取權的使用者也擁有此綱要的存取權。
warehouse 您正在使用的Snowflake倉儲。
金鑰組驗證(AWS)

若要使用金鑰組驗證,請先產生2048位元的RSA金鑰組。 接下來,提供以下憑證的值,以使用金鑰組驗證連線至AWS上的Experience Platform。

table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2
認證 說明
account 帳戶名稱可唯一識別組織內的帳戶。 在此情況下,您必須跨不同的Snowflake組織唯一識別帳戶。 若要這麼做,您必須在帳戶名稱前加上組織名稱。 例如: http://myorg-myaccount.snowflakecomputing.com/。 閱讀擷取 Snowflake 帳戶識別碼的指南,以取得其他指引。 如需詳細資訊,請參閱Snowflake 文件,以瞭解詳情。
username 您Snowflake帳戶的使用者名稱。
privateKey 您的Snowflake使用者的私密金鑰,以base64編碼為單行,沒有標頭或分行符號。 若要準備它,請複製PEM檔案的內容、移除BEGIN/END行及所有分行符號,然後以base64編碼結果。 如需詳細資訊,請閱讀擷取您的私密金鑰的相關章節。 注意: AWS連線目前不支援加密的私密金鑰。
port Snowflake透過網際網路連線到伺服器時使用的連線埠號碼。
database 包含您要擷取至Experience Platform之資料的Snowflake資料庫。
warehouse Snowflake倉儲管理應用程式的查詢執行程式。 每個Snowflake倉儲彼此獨立,在將資料帶到Experience Platform時必須個別存取。

如需這些值的詳細資訊,請參閱Snowflake 金鑰組驗證指南

擷取您的帳戶識別碼 retrieve-your-account-identifier

您必須從Snowflake UI儀表板擷取帳戶識別碼,因為您將使用此項在Experience Platform上驗證您的Snowflake執行個體。

若要擷取您的帳戶識別碼:

  • 使用Snowflake 應用程式UI儀表板存取您的帳戶。
  • 在左側導覽中,選取​Accounts,然後從標題中選取​Active Accounts
  • 接著,選取資訊圖示,然後選取並複製目前URL的網域名稱。

已選取網域名稱的Snowflake UI儀表板。

產生您的RSA金鑰組

在命令列介面中使用OpenSSL,產生PKCS#8格式的2048位元RSA金鑰組。 最佳實務是建立加密的私密金鑰以提供安全性,這需要複雜密碼。

產生加密的私密金鑰

若要產生加密的Snowflake私密金鑰,請在終端機上執行下列命令:

code language-bash
openssl genrsa 2048 | openssl pkcs8 -topk8 -v2 des3 -inform PEM -out rsa_key.p8# You will be prompted to enter a passphrase. Store this securely!
產生未加密的私密金鑰

若要產生未加密的Snowflake私密金鑰,請在終端機上執行下列命令:

code language-bash
openssl genrsa 2048 | openssl pkcs8 -topk8 -inform PEM -out rsa_key.p8 -nocrypt

從您的私密金鑰產生公開金鑰

接下來,在命令列介面中執行以下命令,根據您的私密金鑰建立公開金鑰。

openssl rsa -in rsa_key.p8 -pubout -out rsa_key.pub# You will be prompted to enter the passphrase if the private key is encrypted.

將公開金鑰指派給Snowflake使用者

您必須使用Snowflake系統管理員角色(例如​SECURITYADMIN),將產生的公開金鑰與Experience Platform將使用的Snowflake服務使用者建立關聯。 若要擷取公開金鑰內容,請開啟rsa_key.pub檔案並複製整個內容,不包括-----BEGIN PUBLIC KEY----- and -----END PUBLIC KEY-----行。 接下來,在Snowflake中執行下列SQL:

ALTER USER {YOUR_SNOWFLAKE_USERNAME}>SET RSA_PUBLIC_KEY='{PUBLIC_KEY_CONTENT}';

在Base64中編碼私密金鑰

Experience Platform要求私密金鑰必須是Base64編碼,並在連線設定期間提供為字串。 使用適當的工具或指令碼將rsa_key.p8檔案的內容編碼為單一Base64字串。

TIP
在編碼程式之前或之後,請確定沒有額外的空格或分行符號,包括頁首/頁尾行(-----BEGIN ENCRYPTED PRIVATE KEY----- and -----END ENCRYPTED PRIVATE KEY-----),因為這會造成驗證錯誤。

驗證設定

在Experience Platform中建立Snowflake來源連線之前,您必須確定使用者的​ Default Role ​和​ Default Warehouse ​符合您在Experience Platform中提供的值。 您可以使用Snowflake SQL命令在DESCRIBE USER {USERNAME} UI中驗證這些設定。

或者,您可以按照以下步驟驗證您的設定:

  • 在左側導覽中選取​Admin,然後選取​Users & Roles
  • 選取適當的使用者,然後選取右上角的省略符號(...)。
  • 在出現的Edit user視窗中,瀏覽至Default Role以檢視與指定使用者相關聯的角色。
  • 在相同視窗中,瀏覽至Default Warehouse以檢視與指定使用者相關聯的倉儲。

您可在其中驗證角色與倉儲的Snowflake UI。

後續步驟

完成設定後,您現在可以繼續將您的Snowflake帳戶連線至Experience Platform。 請閱讀下列文件以了解更多資訊:

使用API連線Snowflake至Experience Platform

使用UI連線Snowflake至Experience Platform

recommendation-more-help
337b99bb-92fb-42ae-b6b7-c7042161d089