KONUMSAL VERİTABANI I Dersi VERiTABANI KURAMI soru cevapları:

Toplam 27 Soru & Cevap
PAYLAŞ:

#1

SORU:

Veritabanı kavramını açıklayınız.


CEVAP:

Bilgi elde etmek için kullanılan, amaca uygun olarak düzenlenmiş, sistematik erişim olanağı bulunan, yönetilebilir, güncellenebilir, taşınabilir, birbirleri arasında tanımlı ilişkiler olan düzenli veriler topluluğuna veritabanı denir.


#2

SORU:

Veritabanı kuramı ne demektir? Açıklayınız.


CEVAP:

Veritabanı kuramı; Veritabanları ve veritabanı yönetim sistemlerine ilişkin araştırma ve çalışmalar bütününün genel adıdır. Veritabanı kuramının odak noktası sorgu dillerinin karmaşıklığını ve ifade gücünü ölçmek, bu dillerin mantıkla ilişkisini ortaya koymaktır.


#3

SORU:

Veritabanı yönetim sistemini açıklayınız.


CEVAP:

Veritabanlarını oluşturmak, verilere erişim izni olan kullanıcıları tanımlamak, işletmek, güncellemek ve veritabanı elemanları ile ilgili her türlü yönetsel gereksinimleri karşılamak için tasarlanmış sistemlerin genel adına veritabanı yönetim sistemi denir.


#4

SORU:

Bilinen veritabanı modelleri nelerdir?


CEVAP:

VTYS yazılımları desteklemiş oldukları veritabanı modellerine göre veritabanı oluşturmaktadır. Bilinen veritabanı modelleri hiyerarşik, ağ, ilişkisel ve nesne tabanlı veritabanı modelleridir. Günümüzde yaygın olarak kullanılan veritabanı modeli ilişkisel veritabanı modelidir ve bu model birçok VTYS yazılımı tarafından desteklenmektedir.


#5

SORU:

Veritabanları temel olarak hangi amaçlarla kullanılır ve bu doğrultuda veritabanı yönetim sistemleri (VTYS)'nin rolü nedir?


CEVAP:

Veritabanları temelde iki amaç için kullanılır. Veriyi depolamak ve en kısa sürede erişmek. Bu amaçlar doğrultusunda veritabanlarının optimize edilmesi, sağlıklı işletilmesi ve etkin bir şekilde yönetilmesi gerekir. İşte bu noktada devreye VTYS girer. VTYS ilkelerine göre, veritabanına aktarılmadan önce veri düzenlenerek en az yer tutacak şekilde depolanır. Veri tekrarını engellemek ve veritabanını buna göre tasarlamak, veriye erişim hızı ve depolama alanı açısından önemlidir.


#6

SORU:

Veritabanı Yönetim Sistemlerinin Genel Özellikleri nelerdir?


CEVAP:

Veritabanlarının etkin ve verimli bir şekilde işletilmesini ve yönetilmesini sağlamak için hemen hemen tüm VTYS yazılım çözümlerinde bulunan genel özellikler;

  • Veritabanını oluşturmak ve tasarlamak,
  • Veritabanı tablolarını oluşturmak,
  • Tablolar arası ilişkileri kurmak,
  • Veritabanı kullanıcılarını tanımlamak,
  • Kullanıcıların erişim yetkilerini belirlemek,
  • Kayıt eklemek, silmek ve güncelleştirmek,
  • Veritabanı üzerinde sorgulama yapmak,
  • Veritabanı bakımını yapmak,
  • Veritabanını yedeklemek,
  • Veritabanını gereksinimlere göre geliştirmek ve değiştirmek olarak özetlenebilir.

#7

SORU:

Veritabanı yönetim sistemlerinin avantajları nelerdir?


CEVAP:

Veritabanı kuramı, dosya sistemlerinin depolanan verilerin artması ile gereksinimleri karşılayamaması ve veriye ulaşmanın zorlaşması sonucu ortaya atılmış bir kavramdır. Veritabanı yaklaşımında birden fazla kullanıcıya erişim izni verilmesi ve veritabanının tek merkezden yönetilmesi VTYS’nin en önemli avantajı olmuştur. Merkezi yönetim yapısı VTYS yazılımlarına pek çok avantajı beraberinde getirmiş olup, bu avantajlar;

  • Veri tekrarının önlenmesi (data redundancy),
  • Veri tutarlılığı (data consistency),
  • Eşzamanlılık kontrolü ve kilitleme (concurrency control and locking),
  • Veri bütünlüğü (data integrity),
  • Uygulama geliştirme kolaylığı,
  • Veri güvenliği (data security),
  • Kullanıcı arayüzleri,
  • Yedekleme ve kurtarma,
  • Uygulama-veri bağımsızlığı (data independence),
  • Veri soyutlama olarak sıralanabilir.

