Share via


Lakehouse Federasyonu nedir?

Önemli

Bu özellik Genel Önizlemededir.

Bu makalede, Azure Databricks'i kullanarak birden çok dış veri kaynağında sorgu çalıştırmanızı sağlayan sorgu federasyon platformu Lakehouse Federation tanıtılır. Ayrıca Unity Kataloğu meta veri deponuzda Lakehouse Federasyon bağlantılarının nasıl ayarlanacağı ve yabancı katalogların nasıl oluşturulacağı açıklanır.

Lakehouse Federasyonu nedir?

Lakehouse Federation, Azure Databricks için sorgu federasyon platformudur. Sorgu federasyonu terimi, kullanıcıların ve sistemlerin tüm verileri birleşik bir sisteme geçirmeye gerek kalmadan birden çok veri kaynağında sorgu çalıştırmasına olanak tanıyan bir özellik koleksiyonunu açıklar.

Azure Databricks, sorgu federasyonunu yönetmek için Unity Kataloğu'nu kullanır. Pro SQL Ambarları, Sunucusuz SQL Ambarları ve Databricks Runtime kümelerine dahil edilen sürücüleri kullanarak popüler veritabanı çözümlerine salt okunur bağlantılar yapılandırırsınız. Unity Kataloğu'nun veri idaresi ve veri kökeni araçları, Azure Databricks çalışma alanlarınızdaki kullanıcılar tarafından yapılan tüm federasyon sorguları için veri erişiminin yönetilmesini ve denetlenmesini sağlar.

Lakehouse Federasyonu neden kullanılır?

Lakehouse, veri yedekliliğini ve yalıtımını azaltmak için verilerin merkezi depolanmasını vurgular. Kuruluşunuzun üretimde çok sayıda veri sistemi olabilir ve bağlı sistemlerdeki verileri çeşitli nedenlerle sorgulamak isteyebilirsiniz:

  • Geçici raporlama.
  • Kavram kanıtı çalışması.
  • Yeni ETL işlem hatlarının veya raporların keşif aşaması.
  • Artımlı geçiş sırasında iş yüklerini destekleme.

Bu senaryoların her birinde sorgu federasyonu, verileri yerinde sorgulayabileceğiniz ve karmaşık ve zaman alan ETL işlemlerinden kaçınabileceğiniz için daha hızlı içgörü elde etmenize olanak sağlar.

Lakehouse Federasyonu aşağıdaki durumlarda kullanım örnekleri için tasarlanmıştır:

  • Azure Databricks'e veri almak istemezsiniz.
  • Sorgularınızın dış veritabanı sistemindeki işlemden yararlanmasını istiyorsunuz.
  • Unity Kataloğu arabirimlerinin ve ayrıntılı erişim denetimi, veri kökeni ve arama gibi veri idaresinin avantajlarından yararlanmak istiyorsunuz.

Lakehouse Federasyon kurulumuna genel bakış

Lakehouse Federation kullanarak bir veri kümesini salt okunur sorgulama için kullanılabilir hale getirmek için aşağıdakileri oluşturursunuz:

  • Bağlantı, Unity Kataloğu'nda bir dış veritabanı sistemine erişmek için bir yol ve kimlik bilgileri belirten güvenli hale getirilebilir bir nesne.
  • Unity Kataloğu'nda bir dış veri sistemindeki bir veritabanını yansıtan ve Azure Databricks çalışma alanınızda bu veri sisteminde salt okunur sorgular gerçekleştirmenizi sağlayan ve Unity Kataloğu'nu kullanarak erişimi yönetmenizi sağlayan güvenli hale getirilebilir bir nesne olan yabancı katalog.

Desteklenen veri kaynakları

Lakehouse Federation, aşağıdaki veritabanı türlerine yönelik bağlantıları destekler:

Bağlantı gereksinimleri

Çalışma alanı gereksinimleri:

  • Unity Kataloğu için etkinleştirilen çalışma alanı.

