Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfada, Azure Databricks tarafından yönetilmeyen Salesforce Data 360 verilerinde federasyon sorguları çalıştırmak için Lakehouse Federasyon'un nasıl ayarlanacağı açıklanır. Lakehouse Federasyonu hakkında daha fazla bilgi edinmek için bkz . Dış veritabanlarına ve kataloglara bağlanma
Lakehouse Federation kullanarak Salesforce Data 360 veritabanınıza bağlanmak için Azure Databricks Unity Kataloğu meta veri deponuzda aşağıdakileri oluşturmanız gerekir (9 Kasım 2023'den sonra oluşturulan çalışma alanlarında zaten otomatik olarak sağlanan bir Unity Kataloğu meta deposu vardır):
- Salesforce Data 360 veritabanınıza bağlantı .
- Unity Kataloğu'ndaki Salesforce Data 360 veritabanınızı yansıtan bir yabancı katalog ; böylece Unity Kataloğu sorgu söz dizimini ve veri idare araçlarını kullanarak Azure Databricks kullanıcısının veritabanına erişimini yönetebilirsiniz.
Hangi Salesforce bağlayıcısı kullanmalıyım?
Databricks, Salesforce için birden çok bağlayıcı sunar. İki sıfır kopya bağlayıcısı vardır: Salesforce Data 360 (eski adıyla Data Cloud) dosya paylaşımı bağlayıcısı ve Salesforce Data 360 sorgu federasyon bağlayıcısı. Bunlar Salesforce Data 360'taki verileri taşımadan sorgulamanıza olanak sağlar. Salesforce Data 360 ve Salesforce Sales Cloud gibi çeşitli Salesforce ürünlerinden veri kopyalayan bir Salesforce alım bağlayıcısı da vardır.
Aşağıdaki tabloda Databricks'teki Salesforce bağlayıcıları arasındaki farklar özetlenmektedir:
| Bağlayıcı | Kullanım örneği | Desteklenen Salesforce ürünleri |
|---|---|---|
| Salesforce Data 360 dosya paylaşımı | Lakehouse Federation'da Salesforce Data 360 dosya paylaşımı bağlayıcısını kullandığınızda Databricks, temel alınan bulut nesnesi depolama konumundaki verileri doğrudan okumak için Salesforce Hizmet Olarak Veri (DaaS) API'lerini çağırır. Sorgular, JDBC protokolü kullanılmadan Databricks işlemi üzerinde çalıştırılır. Sorgu federasyonuyla karşılaştırıldığında, dosya paylaşımı büyük miktarda veriyi birleştirme için idealdir. Birden çok veri kaynağından dosya okumak için geliştirilmiş performans ve daha iyi gönderme özellikleri sunar. Bakınız Lakehouse Federation for Salesforce Data 360 File Sharing. |
Salesforce Data 360 |
| Salesforce Data 360 sorgu federasyonu | Lakehouse Federation'da Salesforce Data 360 sorgu federasyon bağlayıcısını kullandığınızda Databricks kaynak verilere bağlanmak için JDBC kullanır ve sorguları Salesforce'a iletir. Bkz. Salesforce Data 360 üzerinde federasyon sorguları çalıştırma. | Salesforce Data 360 |
| Salesforce veri işleme | Lakeflow Connect'teki Salesforce alım bağlayıcısı, Salesforce Platformu verilerinden tam olarak yönetilen alım işlem hatları oluşturmanıza olanak tanır. Bu bağlayıcı, sadece CDP verilerinden değil, aynı zamanda Data + AI Platformu'ndaki CRM verilerinden de yararlanarak değeri en üst düzeye çıkarır. Salesforce'tan veri işleme |
Bkz. Salesforce alım bağlayıcısı hangi Salesforce ürünlerini destekliyor? |
Başlamadan önce
Çalışma alanı gereksinimleri:
- Unity Kataloğu için etkinleştirilen çalışma alanı. Otomatik meta veri deposu sağlama dahil olmak üzere, 9 Kasım 2023'den sonra oluşturulan çalışma alanları Unity Kataloğu için otomatik olarak etkinleştirilir. Çalışma alanınız otomatik etkinleştirmeden önce gelmediği ve Unity Kataloğu için etkinleştirilmediği sürece el ile meta veri deposu oluşturmanız gerekmez. Bkz. Unity Kataloğu'nu kullanmaya başlama.
İşlem gereksinimleri:
- İşlem kaynağınızdan hedef veritabanı sistemlerine ağ bağlantısı. Bkz: Lakehouse Federasyonu için Ağ Önerileri.
- Azure Databricks işlem, Databricks Runtime 15.2 veya üzerini ve Standart veya Ayrılmış erişim modunu kullanmalıdır.
- SQL ambarları profesyonel veya sunucusuz olmalı ve 2024.30 veya üzerini kullanmalıdır.
Gerekli izinler:
- Bağlantı oluşturmak için meta veri deposu yöneticisi veya çalışma alanına bağlı Unity Kataloğu meta veri deposunda
CREATE CONNECTIONayrıcalığına sahip bir kullanıcı olmanız gerekir. Unity Kataloğu için otomatik olarak etkinleştirilen çalışma alanlarında, çalışma alanı yöneticileri varsayılan olarak ayrıcalıklaraCREATE CONNECTIONsahiptir. - Yabancı katalog oluşturmak için meta veri deposunda
CREATE CATALOGiznine sahip olmanız ve bağlantının sahibi olmanız veya bağlantıdaCREATE FOREIGN CATALOGayrıcalığına sahip olmanız gerekir. Unity Kataloğu için otomatik olarak etkinleştirilen çalışma alanlarında, çalışma alanı yöneticileri varsayılan olarak ayrıcalıklaraCREATE CATALOGsahiptir.
Aşağıdaki her görev tabanlı bölümde ek izin gereksinimleri belirtilir.
Salesforce bağlı uygulaması oluşturma
Salesforce bağlı uygulamaları, dış uygulamanın API'leri ve standart protokolleri kullanarak Salesforce ile tümleştirilmesine olanak sağlar. Bu bölümde Databricks'in Salesforce ile kimlik doğrulamasına izin vermek için SSO kullanarak bağlı bir uygulamanın nasıl oluşturulacağı açıklanmaktadır.
Uyarı
Daha ayrıntılı yönergeler için Salesforce Data 360 belgelerinde Bağlı Uygulama Oluşturma bölümüne bakın.
Salesforce'a bağlı bir uygulama oluşturmak için aşağıdakileri yapın:
- Veri 360'ın sağ üst kısmında Kurulum'a tıklayın.
- Platform Araçları'nın altında Uygulamalar > Uygulama Yöneticisi'ne tıklayın.
- Yeni Bağlı Uygulama'ya tıklayın.
- Bir Ad ve Kişi e-posta adresi girin.
- OAuth ayarlarını etkinleştir:
-
Geri Arama URL'sini şu biçimde girin:
https://<databricks_instance_url>/login/oauth/salesforce.html. Örneğin:https://cust-success.cloud.databricks.com/login/oauth/salesforce.html. - (İsteğe bağlı) Sonraki adımda Azure Databricks bağlantısını ve yabancı kataloğu oluşturmak için SQL kullanmayı planlıyorsanız Salesforce Connected Uygulamanızın yeniden yönlendirme URI'sini de desteklemesi
https://login.salesforce.com/services/oauth2/successgerekir. Azure Databricks bağlantısını ve yabancı kataloğu oluşturmak için Katalog Gezgini'ni kullanmayı planlıyorsanız bu gerekli değildir. Databricks, diğer yöntemlerden daha az el ile adım gerektirdiğinden Katalog Gezgini'nin kullanılmasını önerir. - Aşağıdaki Kapsamları ekleyin:
- Tüm Veri 360 API kaynaklarına erişme (cdp_api)
- API'ler (api) aracılığıyla kullanıcı verilerini yönetme
- Veri 360 verilerinde ANSI SQL sorguları gerçekleştirme (cdp_query_api)
- İstekleri istediğiniz zaman gerçekleştirme (refresh_token, offline_access)
- Kaydet'e tıklayın.
- Devam'ı tıklatın.
-
Geri Arama URL'sini şu biçimde girin:
- Bağlı Uygulamaya genel bakış sayfasında Tüketici Ayrıntılarını Yönet'e tıklayın. Kimlik doğrulaması yapmanız istenir.
- Kimlik doğrulaması başarılı olursa, Tüketici anahtarı ve Tüketici sırrı ortaya çıkar. Bu değerleri kaydedin. Azure Databricks bağlantısı oluştururken bunlara ihtiyacınız olacaktır.
Azure Databricks bağlantısı oluşturma
Bağlantı, bir dış veritabanı sistemine erişmek için bir yol ve kimlik bilgileri belirtir. Bağlantı oluşturmak için, Bir Azure Databricks not defterinde veya Databricks SQL sorgu düzenleyicisinde Katalog Gezgini'ni veya CREATE CONNECTION SQL komutunu kullanabilirsiniz.
Uyarı
Bağlantı oluşturmak için Databricks REST API'sini veya Databricks CLI'yi de kullanabilirsiniz. bkz. POST /api/2.1/unity-catalog/connections ve Unity Catalog komutları.
Gerekli izinler: Meta veri deposu yöneticisi veya ayrıcalığına CREATE CONNECTION sahip kullanıcı.
Katalog Tarayıcısı
- Azure Databricks çalışma alanınızda
Katalog'a gidin.
-
Katalog bölmesinin üst kısmında
tıklayın ve menüden Bağlantı oluştur'u seçin. - Bağlantı temel bilgileri sayfasında, Bağlantı ayarlama sihirbazını açın ve kullanıcı dostu bir Bağlantı adıgirin.
- Salesforce Data 360bağlantı türünü seçin.
- (İsteğe bağlı) Açıklama ekleyin.
-
Kimlik Doğrulaması sayfasında Salesforce Data 360'ınız için aşağıdaki bağlantı özelliklerini girin:
- (İsteğe bağlı) Korumalı alan mı seçin.
- İstemci Kimliği: Salesforce entegre uygulama tüketici anahtarı.
- İstemci sırrı: Salesforce bağlı uygulama tüketici sırrı.
-
İstemci kapsamı:
cdp_api api cdp_query_api refresh_token offline_access
- "Salesforce ile oturum aç"seçeneğine tıklayın.
- (OAuth) SSO kimlik bilgilerinizi kullanarak Salesforce Data 360'ta oturum açmanız istenir.
- Başarılı bir oturum açma işleminin ardından Databricks Bağlantı ayarlama sihirbazına yönlendirilirsiniz.
Salesforce ile oturum aç düğmesi,
Successfully authorizediletisiyle değiştirildi. - Bağlantı oluştur'a tıklayın.
- Katalog Temel Bilgileri sayfasında, yabancı katalog için bir ad girin. Yabancı bir katalog, dış bir veri sistemindeki veritabanını yansıtarak bu veritabanındaki verilere Azure Databricks ve Unity Kataloğu kullanarak sorgulama yapmanıza ve erişimi yönetmenize olanak tanır.
- Salesforce veri alanını girin.
- (İsteğe bağlı) Bağlantı test et'e tıklayarak çalıştığını onaylayın.
- Katalog oluştur'a tıklayın.
- Access sayfasında, kullanıcıların oluşturduğunuz kataloğa erişebileceği çalışma alanlarını seçin. Tüm çalışma alanları erişilebilirseçebilir veya Çalışma alanına ata'ya tıklayın, çalışma alanlarını seçin ve ardından Atatıklayın.
- Tüm katalog nesnelerine erişimi yönetebilecek Sahibi'i değiştirin. Metin kutusuna bir yetkilinin adını yazmaya başlayın ve ardından sonuçlar arasında listelenen yetkiliye tıklayın.
- Katalogda Ayrıcalıkları tanımlayın.
İzin Ver'e tıklayın:
- Katalogdaki nesnelere erişimi olacak
Sorumlularını belirtin. Metin kutusuna bir yetkilinin adını yazmaya başlayın ve ardından sonuçlar arasında listelenen yetkiliye tıklayın. -
İmtiyaz ön ayarlarını her bir sorumluya vermek için seçin. Tüm hesap kullanıcılarına varsayılan olarak
BROWSEverilir.- Katalogdaki nesnelerde
ayrıcalıkları vermek için açılan menüden veri okuyucu seçin. - Katalogdaki nesnelerde ve
readayrıcalıkları vermek için açılan menüdenmodifyseçin. - Vermek istediğiniz ayrıcalıkları el ile seçin.
- Katalogdaki nesnelerde
- İzin Ver'e tıklayın.
- Katalogdaki nesnelere erişimi olacak
- Nextöğesine tıklayın.
- Meta Veri sayfasında, etiketlerin anahtar-değer çiftlerini belirtin. Daha fazla bilgi için bkz. Unity Kataloğu'ndaki güvenli nesnelere etiket uygulama.
- (İsteğe bağlı) Açıklama ekleyin.
- Kaydet'e tıklayın.
SQL
Databricks, diğer yöntemlerden daha az el ile adım gerektirdiğinden, bağlantıyı ve yabancı kataloğu oluşturmak için Katalog Gezgini'nin kullanılmasını önerir.
Azure Databricks bağlantısını ve yabancı kataloğu oluşturmak için SQL kullanmayı planlıyorsanız Salesforce Bağlı Uygulamanızın yeniden yönlendirme URI'sini desteklemesi https://login.salesforce.com/services/oauth2/successgerekir. Katalog Gezgini'ni kullanıyorsanız bu gerekli değildir.
PKCE kod doğrulayıcı ve kod sınama kodları oluşturun. Aşağıdaki Python betiğini çalıştırarak veya gibi https://tonyxu-io.github.io/pkce-generator/ çevrimiçi bir araç kullanarak bunu yapabilirsiniz:
%python import base64 import re import os import hashlib code_verifier = base64.urlsafe_b64encode(os.urandom(40)).decode('utf-8') code_verifier = re.sub('[^a-zA-Z0-9]+', '', code_verifier) code_challenge = hashlib.sha256(code_verifier.encode('utf-8')).digest() code_challenge = base64.urlsafe_b64encode(code_challenge).decode('utf-8') code_challenge = code_challenge.replace('=', '') print(f"pkce_verifier = \"{code_verifier}\"") print(f"code_challenge = \"{code_challenge}\"")Aşağıdaki URL'yi ziyaret edin ve Salesforce kimlik bilgilerinizle kimlik doğrulaması yaparak
authorization_codeöğesini alın (yerine, parametrelerinizle<client_id>ve<code_challenge>değiştirin).https://login.salesforce.com/services/oauth2/authorize ?client_id=<client_id> &redirect_uri=https://login.salesforce.com/services/oauth2/success &response_type=code &code_challenge=<code_challenge>Yeniden yönlendirilen URL'de URL ile kodlanmış bir yetkilendirme kodu görünür.
Aşağıdakileri bir not defterinde veya Databricks SQL sorgu düzenleyicisinde çalıştırın:
CREATE CONNECTION '<Connection name>' TYPE salesforce_data_cloud OPTIONS ( client_id '<Consumer key from Salesforce Connected App>', client_secret '<Consumer secret from Salesforce Connected App>', pkce_verifier '<pkce_verifier from the last step>', authorization_code '<URL decoded `authorization_code`, should end with == instead of %3D%3D>', oauth_redirect_uri "https://login.salesforce.com/services/oauth2/success", oauth_scope "cdp_api api cdp_query_api refresh_token offline access", is_sandbox "false" );Databricks, kimlik bilgileri gibi hassas değerler için düz metin dizeleri yerine Azure Databricks gizli dizileri kullanmanızı önerir. Örneğin:
CREATE CONNECTION '<Connection name>' TYPE salesforce_data_cloud OPTIONS ( client_id secret ('<Secret scope>','<Secret key client id>'), client_secret secret ('<Secret scope>','<Secret key client secret>'), pkce_verifier '<pkce_verifier from the last step>', authorization_code '<URL decoded `authorization_code`, should end with == instead of %3D%3D>', oauth_redirect_uri "https://login.salesforce.com/services/oauth2/success", oauth_scope "cdp_api api cdp_query_api refresh_token offline access", is_sandbox "false" );Gizli bilgileri ayarlama hakkında bilgi için bkz Gizli bilgi yönetimi.
Yabancı katalog oluşturma
Uyarı
Kullanıcı arabirimini veri kaynağına bağlantı oluşturmak için kullanırsanız, yabancı katalog oluşturma dahil edilir ve bu adımı atlayabilirsiniz.
Yabancı bir katalog, dış bir veri sistemindeki veritabanını yansıtarak bu veritabanındaki verilere Azure Databricks ve Unity Kataloğu kullanarak sorgulama yapmanıza ve erişimi yönetmenize olanak tanır. Yabancı katalog oluşturmak için, önceden tanımlanmış olan veri kaynağına bir bağlantı kullanırsınız.
Yabancı katalog oluşturmak için, Bir Azure Databricks not defterinde veya SQL sorgu düzenleyicisinde Katalog Gezgini'ni veya CREATE FOREIGN CATALOG SQL komutunu kullanabilirsiniz. Katalog oluşturmak için Databricks REST API'sini veya Databricks CLI'yi de kullanabilirsiniz. Bkz: POST /api/2.1/unity-catalog/catalogs ve Unity Catalog komutları.
gerekli izinler:CREATE CATALOG meta veri deposu üzerindeki izin ve bağlantının sahipliği veya CREATE FOREIGN CATALOG bağlantı üzerindeki ayrıcalık.
Katalog Tarayıcısı
- Azure Databricks çalışma alanınızda
Katalog gezginini açmak için katalog.
- Sağ üstteki Katalog Oluştur'a tıklayın.
- Salesforce Data 360 kataloğunuz için aşağıdaki özellikleri girin.
- Katalog adı: Katalog için kolay bir ad.
-
Tür:
Foreign. - Bağlantı adı: Kataloğun oluşturulacağı bağlantının adı.
- Veri alanı: Salesforce veri alanı.
- Oluştur’a tıklayın.
SQL
Not defterinde veya SQL sorgu düzenleyicisinde aşağıdaki SQL komutunu çalıştırın. Kare parantez içindeki öğeler isteğe bağlıdır.
CREATE FOREIGN CATALOG [IF NOT EXISTS] '<catalog-name>' USING CONNECTION '<connection-name>'
OPTIONS (dataspace '<dataspace>');
Aşağıdaki değerleri değiştirin:
-
<catalog-name>: -
<connection-name>: -
<dataspace>: Salesforce veri alanı. Örneğin,default.
Desteklenen baskılar
Aşağıdaki tablo, Salesforce Data 360 için desteklenen pushdown işlemlerini ve her biri için gereken işlem gücünü listeler.
| İtme | Desteklenen hesaplama |
|---|---|
| Toplamlar |
|
| Aritmetik operatörler (+, -, *, %, /) gibi— ANSI modu devre dışı bırakılırsa desteklenmez |
|
| Boole işleçleri (=, <=>, <, <=, >, >= gibi) |
|
| İçerir, Başlar, Biter |
|
| Filtreler |
|
| Sınır |
|
| Matematiksel işlevler (SIN, COS — kısmi destek, yalnızca filtre ifadeleri) |
|
| Çeşitli işlevler (Atama — kısmi destek, yalnızca filtre ifadeleri) |
|
| Ofset baskı |
|
| Projeksiyonlar |
|
| Sıralama, sınır ile kullanıldığında |
|
| Joins |
|
| Pencere işlevleri |
|
Veri türü eşlemeleri
Salesforce Data 360'tan Spark'a okuma yaptığınızda veri türleri aşağıdaki gibi eşlenir:
| Salesforce Data 360 türü | Spark türü |
|---|---|
Boolean |
BooleanType |
Date |
DateType |
Datetime |
TimestampType |
Email, Phone, Text, Url |
StringType |
Number, Percent |
DecimalType(38, 18) |
Sınırlamalar
- Databricks kataloğu başına yalnızca bir Salesforce veri alanı desteklenir.
- Databricks Runtime 16.1 ve daha eski sürümlerinde büyük/küçük harfe duyarlı tablo ve şema adları desteklenmez. Bu, Salesforce Data 360'ta büyük harf içeren adları içerir. Örneğin,
MyTabledesteklenmez.