Odaklanmak istediğim konuya hizmet edeceğini düşündüğüm bir kesitini sizlerle paylaşmak isterim.
Alice harikalar diyarında gezinirken bir yol ayrımına gelir ve yol ayrımında bekleyen kedi ile şöyle bir diyaloğa girer;
Alice : "Lütfen söyler misin, hangi yöne doğru gitmeliyim?"
Kedi : "Bu senin nereye varmak istediğine bağlı."
Alice : "Varacağım yerin neresi olduğu çok önemli değil."
Kedi : "O zaman hangi yöne gideceğin de önemli değil."
Alice : "Ama bir yere varmak istiyorum."
Kedi : "Mutlaka varırsın. Eğer yeterince uzun yürürsen."
Bir yere varmak için önce nereye gitmenin iyi olacağına karar vermek, sonra oraya gitmeyi istemek, daha sonra bulunduğun durumun çok iyi farkında olmak, hemen ardından doğru bir analizle aradaki farkı belirlemek, uygun stratejiler geliştirmek ve nihayet denemek gerekir. Eğer sonuç başarılı olmazsa sonucu değerlendirmek ve döngüyü tekrarlamak, tekrarlamak, tekrarlamak gerekir. Bu Duygusal Zeka konseptinde kendini değiştirme döngüsüdür. Analiz et, karar ver, tekrar dene!
Günlük yaşamın her anında sürekli analiz eder ve karar veririz. Saat kaçta kalkacağımızdan tutun da yemekte ne kadar tuz kullanacağımıza kadar bir çok kararı vermek zorunda kalırız. Bazen bir kaç dakikalık, bazen yıllık, bazen de ömürlük kararlar veririz. Biz biliyoruz ki; verdiğimiz kararlar bazen çok hızlı bazen de yavaş ve sessizce hayatımızı bambaşka yönlere sürükleyebilir. Ve tecrübeyle sabittir ki; doğru zamanda, doğru yerde verdiğimiz iyi kararlar yaşam kalitemizi yükseltme gücüne sahiptir.
Organizasyonlar için de bu böyledir. Organizasyonların bazen tüm dünyaya etkileyen başarısı, karar vericilerin zamanında verdiği doğru stratejik ve operasyonel kararlara bağlıdır. Doğru kararların temelinde kanı değil kanıt yatar. Bu kanıtların güvenilir ve tutarlı olması gerekir. Kanıtlar organizasyonların sağlıklı ham verilerinden ve güvenilir diğer kaynaklardan yararlanılarak zenginleştirilmiş faydalı, anlamlı, tutarlı verilerinden oluşur. İşi bir adım daha ileri götürürsek bu verilerden yola çıkarak yapılan tahminler de karara olan güveni arttırır. Cesaret verir.
Organizasyonların geçmişine dair ham verilerin ve güvenilir kaynaklardan yardım olarak zenginleştirdiği faydalı verilerin kaliteli olması organizasyon geleceğinin inşası için son derece önemlidir. Bir çok sebepten dolayı zamanla verilerde bozulmalar meydana gelebilir. Bozuk verilerle alınan kararların maliyeti oldukça yüksektir. Bazen bunu ölçmek mümkün bile olmayabilir.
The Data Warehousing Institute (TDWI) 'nın araştırmasına göre Birleşik Devletler'deki envanter fazlalığı, tedarik zincirindeki verimsizlikler, ödeme sistemlerindeki problemler vs. ele alındığında veri kalitesindeki problemlerin maliyetinin yılda 600 milyar dolardan fazla olduğu görülmüştür. Tabi bu işin maddi boyutu. Bozuk verilerden dolayı doğru kararlar alınamadığı için bir çok farklı türde mağduriyet-mahrumiyet yaşanabilir. Dahası verimliliği arttıracak fırsatları görmek imkansız hale gelir.
Bırakın ortalama bir kuruluşu, veri kalitesinin kusursuz olduğunu beklediğimiz veya bu şekilde olduklarını iddia eden organizasyonlarda bile veri bozuklukları ile karşılaşmak mümkün. Başarısı doğru kararlar vermeye bağlı olan her organizasyonun özenle yönetmesi gereken bir şeydir bu; "Veri Kalitesi - Data Quality"
Ne tür veri bozuklukları ile sıkça karşılaşılır?
Veri bozuklukları çoğunlukla insan hatasına dayalı olur. Bazen de sistemdeki bozukluklar, aksaklıklar verileri tutarsız olmaya zorlar. Veri girişi esnasında, veriler farklı kaynaklardan bir araya getirirken ve zenginleştirilirken çeşitli anomaliler ortaya çıkabilir.
Karşılaşılan bozukluklar genelde şu minvalde olur:
- Format: Örn. Yanlış telefon formatı girilmesi.
- Standart: Örn. Cinsiyet, evlilik durumu, ülke kodu standardının dışına çıkılması.
- Consistent (Tutarlı): Örn. Değişik para birimlerinin değerini aynı alanda tutmak.
- Complete (Tam): Örn. Müşterilerin %40'ının soyadının boş olması.
- Accurate (Kesin): Örn. Teslimat yıllar önce yapılmış anca hala yapılmamışlar listesinde yer alması.
- Valid (Geçerli): Örn. Müşteri yaşının -100 olması.
- Duplicate (Tekrarlı): Örn. Aynı müşteriden birden fazla olması.
Veri kalitesini arttırmak için hangi adımlar atılır?
Veri kalitesini arttırma sürecini şu bir kaç madde ile özetlemek mümkün:
- Analiz: Bozuklukların tespit edilmesi aşamasıdır.
- Plan: Bozuklukların giderilmesi için gerekli yol haritasının çıkarılması aşamasıdır. Bazen bir kaç seviye temizlik yapılması gerekebilir. Her seviyede yeniden analiz yeniden plan yapılabilir.
- Geliştirme:
- Temel bozuklukların giderilmesi
- Kullanıcı hatasından kaynaklananlar.
- Donanımsal ve yazılımsal bozukluklar.
- Net, anlaşılır olmayan veriler.
- Veri birleştirmeden kaynaklanan bozukluklar.
- İleri bozuklukların giderilmesi
- Eksik veriler.
- Tahmine dayalı düzeltme gerektiren hatalar.
- Makul olmayan aykırı veriler.
- Kural bazlı kontrol mekanizmasının kurulması
- Veri temizliği, veri taşıma, veri zenginleştirmesi ve kural bazlı kontrol sisteminin otomatize edilmesi.
- Test ve Doğrulama
Süreci daha detaylı ve literatüre uygun şekilde ele alırsak veri kalitesini arttırma çalışmalarında şu aşamalardan geçildiğini ifade edebiliriz:
- Detection: Verilerin analiz edilmesi ve bulguların elde edilmesi aşaması.
- Veri kaynaklarını ve veri kümesini tarif eden istatiksel analizler yapılır.
- Verilerin profili çıkartılır, ilişkiler, bağıntılar, dağılımlar vs. tespit edilir.
- Definition: Veri dönüştürme ve eşleştirme çalışma planının hazırlanması aşaması.
- Veri kaynaklarına erişim ve veri çekme planı
- Veri kaynaklarda kirlilik durumuna göre tek tek ve entegrasyon sonrası yapılacak düzeltmelerin planlanması
- Hedefte yapısal değişiklik yapma ihtiyacının belirlenmesi (tasarımda)
- Farklı kaynaklardaki verilerin birlikte değerlendirilmesi ile ilgili iş kurallarının çıkartılması
- Correction: Planlanan düzeltmelerin yapıldığı aşama
- Öncelikle tek bir kaynaktaki problemlere odaklanılır. Daha çok alan bazlı verilerin düzeltilmesi aşamasıdır.
- İş kurallarına uygun olacak şekilde temiz bir entegrasyon için veri hazırlanır.
- Birleştirilmiş veri kümelerinde ortaya çıkan hatalara, bozuk ilişkilere odaklanılır.
- Veriler iş kurallarına uygun şekilde tasarlanmış hedefte depolanır.
- Veri kalitesini sürekli olarak korumak için otomasyon kurulur. Veri merkezileştilir, kurallar belirlenir ve istenen yapıda depolanır.
- Veri kalitesini bozan durumlar raporlanır.
- Enrichment: Verinin gerekirse farklı kaynaklar kullanılarak zenginleştirilmesi aşaması
- Verinin anlaşılabilirliğine katkı sağlayacak ek geliştirmeler
- Standartlaştırma
- İlişkili olabilecek ek verilerin bir araya getirilmesi
- Test and Verification: Test ve Değerlendirme aşaması
- Mevcut durum kontrol edilir.
- Yeni ihtiyaçlar belirlenir. Gerekli görülürse geliştirme yapılır.
Bu tür çalışmalarda neleri göz önünde bulundurmak gerekir?
Veri kalitesini arttırma çalışmalarına şunları göz önünde bulundurmak gerekir:
- İşletme kurallarına hakim olmak.
- Veri kümeleri arasındaki ilişkilere hakim olmak.
- Verinin elde edildiği kaynaklardan veya türetildiği yöntemlerden haberdar olmak.
- Veri temizleme teknolojilerine (Data/Text Mining, ETL, SQL vs.) ve yaklaşım biçimine hakim olmak.
- Geliştirme desteğini alabilmek.
- Geliştirme süresini kontrol altında tutabilmek.
- Lisans maliyetlerini karşılayabilmek.
- Proje maliyetini kontrol altında tutabilmek.
- Her aşamada veri güvenliğinin sağlanması.
Hangi ürünler kullanılır?
Bu alanda yerli, yabancı, büyük, küçük bir çok firmaya ait ürün mevcut. Bu çalışmayı Microsoft ürünleri ile sürdürmek isterseniz şu teknolojilerle muhatap olabilirsiniz:
- MS SQL Server
- SQL Server Integration Services (SSIS) - ETL
- SQL Server Analysis Services (SSAS)
- Full-Text Search
- Data Quality Services
- Master Data Services
- Microsoft R Open vb.
- Azure
- Azure ML
- MarketPlace Store
- Azure Data&Analytics Services (İlgili servisler)
- Excel ve Eklentileri
- Power BI
- .NET
Veri kalitesini nasıl yönetebilirim?
Veri kalitesini yönetebilmek için bozuklukların sebebine iyi vakıf olmak gerekir. Evrensel bir cevap vermek gerekirse;
Bozuklukların genelde 3 sebebi olur:
- İnsan
- Teknoloji
- Süreç
Bu temel sebepleri kontrol altında tutmak veri kalitesini yükseltecektir. Kontrolü sağlamak için şu ipuçlarını takip edebilirsiniz:
- Veri üretimi konusunda gerekli/yeterli yöntemin ve rollerin belirlenmesi.
- Sorumlulukların net bir şekilde belirlenmesi ve kontrol mekanizmalarının kurulması
- Veri üretimi konusundaki politikanın açık, net, yeterli ve anlamlı olması.
- Gerekli prosedürlerin tanımlanmış ve kolayca yürütülebilir olması.
- Güvenliğin anlamlı seviyede sağlanmış olması.
- Teknolojinin yetenekli ve pratik kullanıma uygun olması.
Çoğu projenin gizli bir adımı olan veri temizleme süreci aslında tek başına özenle odaklanılması gereken bir konudur. Veri kalitesi yüksek olduğunda analizler daha doğru olur. Bu analizlerden ortaya çıkan kararlar da daha başarılı sonuçlar doğurur. Her ne kadar büyük veri konseptinde kalite kısmen göz ardı edilmek zorunda kalınsa da, aslında tüm analitik çalışmalarda verinin kalitesi başarıyı doğrudan etkiler. Kaliteli bir veri kümesi üzerinde yapılan analizler ve tahminlemeler daima avantaj sağlar.
Eğer kuruluşunuzda Microsoft SQL Server kullanıyorsanız çalışmayı başlatmak için zaten gerekli araçlara sahipsiniz demektir. Ötelemeyin!
Merhabalar Abdullah Bey, veri tekniklerimi olgunlaştırmamda yazınızı çalışma hayatımda kullanıyorum. Bu güzel kaynak için teşekkür ederim.
YanıtlaSil