İşlem gereksinimleri:

  • Databricks Runtime kümenizden veya SQL ambarından hedef veritabanı sistemlerine ağ bağlantısı. Bkz . Lakehouse Federasyonu için ağ önerileri.
  • Azure Databricks kümeleri Databricks Runtime 13.3 LTS veya üzerini ve paylaşılan veya tek kullanıcılı erişim modunu kullanmalıdır.
  • SQL ambarları Pro veya Sunucusuz olmalı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 ayrıcalığı olan CREATE CONNECTION bir kullanıcı olmanız gerekir.
  • Yabancı katalog oluşturmak için meta veri deposu üzerinde izninizin olması ve bağlantının sahibi olmanız veya bağlantıda ayrıcalığınız olması CREATE FOREIGN CATALOG gerekirCREATE CATALOG.

Aşağıdaki her görev tabanlı bölümde ek izin gereksinimleri belirtilir.

Bağlantı 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 CREATE CONNECTION Databricks SQL sorgu düzenleyicisinde Katalog Gezgini'ni veya SQL komutunu kullanabilirsiniz.

Gerekli izinler: Meta veri deposu yöneticisi veya ayrıcalığına CREATE CONNECTION sahip kullanıcı.

Katalog gezgini

  1. Azure Databricks çalışma alanınızda Katalog'a tıklayınKatalog simgesi.

  2. Sol bölmede Dış Veri menüsünü genişletin ve Bağlan yonlar'ı seçin.

  3. Bağlantı oluştur'a tıklayın.

  4. Kullanıcı dostu bir Bağlan ion adı girin.

  5. Bağlan türünü (MySQL veya PostgreSQL gibi veritabanı sağlayıcısı) seçin.

  6. Bağlantı özelliklerini (konak bilgileri, yol ve erişim kimlik bilgileri gibi) girin.

    Her bağlantı türü farklı bağlantı bilgileri gerektirir. Soldaki içindekiler tablosunda listelenen bağlantı türünüzün makalesine bakın.

  7. (İsteğe bağlı) Çalıştığını onaylamak için Bağlantıyı test et'e tıklayın.

  8. (İsteğe bağlı) Açıklama ekleyin.

  9. Oluştur’a tıklayın.

Sql

Aşağıdaki komutu bir not defterinde veya Databricks SQL sorgu düzenleyicisinde çalıştırın. Bu örnek, PostgreSQL veritabanına bağlantılar içindir. Seçenekler bağlantı türüne göre farklılık gösterir. Soldaki içindekiler tablosunda listelenen bağlantı türünüzün makalesine bakın.

CREATE CONNECTION <connection-name> TYPE postgresql
OPTIONS (
  host '<hostname>',
  port '<port>',
  user '<user>',
  password '<password>'
);

Kimlik bilgileri gibi hassas değerler için düz metin dizeleri yerine Azure Databricks gizli dizilerini kullanmanızı öneririz. Örneğin:

CREATE CONNECTION <connection-name> TYPE postgresql
OPTIONS (
  host '<hostname>',
  port '<port>',
  user secret ('<secret-scope>','<secret-key-user>'),
  password secret ('<secret-scope>','<secret-key-password>')
)

Gizli dizileri ayarlama hakkında bilgi için bkz . Gizli dizi yönetimi.

Mevcut bağlantıları yönetme hakkında bilgi için bkz . Lakehouse Federation için bağlantıları yönetme.

Yabancı katalog oluşturma

Yabancı katalog, Azure Databricks ve Unity Kataloğu'nu kullanarak bu veritabanındaki verileri sorgulayıp yönetebilmeniz için bir dış veri sistemindeki veritabanını yansıtır. Yabancı katalog oluşturmak için, önceden tanımlanmış olan veri kaynağına bir bağlantı kullanırsınız.

