Küçük bir raporlama aracı (sqlite arka uç ile) geliştirmeye çalışıyorum. Bu aracı en iyi "işlem" defteri olarak tanımlayabilirim. Ne yapmaya çalışıyorum haftalık veri ayıklamak "işlemleri" takip etmektir:
- "yeni" (veya ekleme) - benim app olabileceğinden kaynak Uygulamama yenidir değil o özlerinin aracılığıyla görülmedi olarak önce bu kaynağı izlemiş.
- "güncelleme" (veya isabet) - bu kaynağın yakın zamanda kullanımı var, saklama süresini bir hafta daha güncelleyin.
- "sil" (veya bırak) - bu öğe son rapordan bu yana bir işe yaramadı (isteğe bağlı, ancak kaynak talebinde haftadan haftaya değişikliklerin grafiğini almak için iyi olurdu).
Elimdeki tek şey, üzerinde hiçbir kontrole sahip olmadığım eski bir arşivleme / kayıt yönetimi sisteminden gelen haftalık bir veri özütüdür (boru ile sınırlandırılmış düz dosya).
Her bir hat temel olarak şu şekilde damıtılabilir:
resource_id | resource info | customer_id | customer_info
Örnek veri:
10| Title X | 1 | Bob
11| Another title | 1 | Bob
10| Title X | 2 | Alice
Amaç, X-ay boyunca (son isabet bazında) kullanım görmeyen kaynakları rapor etmeyi kolaylaştırmaktır. Kaynakların, popüler olmaları halinde erişim kolaylığı için etrafta tutulduğu bir saklama süresi vardır. 18 aydır kullanılmayan bir kaynak, başka bir yerde uzun süreli arşivleme için işaretlenmiştir.
Bu yaygın bir sorun olmalı. Veri kümeleri arasında neyin yeni / aynı / neyin kaldırıldığını belirlemek için genel amaçlı bir algoritma olup olmadığını mı merak ediyorsunuz?