本頁說明如何使用檔案共用聯結器讀取 Salesforce Data 360 (先前稱為 Data Cloud) 中的資料。
我應該使用哪一個 Salesforce 連接器?
Databricks 為 Salesforce 提供多個連接器。 有兩個零副本連接器:Salesforce Data 360 檔案共用連接器和 Salesforce Data 360 查詢聯合連接器。 這些可讓您在 Salesforce Data 360 中查詢資料,而無需移動資料。 還有一個 Salesforce 擷取連接器,可從各種 Salesforce 產品複製資料。
下表摘要說明 Databricks 中 Salesforce 連接器之間的差異:
| 連接器 | 用例 | 支援的 Salesforce 產品 |
|---|---|---|
| Salesforce Data 360 檔案共用 | 當您在 Lakehouse 同盟中使用 Salesforce Data 360 檔案共用連接器時,Databricks 會呼叫 Salesforce 資料即服務 (DaaS) API,以直接讀取基礎雲端物件儲存位置中的資料。 查詢會在 Databricks 計算上執行,而不使用 JDBC 通訊協定。 相較於查詢同盟,檔案共用很適合用來同盟大量數據。 它提供改善的效能,可從多個數據源讀取檔案,以及更好的下推功能。 請參閱 Salesforce Data 360 檔案共用的 Lakehouse 聯盟。 |
Salesforce 資料 360 |
| Salesforce Data 360 查詢聯盟 | 當您在 Lakehouse 同盟中使用 Salesforce Data 360 查詢同盟連接器時,Databricks 會使用 JDBC 連線到來源資料,並將查詢向下推送至 Salesforce。 請參閱 在 Salesforce Data 360 上執行聯合查詢。 | Salesforce 資料 360 |
| Salesforce 匯入 | Lakeflow Connect 中的 Salesforce 擷取連接器可讓您從 Salesforce Platform 資料建立完全受控的擷取管線。 此連接器不僅利用 CDP 數據,還能利用 Data Intelligence Platform 中的 CRM 數據,將價值最大化。 查看 從 Salesforce 匯入數據。 | 請參閱 Salesforce 擷取連接器支援哪些 Salesforce 產品? |
開始之前
工作區需求:
- 已為 Unity Catalog 啟用了工作區。
計算需求:
- 從 Databricks 計算資源到 Salesforce Data 360 API 和 Salesforce Data 360 中資料所在的公共 S3 儲存桶的網路連線。 請參閱 Lakehouse Federation 的網路建議。
- Azure Databricks 叢集必須使用 Databricks Runtime 16.3 或更新版本和標準存取模式。
- SQL 倉儲必須是 Pro 或無伺服器。
需要的權限:
- 若要建立連線,您必須是中繼存放區系統管理員,或是具有附加至工作區之 Unity 目錄中繼存放區
CREATE CONNECTION許可權的使用者。 - 若要建立外來目錄,您必須具有中繼存放區的
CREATE CATALOG許可權,並且必須是連線的擁有者或具有該連線的CREATE FOREIGN CATALOG特權。
在後續每個以任務為基礎的章節中,會指定額外的權限要求。
建立連線和外部目錄
連接會指定用來存取外部資料庫系統的路徑和認證。 若要建立連線,您可以在 Azure Databricks 筆記本或 Databricks SQL 查詢編輯器中使用目錄總管或 CREATE CONNECTION SQL 命令。
備註
您也可以使用 Databricks REST API 或 Databricks CLI 來建立連線。 請參閱 POST /api/2.1/unity-catalog/connections 和 Unity Catalog 命令。
需要的許可權:中繼存放區系統管理員或擁有CREATE CONNECTION許可權的使用者。
目錄檢視器
在您的 Azure Databricks 工作區中,按兩下
目錄。
在 目錄 窗格頂端,單擊
新增 圖標,然後從選單中選取 新增連線。或者,從 [快速存取] 頁面,按兩下 [外部數據 >] 按鈕,移至 [連線] 索引卷標,然後按兩下 [建立連線]。
在 [設定連線精靈] 的 [連線基本概念] 頁面上,輸入使用者易記的 [聯機名稱]。
選取 Salesforce Data 360 檔案共用的連線類型。
(選擇性) 新增註解。
點選 「建立連線」。
在 「驗證」 頁面上,輸入 Salesforce Data 360 檔案共用執行個體的下列屬性:
-
租使用者特定端點:例如
https://mvsw0mbrmqzdcyj-m02t0mrsh1.pc-rnd.c360a.salesforce.com -
核心租用戶標識碼:例如
core/falcontest8-core4sdb26/00DVF000001E16v2AC
-
租使用者特定端點:例如
在 目錄基本概念 頁面上,輸入外部目錄的名稱。 外部目錄會鏡像外部數據系統中的資料庫,讓您可以使用 Azure Databricks 和 Unity 目錄來查詢和管理該資料庫中數據的存取權。
(選擇性)按兩下 [ 測試連線 ] 以確認其運作正常。
點選 「建立目錄」。
在 [Access] 頁面上,選擇工作區以讓使用者能存取您建立的目錄。 您可以選取 [所有工作區都有存取權],或點擊 [指派給工作區],選取工作區,然後點擊 [指派]。
將 擁有者 變更為可以管理目錄中所有物件存取權的人。 在文字框中開始輸入對象,然後在搜尋結果中點擊該對象。
對目錄授予許可權。 請點擊授與:
一。 指定可存取目錄中對象的 主體 。 在文字框中開始輸入對象,然後在搜尋結果中點擊該對象。 一。 選取 權限預設,以授與每個主體。 根據預設,所有帳戶用戶都會被授與
BROWSE。- 從下拉功能表中選取 [數據讀取器],以授與目錄中物件
read許可權。 - 從下拉功能表中選取 資料編輯器,以授予
read和modify目錄中對象的權限。 - 手動選取要授與的許可權。
一。 請按一下 授權。
- 從下拉功能表中選取 [數據讀取器],以授與目錄中物件
按 [下一步]。
在 [元數據] 頁面上,指定標籤的鍵-值配對。 如需詳細資訊,請參閱在 Unity Catalog 中將標籤套用到可保護的物件。
(選擇性) 新增註解。
點選 [儲存]。
記下
Account URL和Connection URL。 您需要這些值,才能在 Salesforce 中建立數據共享目標。
SQL
在筆記本或 Databricks SQL 查詢編輯器中執行下列命令。
CREATE CONNECTION <connection-name> TYPE SALESFORCE_DATA_CLOUD_FILE_SHARING OPTIONS ( tenant_specific_endpoint '<tenant_specific_endpoint>', core_tenant_id '<core_tenant_id>' );移至新建立連線的連接頁面,並記錄
Account URL和Connection URL。 您需要這些值,才能在 Salesforce 中建立數據共享目標。
在 Salesforce 中建立數據共享目標
使用您在上一個步驟中擷取的 Account URL 和 Connection URL 在 Salesforce 中建立數據共享目標。
請參閱 Salesforce 文件中的建立數據共享目標 (Databricks)。
數據類型對應
當您從 Salesforce Data 360 檔案共用讀取至 Spark 時,資料類型會對應如下:
| Salesforce Data 360 檔案共用類型 | Spark 類型 |
|---|---|
| 數目 | DecimalType(38, 18) |
| 布林值 | BooleanType |
| 文字 | 字串類型 |
| 日期 | 日期類型 |
| 日期時間 | 時間戳類型 |
| 電子郵件(文字) | 字串類型 |
| 百分比 (數位) | DecimalType(38, 18) |
| 電話(簡訊) | 字串類型 |
| URL (文字) | 字串類型 |
局限性
- 連接器無法與單一使用者叢集搭配使用。