Veritabanı Nedir? Ne İşe Yarar ve Nasıl Çalışır?
Veritabanı, verilerin düzenli biçimde saklandığı, yönetildiği ve gerektiğinde erişildiği yapıdır. Kütüphane, banka, alışveriş ve uçuş rezervasyonu gibi pek çok sistem veritabanlarından yararlanır. Veritabanı yönetim sistemi ise bu verilerle çalışmayı sağlayan yazılımdır.
Bu yazıda (5)
Bir uygulamanın kullanıcı bilgilerini, ürünleri, siparişleri veya kitap kayıtlarını düzenli biçimde saklaması gerekir. Veritabanı, bu bilgilerin kaybolmadan tutulmasına, güncellenmesine ve ihtiyaç olduğunda bulunmasına yardımcı olan temel yapıdır.
Veritabanının tanımı ve temel amacı
Veritabanı, birbiriyle ilişkili verilerin belirli bir düzen içinde toplandığı ve saklandığı veri deposudur. Amaç yalnızca bilgileri bir yerde biriktirmek değildir; verileri uygulamaların ve kullanıcıların ihtiyaç duyduğu anda bulabilmesini, güncelleyebilmesini ve yönetebilmesini sağlamaktır. Küçük veritabanları bir dosya sistemi üzerinde tutulabilirken daha büyük yapılar birden fazla bilgisayar ya da bulut ortamında barındırılabilir.
Bir veritabanıyla çalışırken kullanıcı genellikle depolama alanındaki fiziksel konumla doğrudan ilgilenmez. İstek, veritabanı yönetim sistemi adı verilen yazılım aracılığıyla veritabanına iletilir. Bu yazılım verilerin nasıl düzenlendiğini dikkate alarak istenen bilgiyi bulur, yeni bilgiyi uygun yere kaydeder veya mevcut bilgiyi değiştirir. Böylece uygulamanın her kaydı tek tek ve dağınık dosyalar arasında araması gerekmez.
Örneğin bir kütüphane uygulamasında kitap adı, yazar, ödünç alma durumu ve üye bilgileri veritabanında tutulabilir. Bir görevli belirli bir kitabı aradığında sistem, kayıtların tamamını elle incelemek yerine ilgili bilgiyi veritabanından getirir. Kitap ödünç verildiğinde durum güncellenir; iade edildiğinde aynı kayıt yeniden değiştirilir. Veritabanı bu bilgilerin düzenli kalmasını ve farklı işlemlerde yeniden kullanılmasını mümkün kılar. SQL ve veritabanı sorgularının ayrıntıları ise bu temel tanımın ötesinde ayrı bir konudur.
Veritabanlarının kullanım alanları
Veritabanları, bilgilerin düzenli olarak toplanması ve yazılımlar tarafından tekrar tekrar kullanılması gereken birçok alanda yer alır. Kurumlar yönetim bilgilerini, müşteri ve tedarikçi kayıtlarını, mühendislik verilerini veya ekonomik modelleri saklamak için veritabanı kullanabilir. Günlük hayatta bunun karşılığı kütüphane otomasyonu, uçuş rezervasyonu, banka işlemleri, parça envanteri ve internet sitelerinin içerik yönetimi gibi sistemlerdir.
Bir uçuş rezervasyon sisteminde seferler, koltuklar ve yolcu bilgileri birlikte yönetilir. Bir envanter uygulamasında ürünlerin mevcut miktarı ve ilgili kayıtlar tutulur. Bir internet sitesinde ise sayfalar ve içerikleri veritabanında saklanarak ziyaretçilere gösterilebilir. Bu örneklerin ortak noktası, verinin yalnızca saklanması değil, uygulamanın işlemlerini destekleyecek şekilde erişilebilir ve yönetilebilir olmasıdır.
Verilerin düzenli biçimde saklanması ve erişilmesi
Veritabanı, verilerin gelişigüzel dosyalara dağıtılması yerine bir yapı ve anlam bütünlüğü içinde tutulmasını sağlar. Saklanan şey yalnızca ham değerler değildir; verinin yapısı, bu verinin ne anlama geldiğini açıklayan bilgiler ve veriye erişmeye yardımcı olan iç düzenler de bulunabilir. Bu üç unsurun birlikte korunması, kayıtların daha sonra doğru biçimde kullanılabilmesi için önemlidir.
Veritabanı yönetim sistemi, verilerin fiziksel olarak bellekte veya kalıcı depolamada bulunmasına rağmen kullanıcıya daha anlaşılır bir erişim sağlar. Veritabanındaki iç düzenler ve dizin benzeri erişim yolları, aranan kayda ulaşmayı kolaylaştırmak için kullanılabilir. Örneğin bir mağazanın ürün veritabanında yalnızca ürün adları değil, fiyat, stok miktarı ve ürün kimliği gibi alanlar da düzenli biçimde tutulur. Kullanıcı belirli bir ürünü istediğinde sistem, bu düzeni kullanarak ilgili kaydı getirir; uygulamanın bütün dosyaları baştan sona kendi başına incelemesi gerekmez.
Veri ekleme, değiştirme, silme ve sorgulama; veritabanlarında gerçekleştirilen temel işlemlerdir. Bu işlemler sayesinde yeni kayıt oluşturulur, mevcut bilgi güncellenir, gereksiz kayıt kaldırılır veya belirli ölçütlere uyan kayıtlar bulunur. Veri bütünlüğü ve tutarlılığı da kayıtların geçerli, birbiriyle uyumlu ve güvenilir kalmasına yardımcı olan temel ilkeleri ifade eder.
Veritabanı ile veritabanı yönetim sistemi arasındaki fark
Veritabanı, saklanan verilerin kendisi ve bu verilerin oluşturduğu düzenli yapıdır. Veritabanı yönetim sistemi (VTYS veya DBMS) ise kullanıcıların ve uygulamaların bu veritabanıyla etkileşim kurmasını sağlayan yazılımdır. Başka bir deyişle veritabanı içerik ve yapıyı barındırırken, yönetim sistemi bu içeriğe erişme, veri ekleme, güncelleme, silme ve düzenleme işlemlerini yürütür.
Bir kütüphane örneğinde kitap kayıtları veritabanına, bu kayıtlara erişmeyi ve onları düzenlemeyi sağlayan yazılım ise veritabanı yönetim sistemine benzetilebilir: kitap bilgileri verinin kendisidir; bu bilgilere ulaşmayı ve onları yönetmeyi sağlayan mekanizma DBMS'dir. Uygulama, kullanıcıdan gelen isteği yönetim sistemine iletir. DBMS de veritabanındaki düzeni kullanarak uygun kaydı bulur veya değişikliği gerçekleştirir. Bu iki kavram birbirine çok yakın olduğu için günlük kullanımda “veritabanı” sözcüğü bazen yönetim yazılımını ya da veritabanını kullanan uygulamayı da anlatacak biçimde kullanılabilir.
Veritabanı yönetim sistemlerinin kurulumu ve kullanımı, bu temel ayrımdan sonra ele alınan ayrı bir konudur. İşlemler, eşzamanlılık ve veritabanı güvenliği de burada ayrıntılandırılmayan yönetim başlıklarıdır.
İlişkisel veritabanının temel yapısı
İlişkisel veritabanı, verileri tablolar halinde düzenleyen yaygın bir veritabanı modelidir. Tablo, belirli bir varlık ya da kayıt türüyle ilgili bilgileri bir arada tutar. Sütunlar, her kaydın hangi özelliğini gösterdiğini belirtir; örneğin bir öğrenci tablosunda ad, sınıf ve öğrenci numarası sütunları bulunabilir. Satırlar ise bu özelliklere ait tek tek kayıtları temsil eder. Bu nedenle “satır” ve “kayıt” çoğu temel kullanımda aynı veri birimini anlatır.
Tablolar arasında bağlantı kurmak için genellikle her kaydı ayırt eden bir kimlik kullanılır. Örneğin öğrenci numarası, aynı ada sahip öğrencileri birbirinden ayırabilir. Başka bir tabloda bu numaraya yer verilmesi, öğrencinin ders veya sınav kayıtlarıyla ilişki kurulmasını sağlar. Böylece bütün bilgileri tek ve karmaşık bir tabloda toplamak yerine, farklı tablolar arasında anlamlı bağlantılar kurulabilir. Bir uygulama ihtiyaç duyduğu bilgiyi bu ilişkiler üzerinden bir araya getirir; veritabanı yönetim sistemi de uygun erişim yolunu belirler.
İlişkisel veritabanlarında tablolar, satırlar ve sütunlar temel görünümü oluşturur; kullanılan sorgu dili bu yapı üzerinde veri istemeye yarar. Veritabanı tasarımı ve normalizasyon, tabloların nasıl planlanacağına ilişkin daha ileri bir konudur. İlişkisel modelin yanında NoSQL adıyla anılan, tablo yapısından farklı modeller kullanabilen veritabanlarına da genel olarak rastlanır.
Bir kütüphane uygulamasında kitap ve üye kayıtlarının tutulması, ödünç verilen kitabın durumunun güncellenmesi ve belirli bir kitabın aranması veritabanının günlük yazılımlardaki kullanımını gösterir. Benzer yapı uçuş rezervasyonlarında koltuk ve yolcu bilgilerinin yönetilmesinde de kullanılır.
Sık sorulan sorular
Veritabanı ile dosya arasındaki temel fark nedir?
Dosya tek başına bilgi saklayabilir; veritabanı ise verileri belirli bir yapı içinde düzenler ve uygulamaların bu verilere yönetilebilir biçimde erişmesini sağlar.
Veritabanı yönetim sistemi ne yapar?
Veritabanındaki verilerin eklenmesini, saklanmasını, güncellenmesini, silinmesini ve gerektiğinde bulunmasını sağlayan yazılımdır.
İlişkisel veritabanında satır ve sütun neyi ifade eder?
Sütunlar kayıtların özelliklerini, satırlar ise bu özelliklere ait tek tek kayıtları gösterir.
Veritabanları hangi alanlarda kullanılır?
Kütüphane, banka, uçuş rezervasyonu, envanter, internet sitesi ve kurum yönetimi gibi düzenli veri gerektiren birçok alanda kullanılır.
- •Wikipedia (EN) — Database — Database / girisen.wikipedia.org