Retention ilkesi

Bekletme ilkesi, tablolardan veya gerçekleştirilmiş görünümlerden verileri otomatik olarak kaldıran mekanizmayı denetler. Sürekli olarak bir tabloya akan ve alaka düzeyi yaşa dayalı olan verileri kaldırmak yararlıdır. Örneğin, ilke, iki hafta sonra ilgi çekici hale gelebilecek tanılama olaylarını tutan bir tablo için kullanılabilir.

Bekletme ilkesi belirli bir tablo veya gerçekleştirilmiş görünüm için ya da veritabanının tamamı için yapılandırılabilir. İlke daha sonra veritabanındaki geçersiz kılmamayan tüm tablolara uygulanır. İlke hem veritabanı hem de tablo düzeyinde yapılandırıldığında, tablodaki bekletme ilkesi veritabanı ilkesinden önceliklidir.

Sürekli veri alan kümeler için saklama ilkesi ayarlamak önemlidir ve bu da maliyetleri sınırlandıracaktır.

Bekletme ilkesinin "dışında" olan veriler kaldırılma için uygundur. Kaldırma gerçekleştiğinde kesin bir garanti yoktur. Bekletme ilkesi tetiklense bile veriler "devam edebilir".

Saklama ilkesi, veri alımından bu yana verilerin yaşını sınırlamak için en yaygın olarak ayarlanır. Daha fazla bilgi için bkz . SoftDeletePeriod.

Not

  • Silme süresi kesin değil. Sistem, verilerin sınır aşılmadan önce silinmeyeceğini garanti eder, ancak bu noktadan hemen sonra silme işlemi gerçekleşmez.
  • 0 geçici silme süresi tablo düzeyinde saklama ilkesinin bir parçası olarak ayarlanabilir, ancak veritabanı düzeyinde saklama ilkesinin parçası olarak ayarlanamaz.
  • Bu işlem tamamlandığında, alınan veriler kaynak tabloya işlenmez ve verilerin kalıcı olması gerekmez. Sonuç olarak, Recoverability yalnızca olarak Disabledayarlanabilir.
  • Bu tür bir yapılandırma, çoğunlukla veriler bir tabloya alındığında yararlıdır. İşlemsel güncelleştirme ilkesi, bunu dönüştürmek ve çıkışı başka bir tabloya yeniden yönlendirmek için kullanılır.

İlke nesnesi

Bekletme ilkesi aşağıdaki özellikleri içerir:

  • SoftDeletePeriod:
    • Verilerin sorgulanabilir durumda tutulduğundan emin olunan süre. Süre, verilerin alındığı zamandan başlayarak ölçülür.
    • varsayılan olarak 100 yearsayarlanır.
    • Bir tablo veya veritabanının geçici silme süresini değiştirirken, yeni değer hem mevcut hem de yeni veriler için geçerlidir.
  • Kurtarılabilirlik:
    • Veriler silindikten sonra veri kurtarılabilirliği (Etkin/Devre Dışı).
    • varsayılan olarak Enabledayarlanır.
    • olarak ayarlanırsa Enabled, veriler geçici olarak silindikten sonra 14 gün boyunca kurtarılabilir.
    • Kurtarılabilirlik süresini yapılandırmak mümkün değildir.

Yönetim komutları

Varsayılanları

Varsayılan olarak, bir veritabanı veya tablo oluşturulduğunda, tanımlanmış bir bekletme ilkesi yoktur. Normalde veritabanı oluşturulur ve ardından bekletme ilkesi, bilinen gereksinimlere göre oluşturucusu tarafından hemen ayarlanır. İlkesini ayarlamamış bir veritabanı veya tablonun bekletme ilkesi için bir.show komut çalıştırdığınızda olarak Policynullgörünür.

Yukarıda belirtilen varsayılan değerlerle varsayılan bekletme ilkesi aşağıdaki komut kullanılarak uygulanabilir.

.alter database DatabaseName policy retention "{}"
.alter table TableName policy retention "{}"
.alter materialized-view ViewName policy retention "{}"

Komut, veritabanına veya tabloya aşağıdaki ilke nesnesinin uygulanmasını sağlar.

{
  "SoftDeletePeriod": "36500.00:00:00", "Recoverability":"Enabled"
}

Veritabanının veya tablonun bekletme ilkesini temizleme işlemi aşağıdaki komut kullanılarak yapılabilir.

.delete database DatabaseName policy retention
.delete table TableName policy retention

Örnekler

, ve MySpecialTabletablolarını MyTable2MyTable1içeren adlı MyDatabasebir veritabanına sahip bir küme için.

