1 / 23

Veritabanı Yönetim Sistemleri-I

Veritabanı Yönetim Sistemleri-I. Dr. Akın Özçift Dr. Mustafa Karabulut. Ders 1 Veritabanı Temel Kavramları Veritabanı Tasarımı. Veritabanı Kavramı. Veritabanı bir amaç için toplanmış bilgi topluluğudur

Download Presentation

Veritabanı Yönetim Sistemleri-I

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Veritabanı Yönetim Sistemleri-I Dr. Akın Özçift Dr. Mustafa Karabulut • Ders 1 • Veritabanı Temel Kavramları • Veritabanı Tasarımı

  2. Veritabanı Kavramı • Veritabanı bir amaç için toplanmış bilgi topluluğudur • Herhangi bir şekilde gruplanmış ve düzenli bir şekilde saklanan veri bütününe genelde veritabanı denmektedir. • Günlük hayatta pek çok alanda veritabanlarına rastlarız • Bir kurumun personeline ait bilgileri sakladığı sistemde • Bir alışveriş sitesinin ürünlerini, müşterilerini, satışlarını takip ettiği sistemde • Üniversite öğrencilerinin bilgilerinin tutulduğu otomasyon sisteminde

  3. Veritabanı Kavramı • Veritabanına neden ihtiyaç duyulur ? • Pek çok işlemi yapmak için yazılan programlar kullanıcı tarafından girilen verileri bir yere kaydetmek zorundadır • Çünkü hangi programlama dili kullanılırsa kullanılsın, program içindeki veriler (değişkenler) RAM’de tutulduğu için bilgisayar kapandığında hepsi silinmektedir. • Dolayısıyla veritabanı (VT) bilgilerin KALICI olarak saklandığı fiziksel ortam olarak, veri işleyen tüm programların bilgilerini depolaması için gereklidir

  4. Veritabanı Kavramı • Program yazarken verileri saklamak için veritabanı dışında metotlar da kullanmıştır/kullanılmaktadır • Sıralı dosyalar: (Sequentialaccessfiles): • Program bilgisayarda kendisi için bir dosya açar ve bilgileri oraya kaydeder. • Yavaştır ve çok zahmetlidir. • Büyük boyutlu verilerde sistem çalışamaz duruma gelir

  5. Veritabanı Kavramı • Program yazarken verileri saklamak için veritabanı dışında metotlar da kullanmıştır/kullanılmaktadır • Sıralı dosyalar: (Sequentialaccessfiles): • Program bilgisayarda kendisi için bir dosya açar ve bilgileri oraya kaydeder. • Verilerin bakımı ve organizasyonu programcı tarafından yapılmaktadır. • Yavaştır ve çok zahmetlidir. • Farklı programların verileri birbiriyle uyumsuzdur ve veri paylaşımı çok zordur • Büyük boyutlu verilerde sistem çalışamaz duruma gelir

  6. Veritabanı Kavramı • Oysa Veritabanı kullanırken: • Programcı verilerin depolanması ve bakımı ile ilgilenmez. Bu işleri Veritabanı Yönetim Sistemi denilen bir yazılım yapar. • Büyük boyut veriler hızlı bir şekilde işlenebilirler. Örneğin 1.000.000 kaydın işlenmesi sadece saniyeler sürer. • Veritabanı yönetim sistemi SQL denen ortak bir protokolü desteklediği için veri farklı programlar tarafından paylaşılabilir ve farklı sistemler için de uyumludur

  7. Veritabanı Yönetim Sistemi • Veritabanı Yönetim Sistemi nedir ? • Verileri depolayan ve Veritabanlarını organize eden • Veriler üzerinde program tarafından gönderilen ekleme/silme/güncelleme gibi istekleri yerine getiren • Verilerin güvenliğini sağlayan …..BİR YAZILIMDIR

  8. VTYS Kullanım Avantajlar • Veri tekrarının ve tutarsızlığının kontrol edilmesi • Yetkisiz erişimin sınırlandırılması • Programlama dilleri ile etkili iletişim platformu sağlama • Sonuç çıkarmaya elverişli olma • Çok kullanıcılı arayüz sağlamak • Veriler asasındaki karmaşık ilişkileri tanımlama • Veri tutarlılığının sağlanması • Yedekleme ve kurtarma fonksiyonlarını sağlama

  9. Veritabanı Yönetim Sistemi • VTYS ve VT iki farklı kavramdır • VTYS bir yazılımdır, VT ise bir veri topluluğudur, yani fiziksel olarak dosyalarda tutulan bir bilgi kümesidir • VTYS veritabanlarını yönetir, depolar, siler, ekler v.b. işlemleri yapar. VT ise üzerinde işlem yapılan bir veri grubundan ibarettir (bu işlemleri kendisi yapamaz) • Programcı verileri depolamak için veritabanına doğrudan ulaşmaz, bunun yerine VTYS sistemine erişir ve ona talebini iletir • Dolayısıyla sistemde her zaman bir VTYS bulunmak zorundadır

  10. Veritabanı Yönetim Sistemi Client = İstemci, DBMS = Veritabanı Yönetim Sistemi, Database = Veritabanı

  11. Veritabanı Yönetim Sistemi • Veritabanına erişen programlar • C#, Pascal, Delphi, PHP, ASP.NET v.b. Dillerde yazılan herhangi bir program olabilir • Veritabanı yönetim sistemi • Ağ/İnternet üzerinden erişilebilir • Hizmet (Service) mantığında çalışır • Aynı anda birden fazla istemciye yanıt verebilir • Aynı anda birden fazla veritabanını barındırabilir

  12. Veritabanı Yönetim Sistemi • Veritabanına erişen programlar • C#, Pascal, Delphi, PHP, ASP.NET v.b. Dillerde yazılan herhangi bir program olabilir • Veritabanı yönetim sistemi • Ağ/İnternet üzerinden erişilebilir • Hizmet (Service) mantığında çalışır • Aynı anda birden fazla istemciye yanıt verebilir • Aynı anda birden fazla veritabanını barındırabilir

  13. Veritabanı Yönetim Sistemleri • VTYS yazılımları birden fazla türdedir • Hiyerarşik VTYS: Veriler alt-üst ilişkisi şeklinde tutulur • Ağ VTYS: Veriler birbirlerine yine alt-üst ilişkisi ile bağlıdır ama her verinin birden fazla üstü bulunabilir • Nesne Tabanlı VTYS: Veriler nesneler halinde tutulur. • İlişkisel VTYS: Günümüzde en çok kullanılan VTYS türüdür. Veriler tablolar şeklinde gruplanır ve her tablo başka tablolar ile mantıksal olarak ilişkilendirilir.

  14. İlişkisel VTYS Bir ilişkisel VT’deki farklı üç tablo ve aralarındaki ilişkiler

  15. İlişkisel VTYS • İlişkisel VTYS modelinde • Tablolar (Tables): Birbirinden bağımsız her bir veri grubunu temsil eder • Satırlar (Rows / Records): Her bir tablodaki kayıtları temsil eder • Alanlar (Fields / Columns): Bir tablodaki bir kayda ait bir özelliği temsil eder. Ör: Müşterinin adı veya siparişin tarihi • İlişkiler (Relations): Tablolar arasındaki mantıksal ilişkilerdir. Tabloda yabancı anahtar (Foreignkey) kullanımı ile gerçeklenir.

  16. Tablo tasarımı ve Normalizasyon • Tablo tasarlanırken • Nesneler tanımlanır • Her nesne için bir tablo oluşturulur • Her tablo için bir anahtar alan (primarykey) seçilir • Nesnelerin gerekli özellikleri için tabloya sütunlar eklenir • Tekrarlayan özellikler için ek tablolar oluşturulur • Tablolar arası ilişkiler tanımlanır

  17. Normalizasyon Normalize edilmemiş tablo. Kira ve müşteri bilgilerini tutuyor. Dikkat edilirse veri tekrarları var, bu da veri güncellemeyi zorlaştırıyor

  18. Normalizasyon Normalizasyon adımları bir tur tekrarlanınca, tabloların yeni yapısı:

  19. Normalizasyon İkinci tur sonunda tabloların yapısı (2. Normal form = 2NF)

  20. Normalizasyon Üçüncü tur sonunda tabloların yapısı (3. Normal form = 3NF) Birincil anahtar (PK)

  21. Tablo tasarımı • Birincil anahtar (PrimaryKey): • Bir tabloda ki satırları birbirinden ayırmak için kullanılan alan veya alanlardır. • Bu değer satırlarda tekrar etmez • Yabancı anahtar (Foreignkey): • Bir tabloda birincil anahtar olan değer, ilişkili diğer bir tabloda yabancı anahtar olarak tanımlanır • Tablolar arası mantıksal ilişki kurmaya yarar • Böylece veri tekrarı engellenir

  22. Veritabanı Yönetim Sistemleri • Tüm bu anlatılanları herhangi bir VTYS yazılımında kullanabiliriz • Çünkü tüm VTYS yazılımları bu standartları desteklemektedir • Bazı sık kullanılan VTYS • Microsoft SQL Server • Oracle • MySQL • PostgreSQL • Informix • Firebird • …

  23. VTYS • Gelecek derste • Microsoft SQL Server ile devam edeceğiz…

More Related