#8

SORU:

Veritabanında veri tekrarı nedir ve nasıl ortaya çıkabilmektedir?


CEVAP:

Veri tekrarı, yanlış veritabanı tasarımından dolayı farklı tablolarda aynı verinin bulunması nedeni ile oluşabilir. Veri tekrarı, birden fazla kullanıcının veri girişine olanak sağlanan sistemlerde, farklı kullanıcıların aynı kaydı (veriyi) aynı tabloda yinelemesi sonucunda da oluşabilir. 


#9

SORU:

Veritabanında veri tekrarının önlenmesinde VTYS'nin rolü nedir?


CEVAP:

VTYS veritabanındaki tüm verileri merkezi bir yönetim altında tutarak, farklı kullanıcılar tarafından yinelenen kayıtların girilmesini engeller. Veri tekrarının önlenmesi depolama alanın verimli kullanılmasını sağlamanın yanı sıra sorgulama sürecini de hızlandırır.


#10

SORU:

VTYS (Veritabanı yönetim sistemleri) veri tutarlılığı için ne gibi avantajlar sağlamaktadır? Açıklayınız.


CEVAP:

Verilerin merkezi bir yönetim altında tutulması aynı zamanda veri tutarlılığını da sağlar. Böylece veriler üzerinde yapılan ekleme, güncelleştirme ve silme işlemleri diğer kullanıcılar tarafından da izlenebilir. Bu sayede farklı kullanıcıların aynı veri kaydı üzerinde birbirinden habersiz işlemler yapması engellenmiş olur. Eğer birden fazla tabloda aynı veriler tekrarlansaydı, yani doğru tasarlanmamış veritabanı üzerinde veri tekrar edilmiş olsaydı, farklı tablolarda farklı kullanıcılar aynı veriyi farklı değerlerle güncelleyebilirlerdi. Bu durum veri tutarsızlığına neden olurdu. Örneğin internet üzerinden ayakkabı satışı yapan bir sitede 42 numara bir ayakkabı modelinin siyah renginden stokta yalnızca bir adet kalmış olsun. Aynı anda iki müşterinin aynı ayakkabıyı beğenerek satın alması durumunda hem müşteriler hem de satıcı mağdur olacaktır. Bu durumda VTYS’nin veri tutarlılığı avantajı müşterileri korumanın yanı sıra, satıcının stok ve envanter kayıtlarını da koruyacaktır. 


#11

SORU:

VTYS (veritabanı yönetim sistemleri)’de veri tutarlılığı hangi özellikler sayesinde sağlanır?


CEVAP:

VTYS’de veri tutarlılığı kısa adı ACID olan özellikler sayesinde sağlanır. ACID;
• Bölünmezlik (Atomicity),
• Tutarlılık (Consistency),
• Yalıtım (Isolation),
• Devamlılık (Durability)
sözcüklerinin İngilizce karşılıklarının baş harflerinden oluşan bir kısaltmadır.


#12

SORU:

VTYS’de veri tutarlılığı özelliklerinden bölünmezlik özelliğini açıklayınız.


CEVAP:

Bölünmezlik özelliği “ya hep ya hiç” özlü sözü ile açıklanabilir. VTYS denetimi ile veritabanında gerçekleştirilen bir güncelleme, işlem sonuçlanıncaya kadar tabloya kaydedilmez. Tablo kayıtlarından biri üzerinde yapılacak güncelleştirme işlemi bazı veri alanlarında yapılıp, güncelleşme tamamlanmadan kullanıcının sistem ile ağ bağlantısı koptuysa değişikliğin bir kısmı tabloya işlenmez. Güncellemenin kaydedilebilmesi için işlemin sonlandırılmış olması gerekir. Başka bir anlatımla işlem bölünemez, güncellemenin gerçekleşebilmesi için işlem bitirilmelidir.


#13

SORU:

VTYS’de veri tutarlılığı özelliklerinden yalıtım özelliğini açıklayınız.


CEVAP:

