1-veritabanı yönetim sistemleri...
TRANSCRIPT
1-Veritabanı Yönetim Sistemleri
/Tanım
Öğr. Gör. Saliha Kevser KAVUNCU
Sungurlu MYO/VTYS-I
özet
VERİTABANI
NEDİR?
İYİ BİR
VERİTABANININ
ÖZELLİKLERİ
VERİTABANININ
AVANTAJLARI
VERİ TABANI
TİPLERİ
VERİTABANI
ÇEŞİTLERİ
HANGİ
VERİTABANINI
KULLANMALIYIZ?
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
VERİTABANI NEDİR?
Veritabanı düzenli bilgiler topluluğudur.
Veritabanı basit olarak bilgi depolayan bir yazılımdır.
Veri tabanı, en geniş anlamıyla; birbiriyle ilişkili verilerin
tekrara yer vermeden, çok amaçlı kullanımına olanak sağlayacak
şekilde depolanması olarak tanımlanabilir.
En az bir tablodan oluşmak zorundadır.
Veritabanı programını oluşturan tablolar veri alanlarından oluşur
(data field).
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
İYİ BİR VERİTABANININ
ÖZELLİKLERİ
Veriler hızlı ve kolay girilebilmeli
Güvenli bir şekilde saklanmalı
İstenildiği şekilde ve kolay sorgulanmalı
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
VERİTABANIN AVANTAJLARI
“Veri Tekrarı” engellenir: Aynı veri farklı dosyalarda tekrar tekrar
yer almaz.Bu verinin daha az yer kaplamasını sağlar.
“Çoklu Güncelleme” yapılabilir: Birden fazla dosyada tekrarlanan
verinin herhangi birini değiştirdiğimizde diğer dosyalardaki veri de
aynı anda değişir.
“Gereksiz Bellek Kullanımı” engellenir: Aynı veriler defalarca
tekrarlanmadığı için bilgisayar belleğinde gereksiz yer işgal etmez.
“Erişim Dili” standarttır: Veritabanına erişim dili uygulanmadan
uygulamaya değişmez.Standart bir dil kullanımı vardır.
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Veritabanının Avantajları
Herhangi bir evrak saklamaya gerek yoktur.
Bilgiler istenildiği zaman görülebilir.
Bilgilerin kontrolleri tek bir noktadan yapılabilir. Verilerin
merkezi kontrolü sağlanır.
Verinin paylaşımı sağlanır.
Genel veya özel raporlar alınabilir.
Verilerin tutarlı olmasını sağlar (Veri Bütünlüğü = Data
Integrity). Aynı andaki erişimlerde tutarsızlıkların ortaya
çıkmasını önler.
Verilerin güvenliğini sağlar (Kullanıcıların her alana
erişememesi iyi bir özelliktir. Bunun için çeşitli yetkiler
atanır ve verilerle birlikte bu yetkiler de saklanır).
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
VeritabanI Yönetim Sistemİ –
Database Management System (DBMS)
Bir veri tabanını oluşturmak, saklamak, çoğaltmak, güncellemek ve
yönetmek için kullanılan programlara Veri Tabanı Yönetim Sistemi (DBMS)
adı verilir.
İlişkisel Veritabanı Yönetim Sistemleri (Relational Database Management
Systems - RDBMS) büyük miktarlardaki verilerin güvenli bir şekilde
tutulabildiği, bilgilere hızlı erişim imkanlarının sağlandığı, bilgilerin
bütünlük içerisinde tutulabildiği ve birden fazla kullanıcıya aynı anda
bilgiye erişim imkanının sağlandığı programlardır.
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Veritabanı Tipleri
Hiyerarşik Veritabanı
İlişkisel Veritabanı (Relational Type)
Nesnesel Veritabanı
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
HİYERARŞİK VERİTABANI
Bu veritabanı tipi, ana bilgisayar ortamlarında çalışan
yazılımlar tarafından kullanılmaktadır
Hiyerarşik veri tabanları, bilgileri bir ağaç (tree)
yapısında saklar. Kök (Root) olarak bir kayıt ve bu köke
bağlı dal (Branch) kayıtlar bu tip veritabanının yapısını
oluşturur. Aşağıda böyle bir veri tabanının yapısı
gösterilmektedir.
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
İlişkisel VeritabanI
Birden fazla tablodan oluşabilir.
Birbirlerinin yerine kullanılabilir.
Tablolar satır ve sütundan oluşur.
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Veritabani Çeşitleri
1 MySQL
2 IBM DB2
3 Paradox
4 Interbase
5 Microsoft Access
6 Informix
7 Progress
8 Microsoft SQL Server
9 PostgreSQL
10 Oracle
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Paradox Paradox gerçek bir SQL veritabanı değildir, dosyalardan
oluşur.
Veritabanı yönetim sistemi yoktur, tablolara ulaşmak zordur.
Paradox tek kullanıcılı programlarda pek fazla problem
çıkarmazken, ağ ortamında eğer dikkatli kullanılmazsa sorun
çıkarabilmektedir.
Tek kullanıcılı yazılımlar içindir.
Paradox tablosuna yazdığınız veriler anında dosyaya
kaydedilmez.
Paradox'ta silinen kayıtlar geri kurtarılamaz. Silinen
kayıtların üzerine boş bilgiler yazılıp yeni bir kayıt için
ayrılmaktadır.
İyi bir yedekleme sistemi kurulmalıdır, dosya bozulursa
kurtarılamayabilir.
Bir Paradox tablosunda en fazla 255 alan (field) olabilir.
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
MS Access
Microsoft Office ürünüdür.
Küçük ölçekli uygulamalar içindir.
Tablo başına 2 GB a kadar veri depolayabilir.
Aynı anda 255 bağlantıya izin verebilir.
MS Windows dışındaki sistemlerde kullanılamaz.
“Transaction logging” özelliğine sahiptir, ancak
“trigger” ve “stored procedure” özelliklerine
sahip değildir.
JET veritabanı motoru üzerinde grafik
arabirimle çalışan bir veritabanı yönetim
sistemidir.
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Access
Avantajları
1. JET veritabanı: Access tarafından kullanılan
JET (Joint Engine Technology, Birleşik Motor
Teknolojisi) sayesinde bir çok ortamla etkileşim
haline geçebilir ve birden fazla kullanıcı
veritabanında işlem yapabilir.
2. Raporlama sistemleri oldukça gelişmiştir.
3. Sihirbaz desteği kullanım kolaylığı sağlar.,
4. Veritabanı SQL e kısa sürede çevrilir.
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Access Dezavantajları 1. Office içinde bulunur ve ücretlidir.
2. Büyük ölçekli çözümler için uygun değildir.
3. Farklı paylaşım yöntemleri olsa da aslında tek
kullanıcılıdır.
4. Access dosyaları yerel bir bilgisayar içinde saklanır,
şifreleme yapılmazsa dosyalar başkaları tarafından
kolayca kopyalanabilir.
5. Veriler veritabanından silinmez, işaretlenir, boyut sürekli
artar.
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
MySQL
“Trigger” ve “stored procedure” özelliklerine sahiptir, ancak
“Transaction logging” özelliği bulunmamaktadır.
Tablo başına 4 TB veri depolayabilir.
Açık kaynak kodlu olmasından dolayı geniş kullanıcı kitleleri
tarafından tercih edilir.
Oldukça hızlı ve kararlı bir yapısı vardır, ancak çalıştığı
sunucuda işlem yüküyle ters orantılı bir hıza sahiptir.
Platform Bağımsızdır (Herhangi bir platform sınırlaması yoktur;
Windows, MacOS, Linux ve pek çok unix türeviyle sorunsuz
çalışır).
50 milyon sütun ve üstüne destek veren MySQL varsayılan
tablo boyutu olarak 4GB limite sahiptir
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
IBM DB2
Access ve MySQL e göre daha performanslı,
ancak küçük işletmelere göre daha yüksek
maliyete sahiptir.
Unix ve Windows üzerinde çalışabilir.
Transaction logging”, “trigger” ve “stored
procedure” özelliklerine sahiptir.
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
MS SQL Server
Kullanım kolaylığı, güvenilirlik ve işlem gücüne sahiptir.
Tablo başına 4 TB veri.
“Transaction logging”, “trigger” ve “stored procedure” özelliklerine sahiptir.
Dezavantajları: Sadece Windows üzerinde çalışabilir.
Yüksek maliyet
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Oracle
Dünyanın en güçlü ve güvenilir veritabanı
olarak gösterilmektedir.
Windows, Unix, Linux, ...
Oracle, sınırsız sayıda tabloları
desteklemektedir.
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Oracle
Avantajları 1. Büyük şirketler için en iyi çözüm.
2. Performans: Oracle10g ile beraber neredeyse en iyi çözüm.
3. Bakım durumlarında bile kapatılmıyor.
4. Şifreleme: Şifreleme doğrudan veritabanı seviyesinde yapılıyor bu da hızı artırıyor.
5. Yedekleme ve Geri Yükleme: Yedekleme işlemini kendi içinde yapabiliyor ve istenilen bir tarihe veritabanını otomatik olarak geri döndürebiliyor.
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Oracle
Dezavantajları
1. Deneyimli Yönetici ihtiyacı (Oracle
konusunda deneyimli olmayan ve yüksek
sistem bilgisine sahip olmayan bir yönetici
sistemi yönetemez).
2. Yüksek maliyetlidir.
3. Açıklar: yanlış ayar yapılırsa ciddi güvenlik
açıkları olabilir.
4. “Windows ile kullanıldığında ciddi güvenlik
açıkları olabilir” gibi kötü bir üne sahiptir.
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Informix
Ücretli ve güçlü bir veritabanıdır.
Orta ölçekli işletmelerin yükünü kaldırabilecek
kapasitededir.
1994’deki Postgres kodundan geliştirilmeye
başlanmıştır
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
PostgreSQL
Berkeley Üniversitesi Bilgisayar Bilimi Bölümü tarafından geliştirilen,
nesne ilişkili veritabanı sistemidir.
Lisans Kolaylığı vardır .
Veritabanı Kullanıcıları tarafından en güvenilir ve kararlı veritabanı
olarak kabul edilir.
Açık kaynak kodlu ve gelişime açıktır.
Tablo başına 64 TB veri tutabilme özelliği vardır.
“Transaction”, “Inheritance” “trigger” ve “stored procedure”
özelliklerine sahiptir.
Büyük ölçekli çözümler için idealdir.
Ancak, hakkında düzenli bilgiye ulaşmak zordur ve bazı hosting
firmaları tarafından desteklenmemektedir.
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Desktop Database – Server Database
Desktop Database :
Microsoft Access
FoxPro
FileMaker Pro
Paradox
Server Database:
Oracle
Informix
MS-SQLServer
Sybase
DB2
MySQL
Postgresql
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Desktop Database - AvantajlarI
Pahali değildirler
Kullanıcı dostudur (user-friendly).
Web çözümlerini destekler.
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Desktop Database’ler genelde bir kullanıcı desteklerler.
Genelde desktop databaseler aynı anda sadece bir kişinin
veritabanını değiştirmesine izin verirler. Çok kullanicili bir
ortamda desktop veritabanı kullanmak çok kötü sonuçlar
doğurabilir. Veritabanını aynı anda birden fazla kişi
kullanacaksa „Server Database“ kullanılmasi tercih
edilmelidir.
Desktop Database’lerin güvenliği zayıftır. Çogu desktop
veritabanı basit bir şifre mekanizmasına sahiptir.
Dekstop database'ler internet için tasarlanmamıştır. Eğer basit
olarak datanızı internete açmak istiyorsanız bir desktop
Database’i yeterli gelebilir. Fakat, internet kullanıcılarının
datayı değiştirebildiği ve yeni datanın girebildiği interaktif bir
sistem oluşturmak istiyorsanız server tabanlı bir veritabanı
kullanmanız gerekmektedir.
Desktop Database - Dezavantajları
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Server Database Avantajları Esneklik. Database merkezli özel uygulamalarin hızlı
gelişimini sağlayan programci-dostu uygulama programcı arabirimleri (Application Programmer Interface, yani API) olduğundan programcılar tarafından tercih edilirler. Hatta Oracle, Informix, Sybase, DB2 gibi veritabanları, farklı platformları (Isletim Sistemleri) desteklemektedir.
Güçlü performans. Server tabanlı veritabanlı istenilen ölçüde güçlü olabilirler, çok uygun donanımlarda çok verimli bir şekilde çalişabilirler. Modern veritabanları birden fazla yüksek hızlı işlemcilerle, yüksek bant genişliğine sahip ağlarla ve hata toleranslı depolama teknolojisiyle (fault tolerant storage technology )çalisabilirler.
Ölçeklenebilirlik (Scalability). İstenilen şekilde gerekli donanımları artırarak kullanıcı sayısı veya disk alanı genişletilebilir.
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Dezavantajları
Özel bilgi/eğitim gereklidir.
Pahalıdır.
Son kullanıcılar için zordur.
Server Database
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
Hangi Veritabanı KullanılmalI?
Çok küçük veri depolama ihtiyacında: Paradox
Eğer bir web sitesinde veri miktarı ve aynı anda
yapılan işlem sayıları az, küçük yoğunlukta trafik
varsa; basit web uygulamaları için : Access,
MySQL
Daha büyük ve orta ölçekli uygulamalar için:
Progress, MS SQL, ya da Linux üzerinde
PostgreSQL .
Oracle ise çok yüksek güvenlik ve işlem gücü
gerektiğinde tercih edilen bir veritabanı yönetim
sistemidir.
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
ACCESS VT BağlantIsI
Oluşturma
VT adı: Ornek
Tablo Adı: KAYITLAR
Alanlar:
KayitID : primary key (birincil anahtar), otomatik artar.
Adi
Soyadi
Adres
Sehir
Telefon
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I
NELER ÖĞRENDİK?
VERİTABANI
NEDİR?
İYİ BİR
VERİTABANINI
N
ÖZELLİKLERİ
VERİTABANINI
N
AVANTAJLARI
VERİ TABANI
TİPLERİ
VERİTABANI
ÇEŞİTLERİ
HANGİ
VERİTABANINI
KULLANMALIYI
Z?
Sungurlu MYO- Veritabanı Yönetim Sistemleri-I