Geçici silmeye genel bakış
Şunlar için geçerlidir: ✅Azure Veri Gezgini
Tek tek kayıtları silme özelliği desteklenir. Kayıt silme işlemi genellikle aşağıdaki yöntemlerden biri kullanılarak yapılır:
- Sistemle kayıtları silmek için, bu kayıtları içeren depolama yapıtlarının da silindiğini garanti edin,
.purge
- Kayıtları böyle bir garanti olmadan silmek için, bu makalede açıklandığı gibi kullanın
.delete
. Bu komut kayıtları silinmiş olarak işaretler, ancak depolama yapıtlarından verileri mutlaka silmez. Bu silme yöntemi temizleme işleminden daha hızlıdır.
Komutunu kullanma hakkında bilgi için bkz. Söz dizimi
Kullanım örnekleri
Bu silme yöntemi yalnızca tek tek kayıtların planlanmamış silinmesi için kullanılmalıdır. Örneğin, bir IoT cihazının bir süredir bozuk telemetri bildirdiğini fark ederseniz, bozuk verileri silmek için bu yöntemi kullanmayı düşünmelisiniz.
Yinelenenleri kaldırma veya güncelleştirmeler için kayıtları sık sık silmeniz gerekiyorsa, gerçekleştirilmiş görünümleri kullanmanızı öneririz. Yinelenen verileri kaldırma için bkz. gerçekleştirilmiş görünümler ile geçici silme arasında seçim yapma.
Silme işlemi
Geçici silme işlemi aşağıdaki adımlar kullanılarak gerçekleştirilir:
- Koşul sorgusunu çalıştırma: Tablo, silinecek kayıtları içeren veri kapsamlarını belirlemek için taranır. Tanımlanan kapsamlar, koşul sorgusu tarafından döndürülen bir veya daha fazla kaydı olanlardır.
- Kapsam değiştirme: Tanımlanan kapsamlar, özgün veri bloblarına işaret eden yeni kapsamlarla değiştirilir ve ayrıca kayıt başına silinip silinmediğini belirten yeni bir gizli sütuna
bool
sahiptir. Tamamlandıktan sonra, yeni veri alınmazsa koşul sorgusu yeniden çalıştırılırsa hiçbir kayıt döndürmez.
Sınırlamalar ve önemli noktalar
Silme işlemi son ve geri alınamaz. İşlemden sonra depolama yapıtlarının mutlaka silinmesi gerekmese de, bu işlemi geri almak veya silinmiş verileri kurtarmak mümkün değildir.
Geçici silme, yerel tablolar ve gerçekleştirilmiş görünümler için desteklenir. Dış tablolar için desteklenmez.
Geçici silmeyi çalıştırmadan önce, bir sorgu çalıştırıp sonuçların beklenen sonuçla eşleşip eşleşmediğini denetleyerek koşulu doğrulayın. Komutunu modda da çalıştırabilirsiniz
whatif
. Bu komut, silinmesi beklenen kayıt sayısını döndürür.Aynı tabloda birden çok paralel geçici silme işlemi çalıştırmayın, çünkü bu komutlardan bazılarının veya tümünün hatalarına neden olabilir. Ancak, farklı tablolarda birden çok paralel geçici silme işlemi çalıştırmak mümkündür.
Aynı tablodaki geçici silme ve temizleme komutlarını paralel olarak çalıştırmayın. Önce bir komutun tamamlanmasını bekleyin ve yalnızca sonra diğer komutu çalıştırın.
Geçici silme, küme URI'nizde yürütülür:
https://[YourClusterName].[region].kusto.windows.net
. komutu, ilgili veritabanında veritabanı yöneticisi izinleri gerektirir.Gerçekleştirilmiş görünümün kaynak tablosu olan bir tablodan kayıtların silinmesi, gerçekleştirilmiş görünüm üzerinde etkili olabilir. Silinen kayıtlar henüz gerçekleştirme döngüsü tarafından işlenmediyse, bu kayıtlar hiçbir zaman işlenmeyecekleri için görünümde eksik olur. Benzer şekilde, kayıtlar zaten işlenmişse silme işleminin gerçekleştirilmiş görünüm üzerinde bir etkisi olmaz.
Koşulla ilgili sınırlamalar:
- En az bir
where
işleç içermelidir. - Yalnızca kayıtların silindiği tabloya başvurabilir.
- Yalnızca şu işleçlere izin verilir:
extend
,order
,project
vewhere
take
. içindetoscalar()
işlecinesummarize
de izin verilir.
- En az bir
Silme performansı
Silme işlemi performansını etkileyebilecek başlıca noktalar şunlardır:
- Koşul sorgusu çalıştırma: Bu adımın performansı, koşulun performansına çok benzer. Koşula bağlı olarak biraz daha hızlı veya yavaş olabilir, ancak farkın önemsiz olması beklenir.
- Kapsam değiştirme: Bu adımın performansı aşağıdakilere bağlıdır:
- Kümedeki veri kapsamları arasında kayıt dağıtımı
- Kümedeki düğüm sayısı
komutundan farklı olarak .purge
.delete
verileri değiştirmez. Yalnızca koşul sorgusu tarafından döndürülen kayıtları silinmiş olarak işaretler ve bu nedenle çok daha hızlıdır.
Silme işleminden sonra sorgu performansı
Kayıtların silinmesinden sonra sorgu performansının belirgin bir şekilde değişmesi beklenmiyor.
Silinen kayıtları filtreleyen tüm sorgulara otomatik olarak eklenen filtre verimli olduğundan performans düşüşü beklenmez.
Ancak, sorgu performansının da geliştirilmesi garanti değildir. Bazı sorgu türleri için performans geliştirmesi gerçekleşse de, bazıları için bu gerçekleşmeyebilir. Sorgu performansını geliştirmek için kayıtların çoğunun silindiği kapsamlar, yalnızca silinmemiş kayıtları içeren yeni kapsamlarla değiştirilerek düzenli aralıklarla sıkıştırılır.
COGS üzerindeki etki (satılan malların maliyeti)
Çoğu durumda, kayıtların silinmesi COGS'nin değişmesine neden olmaz.
- Hiçbir kayıt gerçekten silinemediği için azalma olmaz. Kayıtlar yalnızca türündeki gizli bir sütun
bool
kullanılarak silinmiş olarak işaretlenir ve boyutu göz ardı edilebilir. - Çoğu durumda, işlem ek kaynakların sağlanmasını gerektirmediğinden bir artış
.delete
olmaz. - Bazı durumlarda, kayıtların çoğunluğunun silindiği kapsamlar, yalnızca silinmemiş kayıtları içeren yeni kapsamlarla değiştirilerek düzenli aralıklarla sıkıştırılır. Bu, çok sayıda silinmiş kayıt içeren eski depolama yapıtlarının silinmesine neden olur. Yeni uzantılar daha küçüktür ve bu nedenle hem Depolama hesabında hem de sık erişimli önbellekte daha az alan kullanır. Ancak, çoğu durumda, bunun COGS üzerindeki etkisi göz ardı edilebilir.