Yalıtım özelliği, herhangi bir veri kaydı üzerinde, farklı iki kullanıcı tarafından aynı anda işlem yapılmak istendiğinde kullanılır. Bir kayıt üzerinde bir kullanıcı tarafından başlatılmış güncelleme işlemi tamamlanmadan başka bir kullanıcı işleme başlarsa veri kayıtlarında tutarsızlık oluşur. Örnek olarak Ali elektrik ve doğalgaz ödemeleri için bankaya otomatik ödeme talimatı vermiş olsun. Ali’nin bankada 500 TL parası var. Ali’nin hesabından aynı anda, 350 TL doğalgaz şirketinin, 350 TL de elektrik şirketinin ödeme talep ettiğini varsayalım. İşlem aynı anda başladığı için her iki ödeme emri de Ali’nin hesabında 500 TL olduğunu görecek ve para transferini gerçekleştirecektir. Bu durumda, Ali toplamda 700 TL ödemesi gerekirken işlemin aynı anda gerçekleşmesinden dolayı 350 TL ödeyecektir. Bu hatanın önlenmesi için yalıtım özelliği ile işlemler sıraya koyulur. Bir işlem tamamlanıncaya kadar veri kaydı izole edilir. İlk işlem tamamlandıktan sonra ikinci işlemin yapılmasına izin verilir.


#14

SORU:

VTYS’de veri tutarlılığı özelliklerinden devamlılık özelliğini açıklayınız.


CEVAP:

Devamlılık özelliği, güncelleme işlemi tamamlandıktan ve onaylandıktan sonra, güncellemenin kalıcı olması esasına dayanır. İşlem tamamlanıp onaylandıktan sonra, veri kaydı son işlemin değerini alır. Onaydan sonra sistemde bir aksaklık nedeni ile veritabanına erişim durdurulmuş olsa bile, sistemin tekrar başlatılması esnasında onaylanmış güncelleme işlemleri veriye işlenerek başlatılır. Bu durum veritabanının güvenirliliğini ve devamlılığını sağlar. Verilerde tutarsızlık oluşmasına izin verilmez.


#15

SORU:

Veritabanı yönetim sistemlerinde eşzamanlılık ve kilitleme mekanizması nasıl işlemektedir?


CEVAP:

Eşzamanlılık kontrol ve kilitleme mekanizması, çok kullanıcılı ortamlarda veri erişimi sağlandığında VTYS tarafından kullanılmaktadır. Bölünmezlik, tutarlılık ve yalıtım eşzamanlılık kontrolü ve kilitleme ile sağlanmaktadır. VTYS’nin bu özelliği sayesinde aynı veriye birden fazla kişinin erişerek okuduğu bir yapıda, yalızca bir kullanıcı veride güncelleme yapabilir. Kilitleme verilerin doğru sırada işlenmesini sağlar ve veri tutarlılığını korur. VTYS eşzamanlılık kontrolü ve kilitleme özelliği ile veri bütünlüğü ve tutarlılığı bozulmadan çok sayıda erişime eşzamanlı olarak izin verir.


#16

SORU:

Veritabanı yönetim sistemlerinde veri bütünlüğü ne demektir?


CEVAP:

Veri bütünlüğü veri doğruluğu, tutarlılığı ve veritabanı genelindeki bütünlüğü ifade eder. Veri kaydının iki güncelleme arasında değişiklik göstermemesi durumu olarak tanımlanmaktadır. Veri bütünlüğü genellikle veritabanı tasarımı aşamasında standart süreçler ve kurallar ile uygulanmaktadır.


#17

SORU:

VTYS'de veri güvenliği hakkında bilgi veriniz.


CEVAP:

VTYS, veri güvenliğini sağlamak için veritabanına erişebilecek kullanıcıların tanımlanması ve yetkilendirilmesi için çeşitli güvenlik fonksiyonlarına sahiptir. Yetkilendirme işlemi veritabanı yöneticisi tarafından kullanıcıların belirlenmesi ve tanımlanması, kullanıcılara okuma, yeni kayıt ekleme, kayıt silme, kayıt güncelleme vb. yetkilerin atanması şeklinde yapılır. Kullanıcı yetkileri her kullanıcıya ayrı yetki ataması şeklinde yapılabileceği gibi, gruplar oluşturularak grup yetkileri tanımlama ve kullanıcıların grup üyeliklerine atanması yöntemi ile de oluşturulabilir. Örneğin veritabanı yöneticisi grubu, yeni kayıt ekleme grubu, okuma amaçlı erişim grubu vb. çeşitli görevler için gruplar oluşturularak, grup yetkileri belirlenir ve VTYS kullanıcısı herhangi bir gruba üye olarak tanımlandığında o grubun yetkilerini almış olur. VTYS ayrıca işletim sistemi (Windows, Unix, Mac OSX vb.) kullanıcılarını veritabanı kullanıcısı olarak tanımlama özelliğine sahiptir.


#18

SORU:

