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.
Şunlar için geçerlidir:
Databricks SQL
Aşağıdaki eylemlerden herhangi birini gerçekleştirmenizi sağlar:
- Mevcut akış tablosunu yenilemek için bir zamanlama veya tetikleyici ekleyin.
- Akış tablosu için mevcut yenileme zamanlamasını veya tetikleyicisini değiştirme.
- Akış tablosu için yenileme zamanlamasını veya tetikleyicisini bırakın. Zamanlama veya tetikleyici yoksa, nesnenin en son verileri yansıtacak şekilde el ile yenilenmesi gerekir.
Akış tablosuna açıklama eklemek veya değiştirmek için kullanın COMMENT ON.
Not
İşlem hattı tarafından oluşturulan bir veri kümesini sql tanımlamayla çelişecek şekilde değiştirmek bazı değişikliklerin geri alınmasına neden olabilir.
Lakeflow Spark Bildirimli İşlem Hatları ile komut kullanma hakkında bilgi için bkz.ALTER.
Sözdizimi
ALTER STREAMING TABLE table_name
{
{ ADD | ALTER } schedule
DROP SCHEDULE |
ALTER COLUMN column_clause |
SET ROW FILTER clause |
DROP ROW FILTER |
SET TAGS clause |
UNSET TAGS clause |
}
schedule
{ SCHEDULE [ REFRESH ] schedule_clause |
TRIGGER ON UPDATE [ AT MOST EVERY trigger_interval ] }
schedule_clause
{ EVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS } |
CRON cron_string [ AT TIME ZONE timezone_id ] }
column_clause
column_identifier
{ COMMENT clause |
SET MASK clause |
DROP MASK |
SET TAGS clause |
UNSET TAGS clause }
Parametre
-
Tanımını değiştirmek istediğiniz akış tablosunun adı. Ad bir zamansal belirtim içermemelidir.
program
Tabloya veya
SCHEDULEdeyimini ekleyin veyaTRIGGERdeğiştirin.Not
Bu komutla Lakeflow Spark Bildirimli İşlem Hatları ile oluşturulan bir akış tablosunun zamanlamasını değiştiremezsiniz. İşlem hattı düzenleyicisini kullanın.
SCHEDULE [ REFRESH ] schedule_clauseEVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS }Düzenli aralıklarla gerçekleşen bir yenileme zamanlamak için
EVERYsöz dizimini kullanın.EVERYsöz dizimi belirtilirse, akış tablosu veya gerçekleştirilmiş görünüm, sağlanan değere göre belirli aralıklarla yenilenir; örneğin,HOUR,HOURS,DAY,DAYS,WEEKveyaWEEKS. Aşağıdaki tabloda,numberiçin kabul edilen tamsayı değerleri listelenmiştir.Zaman birimi Tamsayı değeri HOUR or HOURS1 <= H <= 72 DAY or DAYS1 <= D <= 31 WEEK or WEEKS1 <= W <= 8 Not
Dahil edilen zaman biriminin tekil ve çoğul biçimleri sematik olarak eşdeğerdir.
CRON cron_string [ AT TIME ZONE timezone_id ]Yenileme zamanlamak için quartz cron değeri kullanın. Geçerli time_zone_values kabul edilir.
AT TIME ZONE LOCALdesteklenmez.Yoksa
AT TIME ZONE, oturum saat dilimi kullanılır.AT TIME ZONEyoksa ve oturum saat dilimi ayarlanmadıysa bir hata oluşur.SCHEDULE, ile eşanlamlı olarak eşdeğerdirSCHEDULE REFRESH.
TRIGGER ON UPDATE [ AT MOST EVERY trigger_interval ]Önemli
Bu
TRIGGER ON UPDATEözellik Beta sürümündedir.Bir yukarı akış veri kaynağı güncelleştirildiğinde, en fazla dakikada bir tabloyu yenilenecek şekilde ayarlar. yenilemeler arasında en az bir süre gerektirecek şekilde değerini
AT MOST EVERYayarlayın.Yukarı akış veri kaynakları dış veya yönetilen Delta tabloları (gerçekleştirilmiş görünümler veya akış tabloları dahil) veya bağımlılıkları desteklenen tablo türleriyle sınırlı olan yönetilen görünümler olmalıdır.
Dosya olaylarının etkinleştirilmesi tetikleyicileri daha performanslı hale getirir ve tetikleyici güncelleştirmelerindeki sınırların bazılarını artırır.
trigger_interval, en az 1 dakikalık bir INTERVAL deyimidir.TRIGGER ON UPDATEaşağıdaki sınırlamalara sahiptir- TRIGGER ON UPDATEkullanılırken akış tablosu başına 10'dan fazla yukarı akış veri kaynağı yoktur.
- TRIGGER ON UPDATEile en fazla 1000 akış tablosu veya gerçekleştirilmiş görünüm belirtilebilir.
- Yan
AT MOST EVERYtümcesi varsayılan olarak 1 dakikadır ve 1 dakikadan kısa olamaz.
DROP SCHEDULEAkış tablosundan bir zamanlamayı kaldırır.
ALTER COLUMN clauseBkz. ALTER COLUMN yan tümcesi.
SETROW FILTER maddeÖnemli
Bu özellik Genel Önizleme aşamasındadır.
Akış tablosuna bir satır filtresi işlevi ekler. Akış tablosuna yapılan sonraki tüm sorgular, işlevin boole
TRUEolarak değerlendirdiği satırların bir alt kümesini alır. Bu, işlevin belirli satırları filtreleyip filtrelemeyeceğini belirlemek için çağıran kullanıcının kimlik veya grup üyeliklerini incelediği ayrıntılı erişim denetimi amaçları için yararlı olabilir.Oluşturulduktan sonra eklenen satır filtreleri yalnızca sonraki güncelleştirmeden sonra aşağı akış tablolarına yayılır. Sürekli işlem hatları için işlem hattının yeniden başlatılması gerekir.
DROP ROW FILTERÖnemli
Bu özellik Genel Önizleme aşamasındadır.
Mevcutsa akış tablosundan satır filtresini kaldırır. Gelecekteki sorgular, otomatik filtreleme olmadan tablodaki tüm satırları döndürür.
SET TAGS ( { tag_name = tag_value } [, ...] )Önemli
Bu özellik Genel Önizleme aşamasındadır.
Akış tablosuna etiket uygulama. Akış tablosuna
APPLY TAGetiket ekleme izniniz olmalıdır.tag_nameBir sabit
STRING. Akış tablosundatag_namebenzersiz olmalıdır.tag_valueBir sabit
STRING.
UNSET TAGS ( tag_name [, ...] )Önemli
Bu özellik Genel Önizleme aşamasındadır.
Akış tablosundan etiketleri kaldırın. Akış tablosundaki etiketleri kaldırma izniniz olmalıdır
APPLY TAG.tag_nameBir sabit
STRING. Akış tablosundatag_namebenzersiz olmalıdır.
ALTER COLUMN ifadesi
Önemli
Bu özellik Genel Önizleme aşamasındadır.
Bir özelliği veya sütunun konumunu değiştirir.
Sözdizimi
ALTER COLUMN
column_identifier
{ COMMENT comment |
SET MASK mask_clause |
DROP MASK |
SET TAGS clause |
UNSET TAGS clause }
Parametre
-
Değiştirilecek sütunun adı.
COMMENT commentSütunun
column_nameaçıklamasını değiştirir.commentsabitSTRINGolmalıdır.SETMASK yan tümcesiHassas verileri anonim hale getirmek için bir sütun maskesi işlevi ekler. Bu sütundan sonraki tüm sorgular, sütunun özgün değeri yerine bu işlevi sütun üzerinde değerlendirmenin sonucunu alır. Bu, işlevin çağrı yapan kullanıcının kimliğini veya grup üyeliklerini inceleyerek değeri gizleyip gizlemeyeceğini belirleyebildiği detaylı erişim kontrolü amaçları için yararlı olabilir.
Oluşturulduktan sonra eklenen sütun maskeleri yalnızca sonraki güncelleştirmeden sonra aşağı akış tablolarına yayılır. Sürekli işlem hatları için işlem hattının yeniden başlatılması gerekir.
DROP MASKBu sütun için varsa sütun maskesini kaldırır. Bu sütundan gelecek sorgular sütunun özgün değerlerini alır.
SET TAGS ( { tag_name = tag_value } [, ...] )Sütuna etiketleri uygula. Sütuna etiket eklemek için
APPLY TAGizniniz olmalıdır.tag_name
Bir sabit
STRING.tag_nametablo veya sütun içinde benzersiz olmalıdır.tag_value
Bir sabit
STRING.
UNSET TAGS ( tag_name [, ...] )Verilen etiketleri sütundan kaldırın. Etiketleri sütundan kaldırma izniniz olmalıdır
APPLY TAG.tag_name
Bir sabit
STRING.tag_nametablo veya sütun içinde benzersiz olmalıdır.
Örnekler
-- Adds a schedule to refresh the streaming table whenever its upstream data gets updated.
> ALTER STREAMING TABLE my_st
ADD TRIGGER ON UPDATE;
-- Alters the schedule to refresh the streaming table when its upstream data
-- gets updated, with no more than one update per hour.
> ALTER STREAMING TABLE my_st
ALTER TRIGGER ON UPDATE AT MOST EVERY INTERVAL 1 hour;
-- Alters the schedule to run every one hour.
> ALTER STREAMING TABLE my_st
ALTER SCHEDULE EVERY 1 HOUR;
-- Alters the schedule to refresh the streaming table once a day
-- at midnight in Los Angeles
> ALTER STREAMING TABLE my_st
ALTER SCHEDULE CRON '0 0 0 * * ? *' AT TIME ZONE 'America/Los_Angeles';
-- Drops the schedule for a streaming table
> ALTER STREAMING TABLE my_st
DROP SCHEDULE;
-- Adds a column comment
> ALTER STREAMING TABLE my_st
ALTER COLUMN column_name COMMENT 'test'