ALTER CATALOG

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

Kataloğun sahipliğini yeni bir sorumluya aktarır, kataloğun yönetilen depolama konumunu değiştirir, bir kataloğa etiketler uygular veya katalog için tahmine dayalı iyileştirmeyi etkinleştirir veya devre dışı bırakır.

Sözdizimi

ALTER CATALOG [ catalog_name ]
 { DEFAULT COLLATION default_collation_name |
   [ SET ] OWNER TO principal
   SET TAGS ( { tag_name = tag_value } [, ...] ) |
   UNSET TAGS ( tag_name [, ...] ) |
   { ENABLE | DISABLE | INHERIT } PREDICTIVE OPTIMIZATION |
   OPTIONS (option value [, ...] ) |
   SET MANAGED LOCATION location }

Parametreler

  • catalog_name

    Değiştirilecek kataloğun adı. Ad sağlamazsanız varsayılan değer olur hive_metastore.

  • VARSAYıLAN HARMANLAMA default_collation_name

    Şunun için geçerlidir:evet olarak işaretlendi Databricks SQL denetimi evet olarak işaretlendi Databricks Runtime 17.1 ve üzeri

    Katalogda tanımlanan yeni şemalar için varsayılan harmanlamayı değiştirir. Katalogdaki mevcut şemaların ve nesnelerin varsayılan harmanlaması değiştirilmez.

  • [ SET ] SAHİBİ principal

    Kataloğun sahipliğini principal'a devreder.

    Ş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

    SET isteğe bağlı anahtar sözcük olarak izin verilir.

  • SET ETİKETLER ( { tag_name = tag_value } [, ...] )

    Etiketleri kataloğa uygulayın. Bir kataloğa etiket uygulamak için USE CATALOG izniniz olmalıdır. Bkz. USE CATALOG.

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

  • ETİKETLERİ TEMİZLE ( tag_name [, ...] )

    Etiketleri katalogdan kaldırın. Bir kataloğa etiket uygulamak için USE CATALOG izniniz olmalıdır.

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

  • tag_name

    Tam bir STRING. tag_name katalog içinde benzersiz olmalıdır.

  • tag_value

    Tam bir STRING.

  • { ETKİNLEŞTİR | DEVRE DIŞI BIRAK | DEVRAL } TAHMİNE DAYALI İYİLEŞTİRME

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

    Kataloğu istenen tahmine dayalı iyileştirme ayarıyla değiştirir. Varsayılan olarak, kataloglar oluşturulduğunda, davranış hesaptan INHERIT yapmaktır. Varsayılan olarak, katalogda oluşturulan yeni nesneler ayarı katalogdan devralır.

    Katalog değiştirildiğinde, davranış, tahmine dayalı optimizasyonu devralan tüm şemalara ve nesnelerine zincirleme biçimde yansır. Şemalardaki tahmine dayalı iyileştirmeyi devralmayan nesneler veya açıkça ENABLE veya DISABLE tahmine dayalı iyileştirme nesneler, katalog ayarından etkilenmez.

    Bir katalog için tahmine dayalı iyileştirmeyi ayarlamak için kullanıcının katalog üzerinde CREATE izni olmalıdır.

    Yalnızca Delta Paylaşımı olmayan, Unity Kataloğu'nda yönetilen kataloglar tahmine dayalı iyileştirme için uygundur.

  • SEÇENEKLER

    Kataloğa özgü parametreleri ayarlar. Mevcut seçenek listesini yeni bir seçenek listesiyle değiştirir.

    Hive meta veri deposu federasyonu kullanılarak oluşturulan yabancı kataloglar için OPTIONS'i ayarlamak amacıyla authorized paths'ı kullanın.

    • seçenek

      Özellik anahtarı. Anahtar, nokta ile ayrılmış bir veya daha fazla tanımlayıcı veya bir STRING literal değerden oluşabilir.

      Özellik anahtarları benzersiz olmalı ve büyük/küçük harfe duyarlı olmalıdır.

    • değer

      bir özelliğin değeri. Değer bir BOOLEAN, STRING, INTEGERveya DECIMALsabit ifadesi olmalıdır.

      Örneğin, value için password sabit ifadeyisecret('secrets.r.us', 'postgresPassword') değişmez parolanın girilmesi yerine kullanıyor olabilir.

  • SET YÖNETİLEMİ KONUMU

    Şunun için geçerlidir:evet olarak işaretlendi Databricks SQL denetimi evet olarak işaretlendi Databricks Runtime 18.1 ve üzeri denetim evet yalnızca Unity Kataloğu olarak işaretlendi

    Kataloğun yönetilen depolama konumunu değiştirir. Katalogda oluşturulan yeni yönetilen tablolar ve yönetilen birimler güncelleştirilmiş konumu kullanır. Databricks var olan nesneleri taşımaz.

    • lokasyon

      Yeni yönetilen depolama konumu için bulut depolama yolu. Bir dış konumda yer almalıdır.

Örnekler

-- Creates a catalog named `some_cat`.
> CREATE CATALOG some_cat;

-- Transfer ownership of the catalog to another user
> ALTER CATALOG some_cat OWNER TO `alf@melmak.et`;

-- Applies three tags to the catalog named `test`.
> ALTER CATALOG test SET TAGS ('tag1' = 'val1', 'tag2' = 'val2', 'tag3' = 'val3');

-- Removes three tags from the catalog named `test`.
> ALTER CATALOG test UNSET TAGS ('tag1', 'tag2', 'tag3');

-- Change the default collation of a catalog to case sensitive unicode
> ALTER CATALOG test DEFAULT COLLATION UNICODE_CS;

-- Adds an authorized path to a foreign catalog created using :re[HMS] federation.
> ALTER CATALOG my_federated_catalog OPTIONS (authorized_paths 'path/to/dir1, path/to/dir2');

–– Enables predictive optimization for catalog main
> ALTER CATALOG main ENABLE PREDICTIVE OPTIMIZATION;
> DESCRIBE CATALOG EXTENDED main;
  Key                        value
  ------------------------    ---------
  < other rows of describe extended >
  Predictive Optimization    ENABLE

-- Sets catalog main to inherit setting from parent object (metastore)
> ALTER CATALOG main INHERIT PREDICTIVE OPTIMIZATION;
> DESCRIBE CATALOG EXTENDED main;
  Key                         value
  ------------------------    ----------------------------------------
  < other rows of describe extended >
  Predictive Optimization     ENABLE (inherited from METASTORE metastore_name)

-- Change the managed storage location of a catalog
> ALTER CATALOG my_catalog SET MANAGED LOCATION 's3://my-bucket/managed/';