Delta Paylaşımı

Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Yalnızca Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime 10.4 LTS ve üzeri onay işareti evet olarak işaretlenmiş Unity Kataloğu

Delta Sharing, hangi bilgi işlem platformlarını kullandıklarından bağımsız olarak diğer kuruluşlarla güvenli veri paylaşımına yönelik açık bir protokoldür. Bir Unity Kataloğu meta veri deposundaki tablo koleksiyonlarını kopyalamadan gerçek zamanlı olarak paylaşabilir, böylece veri alıcıları paylaşılan verilerin en son sürümüyle hemen çalışmaya başlayabilir.

Delta Sharing'in üç bileşeni vardır:

  • Sağlayıcılar

    Sağlayıcı, verilerin paylaşılabilmesini sağlayan bir varlıktır.

  • Hisse

    Paylaşım, paylaşmak istediğiniz tablolar için mantıksal gruplandırmayı tanımlar.

  • Alıcı

    Alıcı, herhangi bir sayıda paylaşımı paylaşmak istediğiniz bir kuruluşu tanımlar.

Delta Sharing'i kullanma hakkında ayrıntılı bir kılavuz için bkz . Delta Sharing kullanarak verileri ve yapay zeka varlıklarını güvenli bir şekilde paylaşma.

Sağlayıcılar

Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime 11.3 LTS ve üzeri

Veri sağlayıcısı, gerçek dünyadaki verileri paylaşan kuruluşu temsil eden bir nesnedir. Sağlayıcı, paylaşılan verileri daha fazla içeren paylaşımlar içerir. Bir sağlayıcı sizi Alıcı olarak ekledikten sonra

Örnekler

-- Change the data provider name locally.
> ALTER PROVIDER `Center for Disease Control` RENAME TO cdc;

-- List the shares the provider has granted you access too.
> SHOW SHARES IN PROVIDER cdc;
 vaccinedata

-- Make the share accessible locally as a catalog.
> CREATE CATALOG cdcdata USING cdc.vaccinedata;

-- Use the data.
> USE CATALOG cdcdata;
> SELECT COUNT(*) FROM information_schema.tables;
  10

Paylaşımlar

Paylaşım, CREATE SHARE komutuyla örnek olarak sunulan bir kapsayıcıdır. Oluşturulduktan sonra ALTER SHARE komutunu kullanarak meta veri deposu içinde tanımlanan mevcut tablolardan oluşan bir koleksiyonu yinelemeli olarak kaydedebilirsiniz. Tabloları özgün adlarıyla kaydedebilir, özgün şemalarına göre niteleyebilir veya diğer kullanıma sunulan adlar sağlayabilirsiniz.

Paylaşımları oluşturmak, değiştirmek ve bırakmak için meta veri deposu yöneticisi veya hesap yöneticisi olmanız gerekir.

Örnekler

-- Create share `customer_share` only if share with same name doesn't exist, with a comment.
> CREATE SHARE IF NOT EXISTS customer_share COMMENT 'This is customer share';

-- Add 2 tables to the share.
-- Expose my_schema.tab1 a different name.
-- Expose only two partitions of other_schema.tab2
> ALTER SHARE customer_share ADD TABLE my_schema.tab1 AS their_schema.tab1;
> ALTER SHARE customer_share ADD TABLE other_schema.tab2 PARTITION (c1 = 5), (c1 = 7);

-- List the content of the share
> SHOW ALL IN SHARE customer_share;
  name              type  shared_object           added_at                     added_by                   comment partitions
  ----------------- ----  ---------------------- ---------------------------- -------------------------- ------- -----------------
  other_schema.tab2 TABLE main.other_schema.tab2 2022-01-01T00:00:01.000+0000 alwaysworks@databricks.com NULL
  their_schema.tab1 TABLE main.myschema.tab2     2022-01-01T00:00:00.000+0000 alwaysworks@databricks.com NULL   (c1 = 5), (c1 = 7)

Alıcı

Alıcı, erişim paylaşımlarına izin vermek istediğiniz bir kuruluşu temsil etmek için CREATE RECIPIENT kullanarak oluşturduğunuz bir nesnedir. Alıcı oluşturduğunuzda Databricks SQL kuruluşa gönderebileceğiniz bir etkinleştirme bağlantısı oluşturur. Oluşturma işleminden sonra etkinleştirme bağlantısını almak için DESCRIBE RECIPIENT komutunu kullanın.

Alıcı oluşturulduktan sonra, PAYLAŞIMDA VER'i kullanarak seçtiğiniz paylaşımlarda ona SELECT ayrıcalıklar verebilirsiniz.

Alıcı oluşturmak, alıcıları bırakmak ve paylaşımlara erişim vermek için meta veri deposu yöneticisi olmanız gerekir.

Örnekler

-- Create a recipient.
> CREATE RECIPIENT IF NOT EXISTS other_org COMMENT 'other.org';

-- Retrieve the activation link to send to other.org
> DESCRIBE RECIPIENT other_org;
  name      created_at                   created_by                 comment   activation_link active_token_id                      active_token_expiration_time rotated_token_id rotated_token_expiration_time
  --------- ---------------------------- -------------------------- --------- --------------- ------------------------------------ ---------------------------- ---------------- -----------------------------
  other_org 2022-01-01T00:00:00.000+0000 alwaysworks@databricks.com other.org https://....    0160c81f-5262-40bb-9b03-3ee12e6d98d7 9999-12-31T23:59:59.999+0000 NULL              NULL

-- Choose shares that other.org has access to
> GRANT SELECT ON SHARE customer_share TO RECIPIENT other_org;