Yedi günlük geçici silme süresi ve kurtarılabilirlik devre dışı

Veritabanındaki tüm tabloları yedi günlük geçici silme süresine ve kurtarılabilirliği devre dışı bırakacak şekilde ayarlayın.

  • Seçenek 1 (Önerilen): Veritabanı düzeyinde bir bekletme ilkesi ayarlayın ve tablo düzeyinde ilke ayarlanmamış olduğunu doğrulayın.

    .delete table MyTable1 policy retention        // optional, only if the table previously had its policy set
    .delete table MyTable2 policy retention        // optional, only if the table previously had its policy set
    .delete table MySpecialTable policy retention  // optional, only if the table previously had its policy set
    .alter-merge database MyDatabase policy retention softdelete = 7d recoverability = disabled
    .alter-merge materialized-view ViewName policy retention softdelete = 7d 
    
  • Seçenek 2: Her tablo için yedi günlük geçici silme süresi ve kurtarılabilirlik devre dışı bırakılarak bir tablo düzeyinde bekletme ilkesi ayarlayın.

    .alter-merge table MyTable1 policy retention softdelete = 7d recoverability = disabled
    .alter-merge table MyTable2 policy retention softdelete = 7d recoverability = disabled
    .alter-merge table MySpecialTable policy retention softdelete = 7d recoverability = disabled
    

Yedi günlük geçici silme süresi ve kurtarılabilirlik etkin

  • Tabloları MyTable1 ayarlayın ve MyTable2 yedi günlük geçici silme süresine sahip olacak ve kurtarılabilirlik devre dışı bırakılmıştır.

  • Geçici silme süresi 14 gün olacak ve kurtarılabilirlik etkinleştirilecek şekilde ayarlanır MySpecialTable .

  • 1. Seçenek (Önerilen):Veritabanı düzeyinde saklama ilkesi ayarlama ve tablo düzeyinde saklama ilkesi ayarlama.

    .delete table MyTable1 policy retention   // optional, only if the table previously had its policy set
    .delete table MyTable2 policy retention   // optional, only if the table previously had its policy set
    .alter-merge database MyDatabase policy retention softdelete = 7d recoverability = disabled
    .alter-merge table MySpecialTable policy retention softdelete = 14d recoverability = enabled
    
  • Seçenek 2: Her tablo için, ilgili geçici silme süresi ve kurtarılabilirlik ile bir tablo düzeyinde bekletme ilkesi ayarlayın.

    .alter-merge table MyTable1 policy retention softdelete = 7d recoverability = disabled
    .alter-merge table MyTable2 policy retention softdelete = 7d recoverability = disabled
    .alter-merge table MySpecialTable policy retention softdelete = 14d recoverability = enabled
    

Yedi günlük geçici silme süresi ve MySpecialTable verilerini süresiz olarak tutar

Tabloları MyTable1MyTable2 ve geçici silme süresinin yedi gün olmasını ve MySpecialTable verilerini süresiz olarak tutmasını sağlayın.

  • 1. Seçenek: Veritabanı düzeyinde bir bekletme ilkesi ayarlayın ve için varsayılan bekletme ilkesi olan 100 yıllık geçici silme süresine sahip bir tablo düzeyinde bekletme ilkesi MySpecialTableayarlayın.

    .delete table MyTable1 policy retention   // optional, only if the table previously had its policy set
    .delete table MyTable2 policy retention   // optional, only if the table previously had its policy set
    .alter-merge database MyDatabase policy retention softdelete = 7d
    .alter table MySpecialTable policy retention "{}" // this sets the default retention policy
    
  • 2. Seçenek: Tablolar MyTable1 ve MyTable2için tablo düzeyinde bir bekletme ilkesi ayarlayın ve veritabanı düzeyi ile tablo düzeyi ilkesinin MySpecialTable ayarlı olmadığını doğrulayın.

    .delete database MyDatabase policy retention   // optional, only if the database previously had its policy set
    .delete table MySpecialTable policy retention   // optional, only if the table previously had its policy set
    .alter-merge table MyTable1 policy retention softdelete = 7d
    .alter-merge table MyTable2 policy retention softdelete = 7d
    
  • Seçenek 3: Tablolar MyTable1 ve MyTable2için tablo düzeyinde bir bekletme ilkesi ayarlayın. tablosu MySpecialTableiçin, varsayılan bekletme ilkesi olan geçici silme süresi 100 yıl olan bir tablo düzeyinde bekletme ilkesi ayarlayın.

    .alter-merge table MyTable1 policy retention softdelete = 7d
    .alter-merge table MyTable2 policy retention softdelete = 7d
    .alter table MySpecialTable policy retention "{}"