İçeriğe geç

Kayıt silinmeli mi arşivlenmeli mi? Silme politikası

Web Teknolojileri
Kayıt silinmeli mi arşivlenmeli mi? Silme politikası

Bir iş yazılımında kayıtların çoğu silinmez, pasife alınır; gerçekten silinmesi gerekenler ise saklama süresi dolduğunda planlı bir işle silinir. Sebep basittir: bir müşteri kartı silindiğinde ona bağlı siparişler, faturalar ve raporlar anlamını kaybeder, geçmiş sayılar değişir. Yine de her kaydı sonsuza dek tutmak da doğru değildir; hem veri büyür hem de artık gerekmeyen kişisel veriyi tutmanın bir gerekçesi kalmaz. Bu yazıda silme, pasife alma ve arşivleme arasındaki farkı, bağlı kayıt sorununu ve saklama politikasının nasıl yazıldığını anlatıyoruz.

Üç farklı işlem, üç farklı amaç

Kullanıcı arayüzünde tek bir çöp kutusu simgesi görünse de arkada üç ayrı işlem vardır ve bunları karıştırmak veri kaybına ya da gereksiz veri birikmesine yol açar.

İşlemKayda ne olurNe zaman kullanılır
Pasife almaKayıt durur, yeni işlemlerde seçilemezArtık kullanılmayan tanım kayıtları
ArşivlemeKayıt ayrı bir yere taşınır, listelerden çıkarKapanmış dönem hareketleri
Kalıcı silmeKayıt veritabanından giderYanlış girilmiş, bağlı kaydı olmayan veri

Pasife alma tanım kayıtlarının doğal çözümüdür. Ayrılan bir personel, çalışılmayan bir tedarikçi, satıştan kalkan bir ürün — hiçbiri silinmez, çünkü geçmiş hareketleri onlara bağlıdır. Arşivleme ise hacim sorununa çözümdür; kayıt kaybolmaz, günlük ekranlardan çekilir. Kalıcı silme en dar kullanım alanına sahiptir ve yalnızca hiçbir yere bağlanmamış kayıtlar için uygundur.

Bağlı kayıt sorunu

Silme kararını zorlaştıran şey, kayıtların birbirine bağlı olmasıdır. Bir ürün kartını silmek isteyen kullanıcı, o ürünün geçmiş siparişlerde, stok hareketlerinde ve raporlarda geçtiğini bilmek zorunda değildir; yazılımın bunu bilmesi ve uyarması gerekir.

  • Silme isteği önce bağlı kayıt taramasıyla karşılanır
  • Bağlı kayıt varsa kalıcı silme kapatılır, pasife alma önerilir
  • Bağlı kayıt yoksa silme izni verilir ama işlem yine kayıt altına alınır
  • Zincirleme silme yalnızca gerçekten bağımlı alt kayıtlar için kullanılır

Zincirleme silme en tehlikeli özelliktir. Bir sipariş silindiğinde satırlarının da gitmesi mantıklıdır, çünkü satır siparişten bağımsız bir anlam taşımaz. Ancak bir cari hesap silindiğinde hareketlerinin de gitmesi istenmez; bu tür bir zincir, tek bir yanlış tıklamayla dönemin tüm sayılarını değiştirir.

Pasife almanın görünmeyen maliyeti

Pasife alma güvenlidir ama bedava değildir. Bir kayıt pasife alındığında yazılımın her yerinde doğru davranması gerekir, aksi halde pasif kayıtlar beklenmedik yerlerde görünmeye devam eder.

  1. Yeni kayıt ekranlarındaki seçim listeleri pasif kayıtları göstermez
  2. Geçmiş kayıtların görüntülenmesinde pasif tanım yine okunabilir olur
  3. Raporlar pasif kayıtları tarihsel doğruluk için dahil eder
  4. Arama ekranlarında pasif kayıtlar ayrı bir filtreyle bulunabilir
  5. Tekillik kuralları pasif kayıtları da hesaba katar

Son madde sık gözden kaçar. Bir ürün kodu pasife alındıktan sonra aynı kod yeni bir ürüne verilebilir mi? Verilebiliyorsa geçmiş hareketlerde iki farklı ürün aynı kodla görünür ve rapor karışır. Doğru karar, kodu pasif kayıtta da rezerve tutmaktır.

Saklama politikası nasıl yazılır

