BBY 302 Bilgi Teknolojisi ve Yönetimi Veri Kaynaklarının Yönetilmesi 1 Veriden, verinin bilgisayarda saklanmasına giden yol 2 Veri Hiyerarşisi 3 ASCII Tablosu (Sayıdan Karaktere Geçiş) 4 Bilgisayarda Dosya Organizasyonu Path c:\okul\rapor.doc 5 Dosya Sistemlerindeki Problemler •Veriler birbirinden ayrı ve izole edilmiş •Çoğunlukla veri tekrarı var •Uygulama programına bağımlı •Birbirine uymayan (incompatible) veri dosyaları •Anlaşılması zor 6 Uygun Çözüm Nedir? • Uygun çözüm listenin, işin mantığına uygun bir biçimde, alanlara bölünerek yeniden organize edilmesidir. • Elimizdeki listede en büyük problem farklı konuların (iş bilgileri, yüklenici bilgileri, teçhizat bilgiler, kiralama bilgiler) aynı yerde gösterilmiş olmasıydı. • Herbir konu için bir liste (tablo) oluşturularak bu problemi çözebiliriz. 7 Uygun Çözüm Nedir? • • • • Eğer bir telefon değişirse sadece Contractor tablosundaki ilgili alan güncellenir. Eğer bir kiralama işi silinecekse sadece Rental tablosundan bir kayıt silinir. Eğer yeni bir müşteri eklenecekse Contractor tablosuna yeni bir kayıt eklenir. Aynı ekipman için farklı günlük kiralama bedelleri ne olacak? JOB RENTAL CONTRACTOR NAME Sea View Bldg Contractor Phone Village Square End Date Days 6/17/2002 6/19/2002 3 6/24/2002 6/24/2002 1 KH Services 213.444.1181 Comstock, Inc. 232.492.3383 6/17/2002 7/3/2002 17 RB Partnership 508.555.3233 7/1/2002 7/3/2002 3 Highland Center Long Plaza Start Date 6/15/2002 EQUIPMENT Equipment Type Equipment Number Daily Rate Back Hoe 10400 750 Medium Crane 335 350 Back Hoe 10020 650 Scaffolding 0 7/1/2002 7/8/2002 8 7/8/2002 7/11/2002 4 135 8 Bağımsız Tablolar Arasındaki İlişkiler 9 Veri Tabanı (Database) Nedir? Bir veri tabanı, mantıksal olarak ilişkili verilerin tutulduğu yapıdır. •Gerçek dünyaya ait bazı görüntüleri yansıtır. •Veri tabanı içerisinde tutulan veriler mantıksal olarak uyumludur. •Özel bir amaç için tasarlanır ve oluşturulurlar. •Herhangi bir boyutta ve değişen karmaşıklıkta olabilirler. 10 Veri Tabanı Yönetim Sistemi (VTYS) Nedir? Bir VTYS (Database Management Systems - DBMS), veri tabanı tanımlamak, yaratmak, yaşatmak ve veri tabanına denetimli erişim sağlamak için kullanılan yazılım sistemidir. •Bir veri tabanı, ilgili veriler için veri türlerinin, yapılarının ve kısıtlamalarının belirlenmesi ile tanımlanır. •Bir veri tabanına veriler girilerek yaratılır. •Veri tabanı yaratıldıktan sonra sorgulama, veriye erişim, güncelleme ve rapor yaratma gibi işlevler gerçekleştirilebilir. 11 Niçin Veri Tabanı Kullanalım? Bir veri tabanının amacı kişilere ve örgütlere nesnelerle ilgili kayıt tutmada yardımcı olmaktır. Veri depolamak için liste kullanmanın getirdiği sorunlar –Veri tutarsızlıkları –Veri mahremiyeti/gizliliği:bölümler bazı verilerini paylaşmak isteyebilirler, ama tümünü değil. Veri tabanları tek konulu tablolarda verileri depolar. Tablolar ana ve yabancı anahtarlar aracılığıyla ilişkilendirilir. VTYS’de veri bütünleşik, tekrar azaltılmış, programdan bağımsız ve verinin anlaşılması kolay. 12 Veri Tabanı kendi kendini tanımlar •Bir veri tabanı veri sözlüğü (data dictionary) içerir •Veri sözlüğü veri hakkında veridir (metadata) •Veri sözlüğü veri tabanında depolanan bilginin yapısını ve biçimini tanımlar 13 Veri Tabanı Sistemi 14 Veri Tabanı Sistemi 15 Veri Tabanı Uygulaması (Database Application) İşlevler: – Form yaratmak ve işlemek – Soru yaratmak ve iletmek – Rapor yaratmak ve işlemek – Uygulama mantığınıyürütmek – Uygulamayıdenetlemek 16 Veri Tabanı Yönetim Sistemi (DBMS) İşlevler: –Veri tabanını, tabloları ve destek yapıları yaratmak –Veri tabanı verilerini okumak ve güncellemek –Veri tabanı yapılarını yaşatmak –Kuralları uygulamaya zorlamak –Tutarlılığı denetlemek –Güvenliği sağlamak –Veri tabanını yedeklemek ve gerektiğinde eski haline döndürmek Örnek: Oracle, DB2, Microsoft Access, SQL Server 17 Veri Tabanı Bileşenleri – Kullanıcı verileri – Metadata: veri tabanının yapısı hakkında veriler – Dizinler ve ilgili yapılar – Depolanmış yordamlar (stored procedures):veri tabanında depolanmış program modülleri – Tetikleyiciler (triggers):belli bir veri etkinliği meydana geldiğinde yürütülen yordamlar – Uygulama metadatası:formlar yada raporlar gibi uygulama ögelerini tanımlayan veriler 18 Güncellenmiş Veri Hiyerarşisi 19 Veri Tabanı Sistemi Geliştirme Uygulama programına paralel olarak 3 aşama • Gereksinim Aşaması • Tasarım Aşaması • Gerçekleştirim Aşaması • Güncelleme 20 Veri Tabanı Sistemi Geliştirme Gereksinim Aşaması: Bir veri modeli geliştirilir - Veri modeli veri tabanı yapısının mantıksal gösterimidir - Gerekli alanlar ve alanlar için veri türleri (phone / 11 karakter, start date / tarih v.b) - Alanlar için max uzunlular (name / max 50 karakter v.b.) - Alanlar için kısıtlamalar (sayısal bir alana karakter girilemez gibi) - Tablolar arasındaki ilişkiler belirlenir. - Sonraki aşamaların hepsi veri modeline bağımlı olduğu için modellemedeki yanlış tüm aşamaları etkileri - Modelleme genellikle ER (Entity Relationship) şemaları ile gerçekleştirilir. 21 Veri Tabanı Sistemi Geliştirme Tasarım Aşaması: Veri modeli tablolara ve ilişkilere dönüştürülür 22 Veri Tabanı Sistemi Geliştirme Gerçekleştirim Aşaması: –Tablolar, ilişkiler ve sınırlılıklar yaratılır –Depolanmış yordamlar ve tetikleyiciler yazılır –Veri tabanına veri girilir ve sistem denenir –Bu aşamadan sonra gerçekleştirilen veri tabanı sistemi ile uygulama programı arasındaki gerekli bağlantılar gerçekleştirilir. • Uygulama programında VT’ye bağlantı (ODBC, ADO v.b.) • VT’nin uygulama programı içerisinden kontrolü (SQL) 23 Dağıtılmış (Distributed) VTYS 24 Çok Boyutlu Veri Analizi -Veri tabanlarında tutular veriler için temel tablo (ya da tablolar arası) sorgulamalar gerçekleştirilir, - Sorgu sonuçları genellikle tek boyutlu olarak görselleşir, - Çok parametrenin aynı anda gözlenmek istendiği durumlar için klasik VTYS’ler yetersiz kalır, - Örneğin, bir firma Ürün {vida, cıvata, conta, tornavida}, Satış yapılan bölge {doğu, batı, orta} ve Satış {planlanan, gerçekleşen} bilgilerinden analizler yapmak istiyor. - Bu durumda verinin çok boyutlu olarak gösterilmesi zorunludur 25 Çok Boyutlu Veri Analizi - Ürün ve bölgeye göre gerçekleşen satışlar, - Bu satışların planlanan satışlarla karşılaştırılması, - Veri küpü yaratılır, küp her 90 derecelik dönüşünde veri ile ilgili yeni bir boyut gösterir. - Çok boyutlu veri analizi: OLAP (Online Analytical Processing ) olarak da adlandırılır. 26 Veri Ambarları (Data Warehouses) Organizasyonların iç bilgi sistemlerinde bulunan verilerle dış bilgi sistemlerinden gelen verileri birleştirerek yeni bir VT oluşturulmasıdır. Bu VT üst seviye analizlerin gerçekleştirilmesi için gerekli veri yapısını ve veriyi sağlar. 27 Veri Ambarları Sistem Bileşenleri - Kişisel bilgisayarlar, - Karar destek sistemi(KDS) yazılımı, - İletişim ağları, - Sunucular, - Farklı veritabanı yönetim sistemi(DBMS) paketleri, - Farklı organizasyonel birimler gibi, çok geniş bir alana dağılmış bileşenler içeren karmaşık bir sistemdir. Bu yüzden de, her karmaşık sistemde olduğu gibi bir mimari oluşturularak işe girişilmelidir. 28 Veri Madenciliği (Data Mining) Veri madenciliği, çok büyük veri tabanlarındaki ya da veri ambarlarındaki veriler arasında bulunan ilişkiler, örüntüler, değişiklikler, sapma ve eğilimler, belirli yapılar gibi ilginç bilgilerin ortaya çıkarılması ve keşfi işlemidir. Veri madenciliğindeki amaç, toplanmış olan bilgilerin, bir takım çıkarımsal yöntemlerle incelenip ilgili kurum ve yönetim destek birimlerinde kullanılmak üzere değerlendirilmesidir. Veri madencisinin geleneksel yöntemlerde olduğunun aksine başlangıçta herhangi bir amacı ya da varmak istediği bir hedef yoktur. Örnek: Büyük bir süpermarketin basit fatura kayıtları incelendiğinde, tıraş bıçağı alan müşterilerin %56 sının aynı zamanda kalem pil de aldığı ortaya çıkmıştır. Buna dayanarak firma, tıraş bıçağı ve kalem pil reyonlarını bir araya getirmek suretiyle kalem pil satışlarını %14 arttırmıştır. 29 Veri Madenciliği Sistem Bileşenleri Bir veri madenciliği sistemi, aşağıdaki temel bileşenlere sahiptir: - Veritabanı, veri ambarı ve diğer depolama teknikleri - Veritabanı ya da Veri Ambarı Sunucusu - Bilgi Tabanı - Veri Madenciliği Motoru - Örüntü Değerlendirme - Kullanıcı Arayüzü http://tr.wikipedia.org/wiki/Veri_madenciliği 30 Veri Tabanının Internet’e Açılması 31