Veri Temizleme
İlişkili veriyi kopyalamadan, bağımlılık sırasına uyarak kaynaktan silin.
Temizleme iş akışı veriyi hiçbir yere kopyalamadan kaynaktan siler. Diğer iş akışlarıyla aynı keşif ve sıralamayı kullanır; böylece ilişkili satırlar birlikte ve doğru sırayla silinir.
Çalıştırma
goarchive purge -c archiver.yaml --job archive_old_orders
Ne zaman kullanılır
- İki adımlı bir arşivlemeyi tamamlarken — veri kopyalama iş akışıyla zaten kopyalanmıştır, sıra kaynağı boşaltmaya gelmiştir.
- Saklanması gerekmeyen veriyi temizlerken — süresi dolmuş oturumlar, işlenmiş kuyruklar, eskimiş test verisi.
- İlişkili bir kümeyi temiz biçimde silerken — düz bir
DELETE, başka tablolar hâlâ o satırlara referans verdiği için reddedilecekse.
Neler olur
GoArchive her batch’teki kök satırlara ait satırları her zamanki gibi keşfeder, sonra alt kayıtlardan başlayarak siler. Hiçbir şey kopyalanmadığı için kopyalama ve doğrulama adımları yoktur.
İlerleme batch başına kaydedilir; yarıda kalan bir temizleme baştan başlamak yerine kaldığı yerden devam eder.
Çalıştırmadan önce
Purge veri siler. İşi önce önizleyin:
goarchive dry-run -c archiver.yaml --job archive_old_orders
Önizleme, uygulanacak filtreyi ve her tablonun kaç satır katacağını gösterir. Bu sayıları temizlemeyi çalıştırmadan önce okuyun ve güncel bir yedeğinizin olduğundan emin olun.
Silme hızını ayarlamak
Purge çalışmaları sürekli bir silme akışı üretir. Hızı iki ayar belirler:
processing:
batch_delete_size: 500 # silme işlemi başına satır
delete_sleep_seconds: 0.5 # silme işlemleri arasında bekleme
Replica’ların yetişmesi gerektiğinde boyutu düşürüp beklemeyi artırın.
Trigger’ı olan tablolar
Arşivlemede olduğu gibi, silme sırasında çalışan bir trigger bildirilir ve açık onay ister:
goarchive purge -c archiver.yaml --job archive_old_orders --force-triggers