Saklama politikası teknik bir ayar değil, işletmenin yazılı kararıdır. Hangi veri türünün ne kadar tutulacağı, süre dolduğunda ne yapılacağı ve kimin onayıyla silineceği belirlenir. Politika yazılı olmadığında iki uç ortaya çıkar: ya hiçbir şey silinmez ya da biri bir gün toplu silme yapar.

  • Veri türü: işlem kayıtları, tanım kayıtları, iz kayıtları, yüklenen dosyalar, geçici veriler
  • Süre: her tür için ayrı; iş gereği ve mevzuattan doğan yükümlülüklere göre belirlenir
  • Süre sonu davranışı: arşive taşıma, anonimleştirme ya da kalıcı silme
  • Onay: silmeyi kimin başlatabileceği ve kimin onaylayacağı
  • Uygulama: planlı iş olarak otomatik mi, elle mi

Mevzuattan doğan saklama süreleri alanınıza göre değişir ve bu süreyi yazılım ekibi değil, işletmenin mali ve hukuki danışmanları söyler. Yazılım tarafında yapılacak şey, süreyi parametre olarak tutmak ve değiştiğinde kod değişikliği gerektirmemesidir.

Anonimleştirme: silmeden kurtulmak

Bazı durumlarda kaydın tamamını silmek mümkün değildir ama kişiyi tanımlayan alanları tutmanın da gerekçesi kalmamıştır. Bu durumda kayıt silinmez, kişisel alanlar anonimleştirilir: ad, iletişim ve adres alanları temizlenir ya da geri döndürülemez biçimde dönüştürülür, sipariş adedi ve tutar gibi istatistik için gereken alanlar kalır.

Anonimleştirmenin iki şartı vardır. Birincisi geri döndürülemez olması; eşleme tablosu saklanıyorsa yapılan iş anonimleştirme değil, gizlemedir. İkincisi bütün kopyalarda uygulanması — yedekler, raporlama kopyaları, dışa aktarılmış dosyalar ve varsa test ortamı. Test ortamı tarafını test ortamı ve veri maskeleme yazısında ayrıca ele aldık.

Kısa kontrol listesi

  • Pasife alma, arşivleme ve kalıcı silme ayrı işlemler olarak tanımlı mı
  • Silme isteği öncesinde bağlı kayıt taraması yapılıyor mu
  • Zincirleme silme yalnızca gerçek bağımlı kayıtlarda açık mı
  • Pasif kayıtlar yeni işlemlerde seçilemiyor, geçmişte görünüyor mu
  • Pasife alınan kodlar yeniden kullanıma açılıyor mu
  • Saklama süreleri veri türü bazında yazılı mı ve parametre mi
  • Süre sonu davranışı arşiv, anonimleştirme ya da silme olarak belirli mi
  • Silme ve anonimleştirme işlemleri iz kaydına yazılıyor mu

Özet: Silme sorusunun cevabı tek değildir; doğru soru kaydın bağlı olup olmadığı ve ne kadar süre tutulması gerektiğidir. Pasife alma günlük çözüm, arşivleme hacim çözümü, kalıcı silme ise yazılı bir saklama politikasının sonucu olur. KAV Yazılım, özel yazılım projelerinde silme ve saklama kurallarını veri modeliyle birlikte tanımlar.

Sık sorulan sorular

Pasife alınan kayıt raporlarda görünmeli mi?

Geçmiş dönemi anlatan raporlarda görünmelidir, aksi halde eski dönemin sayıları bugün bakıldığında değişmiş olur. Yeni kayıt oluşturma ekranlarında ise görünmemelidir. Pratik çözüm, raporda pasif kayıtları dahil etmek ve seçim listelerinde hariç tutmaktır.

Kullanıcıya kalıcı silme yetkisi verilmeli mi?

Günlük kullanıcıya verilmemesi daha güvenlidir; onun ihtiyacı pasife almayla karşılanır. Kalıcı silme, bağlı kaydı olmayan hatalı girişler için sınırlı bir yöneticiye bırakılır ve her işlem iz kaydına yazılır. Böylece yanlışlıkla yapılan silmeler hem azalır hem izlenebilir olur.

Silinen kayıt geri getirilebilir mi?

Pasife alınan kayıt tek hareketle geri aktif edilebilir. Arşive taşınan kayıt da geri getirilebilir, çünkü veri durmaktadır. Kalıcı silinen kayıt ise yalnızca yedekten dönülerek kurtarılabilir ve bu, o tarihten sonraki değişiklikleri etkilediği için pratikte zordur.

Veritabanı büyüdü, eski kayıtları silmeli miyiz?

Hacim sorununda ilk çözüm silme değil arşivlemedir: kapanmış dönem hareketleri günlük tablolardan ayrılır, ekranlar hızlanır, veri kaybolmaz. Silme ancak saklama süresi dolmuş ve iş gereği kalmamış veriler için düşünülür. Önce hangi tabloların büyüdüğünü ölçmek, kör silmeden daha iyi sonuç verir.
  • arşivleme
  • iz kaydı
  • kayıt silme
  • veri bütünlüğü
  • veri modeli