Veritabanı kontrol modülü ne gibi hizmetler sağlar?


CEVAP:

Veritabanı kontrol modülü VTYS’nin en önemli bileşenlerinden biridir. Veritabanı kontrol modülü genel olarak;
• Veritabanı yedekleme,
• Yedeklerden veritabanını yeniden yükleme,
• Dosyalama sisteminde gerçekleşen ve yavaşlık yaratan sorunları gidermek için veritabanını onarma,
• Veritabanının başka sunucular üzerine kopyasını alma, vb. hizmetleri sağlar.


#19

SORU:

VTYS’de veri bağımsızlığı kavramını açıklayınız.


CEVAP:

VTYS’de veri bağımsızlığı kavramı uygulamalardan bağımsız olarak VTYS’nin veri üzerinde her türlü değişikliği yapabilmesi olarak tanımlanır. VTYS’nin sağlamış olduğu kapıları kullanarak geliştirilen uygulamalar, veri ve veritabanı tasarımının değiştirilmesini kısıtlayamazlar. Örneğin VTYS veritabanı yöneticisi var olan bir tablonun adını ve tasarımını değiştirebilir. Bu değişiklikler yapıldığında çeşitli platformlarda veritabanına bağlı olarak çalışan yazılımlarda sorun oluşabilir. Ancak bu sorun uygulamayı geliştirenler tarafından çözümlenmelidir. Bu durum VTYS içinde geliştirilmiş kullanımı kolay grafik arayüzler için de geçerlidir. VTYS bu konuda tamamen bağımsızdır ve veritabanı yöneticisi ya da benzer yetkilere sahip kullanıcılar, veri ve veritabanı üzerinde her türlü değişikliği yapabilirler.


#20

SORU:

VTYS'de veri soyutlama kavramını açıklayınız.


CEVAP:

VTYS son kullanıcılara soyut gösterimler ile veritabanı erişimi sağlamaktadır. Veri soyutlama yeteneği, kullanıcılara veritabanı tasarımı, tablolar arası ilişkiler, tablo sayısı, kullanıcı sayısı vb. bilgilere ulaşmadan, veritabanları üzerinde yetkileri çerçevesinde işlem yapma olanağı sunar. Bu özellik sayesinde ticari bir sır olabilecek veritabanı tasarımı açıklanmadan veritabanının kullanıma açılması ve hizmet vermesi sağlanmaktadır. Uygulama Geliştirme Arayüzü ile açılan kapılar için de benzer kurallar bünyesinde VTYS veriyi soyutlayarak, geliştirilen uygulamanın yalnızca yetkiler doğrultusundaki özelliklere erişimine izin verir ve veritabanı tasarımının gizliliğini korur.


#21

SORU:

Veritabanlarının can damarı olan VTYS’nin dezavantajları da vardır. Bu dezavantajları nelerdir? Açıklayınız.


CEVAP:

Veritabanlarının can damarı olan VTYS’nin, pek çok avantajının yanı sıra bazı dezavantajları da söz konusudur. VTYS’nin dezavantajlarını;
• VTYS yapısı oldukça karmaşıktır,
• Uygun nicelik ve nitelikte donanım ve altyapı gerektirir,
• İyi eğitim almış, deneyimli, profesyonel personele ihtiyaç duyar,
• Maliyeti yüksektir olarak kısaca sıralayabiliriz


#22

SORU:

Veritabanı yönetim sistemi mimarisi kaç düzeyden oluşmaktadır? Bunlar nelerdir?


CEVAP:

VTYS mimarisinde son kullanıcılara veriler soyut gösterimlerle sunulur. Kullanıcıların veritabanı ve tablo tasarımlarına erişmeden, yalnızca veriler üzerinde işlem yapmalarını sağlayan VTYS mimarisi, en yalın yapısı ile üç düzeyden oluşur. Bunlar;
• Dış Düzey (Alt Şema),
• Kavramsal Düzey (Mantıksal Şema),
• İç Düzey (Fiziksel Şema


#23

SORU:

Yapılandırılmış sorgulama dilini açıklayarak kategorilerini belirtiniz.


CEVAP:

VTYS yazılımları veritabanı yönetimi için uygulamada küçük farklılıklar gösterseler de Yapılandırılmış Sorgulama Dili (Structured Query Language – SQL) adı verilen, veritabanları ile iletişim kurmayı sağlayan standart bir dil kullanılmaktadır. SQL kullanılarak veritabanı üzerindeki tüm yönetimsel işlevler gerçekleştirilebilmektedir. SQL komutları hizmet ettikleri işlevlere bağlı olarak kategorilere ayrılmaktadır. Bazı uzmanlar bu kategorilerin ayrı diller ya da alt diller olduğunu savunsalar da bütün SQL komutlarının temel dizilimi ve kuralları aynı olduğu için, tek bir dil altındaki işlevsel farklılık gösteren kategoriler olarak değerlendirilmesi gerekir. Bu kategoriler;
• Veri Tanımlama Dili (Data Definition Language – DDL),
• Veri Sorgulama Dili (Data Query Language – DQL),
• Veri İşleme Dili (Data Manipulation Language – DML),
• Veri Kontrol Dili (Data Control Language – DCL),
• İşlem Kontrol Komutları (Transaction Control Commands) olarak listelenebilir


#24

SORU:

Veri tanımlama dili ne amaçla kullanılmaktadır ve hangi komutlardan oluşmaktadır?


CEVAP:

Veri tanımlama dili (DDL) veritabanı oluşturmak, tablo, soyut görünüm (view), dizin gibi veritabanı bileşenlerini tasarlamak ve bu bileşenlerin yapısal özelliklerini değiştirmek için kullanılmaktadır. Veritabanında hangi tabloların bulunacağı, tabloların hangi veri alanlarından oluşacağı, bu veri alanlarındaki veri tipi, anahtar alan ve dizin seçimi gibi yapısal tanımlamalar, veri tanımlama dili (DDL) kullanılarak VTYS tarafından gerçekleştirilmektedir. Veri tanımlama dili (DDL);
• CREATE (oluştur),
• ALTER (değiştir),
• DROP (sil)
komutlarından ibaret olup, SQL’in diğer komutlarından farklılık göstermektedir. Veri tanımlama dili (DDL) komutları verinin kendisini değil, verinin depolanacağı alanları düzenlemek için kullanılmaktadır. Burada dikkat edilmesi gereken, veri tanımlama dili (DDL) komutlarının kayıt oluşturma, silme ve güncelleme gibi verinin kendisi ile ilgili komutlardan farklı olduğudur.


#25

SORU:

Veri sorgulama dili hakkında bilgi veriniz.


CEVAP:

Veri sorgulama dili (DQL) yalnızca SELECT (seç) komutundan oluşmaktadır. SELECT komutu veri üzerinde herhangi bir değişiklik yapmadığı için veri işleme komutları (DML) ile karıştırılmaması gerekir. Dikkat edilmesi gereken diğer bir nokta veri sorgulama dilinin (DQL), yapılandırılmış sorgulama dili (SQL) ile karıştırılmamasıdır. SQL, işlevlerine göre kategorize edilmiş tüm komutları içerirken, veri sorgulama dili (DQL) yalnızca veriyi seçen SELECT komutunu kapsamaktadır.


#26

SORU:

VTYS veri işleme dili (DML) hakkında bilgi veriniz.


CEVAP:

VTYS veri işleme dilini (DML) veri ekleme, güncelleme ve silme işlemlerinde kullanmaktadır.
Veri işleme dili (DML);
• INSERT (kayıt ekle),
• UPDATE (kayıt güncelleştir),
• DELETE (kayıt sil)
gibi veride düzenleme işlemleri yapan SQL komutlarını kapsayan bir kategoridir. Veri sorulama dilinin (DQL) aksine, veri işleme dili (DML) veriyi yalnızca görüntülemek için seçmez, veri üzerinde kayıt ekleme, silme ve güncelleme işlemlerini gerçekleştirir.


#27

SORU:

Veri kontrol dili hakkında bilgi veriniz.


CEVAP:

Veri kontrol dili (DCL) veritabanı yöneticisi tarafından kullanıcılara verilecek erişim yetkilerini tanımlamaktadır. Gerçekleştirdiği işlev açısından veritabanı kontrol dili ya da kullanıcı kontrol dili olarak kabul edilebilir. Veri kontrol dili (DCL) veritabanında bulunan veriler üzerinde okuma, yazma, güncelleme vb. işlemlerin yapılmasını sağlayan izinleri düzenlemektedir. Kullanıcı oluşturma (CREATE USER) komut dizini, CREATE komutu nedeniyle, bazı uzmanlar tarafından veri tanımlama dili (DDL) kapsamında kabul edilse de gerçekleştirilen işlev nedeni ile veri kontrol dili (DCL) kategorisinde yer almalıdır. Veri kontrol dilinin (DCL) başlıca komutları;
• GRANT (kullanıcı yetkilendir),
• DENY (kullanıcı engelle),
• REVOKE (kullanıcıya verilmiş yetkiyi iptal et)
olarak sıralanabilir.