Bir yabancı katalog oluşturmak için, Bir Azure Databricks not defterinde veya CREATE FOREIGN CATALOG Databricks SQL sorgu düzenleyicisinde Katalog Gezgini'ni veya SQL komutunu kullanabilirsiniz.

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 gezgini

  1. Azure Databricks çalışma alanınızda Katalog'a tıklayınKatalog simgesi.

  2. Katalog Oluştur düğmesine tıklayın.

  3. Yeni katalog oluştur iletişim kutusunda katalog için bir ad girin ve Bir Yabancı Türüseçin.

  4. Unity Kataloğu kataloğu olarak yansıtmak istediğiniz veritabanına erişim sağlayan Bağlan seçin.

  5. Katalog olarak yansıtmak istediğiniz Veritabanının adını girin.

    Gereksinimler veri kaynağına bağlı olarak farklılık gösterir:

    • MySQL iki katmanlı bir ad alanı kullanır ve bu nedenle veritabanı adı gerektirmez.
    • Başka bir Databricks çalışma alanındaki bir kataloğa bağlantılar için veritabanı adı yerine Databricks Kataloğu adını girin.
  6. Oluştur’a tıklayın.

Sql

  1. Aşağıdaki SQL komutunu bir not defterinde veya Databricks SQL düzenleyicisinde çalıştırın. Köşeli ayraç içindeki öğeler isteğe bağlıdır. Yer tutucu değerlerini değiştirin:

    • <catalog-name>: Azure Databricks'teki kataloğun adı.
    • <connection-name>: Veri kaynağını, yolu ve erişim kimlik bilgilerini belirten bağlantı nesnesi .
    • <database-name>: Azure Databricks'te katalog olarak yansıtmak istediğiniz veritabanının adı. İki katmanlı ad alanı kullanan MySQL için gerekli değildir.
    • <external-catalog-name>: Yalnızca Databricks-Databricks : Yansıttığınız dış Databricks çalışma alanında kataloğun adı. Bkz. Yabancı katalog oluşturma.
    CREATE FOREIGN CATALOG [IF NOT EXISTS] <catalog-name> USING CONNECTION <connection-name>
    OPTIONS (database '<database-name>');
    

Yabancı katalogları yönetme ve bunlarla çalışma hakkında bilgi için bkz . Yabancı katalogları yönetme ve bunlarla çalışma.

Lakehouse federasyonu ve gerçekleştirilmiş görünümler

Databricks, gerçekleştirilmiş görünümler oluştururken Lakehouse Federation kullanarak dış verilerin yüklenmesini önerir. Bkz . Databricks SQL'de gerçekleştirilmiş görünümleri kullanma.

Lakehouse Federasyonu'nı kullandığınızda, kullanıcılar federasyon verilerine aşağıdaki gibi başvurabilir:

CREATE MATERIALIZED VIEW xyz AS SELECT * FROM federated_catalog.federated_schema.federated_table;

Sınırlamalar

  • Sorgular salt okunur durumdadır.

  • Bağlantıların azaltması Databricks SQL eşzamanlı sorgu sınırı kullanılarak belirlenir. Bağlantı başına ambarlar arasında bir sınır yoktur. Bkz . Profesyonel ve klasik SQL ambarları için kuyruğa alma ve otomatik ölçeklendirme.

  • Unity Kataloğu'nda geçersiz adlara sahip tablolar ve şemalar desteklenmez ve yabancı bir katalog oluşturulurken Unity Kataloğu tarafından yoksayılır. Unity Kataloğu sınırlamaları bölümünde adlandırma kuralları ve sınırlamaları listesine bakın.

  • Tablo adları ve şema adları Unity Kataloğu'nda küçük harfe dönüştürülür. Aramalarda küçük harf adları da kullanılmalıdır. Yinelenen küçük harf adlarına sahip tablolar veya şemalar varsa, tablolardan veya şemalardan yalnızca biri yabancı kataloğa aktarılır.

  • Başvuruda bulunan her yabancı tablo için Azure Databricks, uzak sistemde bir alt sorgu zamanlayarak bu tablodan bir veri alt kümesi döndürür ve ardından sonucu tek bir akış üzerinden tek bir Azure Databricks yürütücü görevine döndürür.

  • Tek kullanıcılı erişim modu yalnızca bağlantıya sahip olan kullanıcılar tarafından kullanılabilir.

  • Lakehouse Federasyonu, Azure Synapse bağlantıları veya Redshift bağlantıları için büyük/küçük harfe duyarlı tanımlayıcılarla yabancı tabloları federasyona dahil edemez.