Hiyerarşik Veri Modelleri Bu modelde veriler ağaç yapısına benzer bir biçimde modellenir. En üste kök ve kökün dalları bulunur. Ayrıca her dalın alt dalı sayesinde dallanma ve çeşitlilik artar. Bu modelde her bir alt dalın sadece bir tane noktadan bağlanma şartı bu modelin en büyük kısıtlamalarından biridir. Hiyerarşik veri modeli 1960 ve 1970 yılları arasında popüler olan bir modeldi Hiyerarşik veri modellerinde çoklu ilişkileri temsil edebilmek için, varlık tiplerinin her ilişki için ayrı ayrı tanımlanması gerekir. Bu da gereksiz veri tekrarına sebep olur. Hiyerarşik model, bir ağaç yapısına benzer. Model dahilindeki herhangi bir düğüm, altındaki n sayıda düğüme bağlanırken, kendisinin üstünde ancak bir düğüme bağlanabilir. Hiyerarşik yapının en tepesindeki düğüm noktasına kök denir ve bu düğümün sadece bağımlı düğümleri bulunur. Bu veri yapısını gösteren grafiğe de hiyerarşik tanım ağacı denir.
Şebeke Veri Modelleri Bu modelde , tablo ve grafik temellidir.Grafikteki düğmeler varlık tiplerine karşılık gelir ve tablolar şeklinde temsil eder.Grafik oklar , ilişkileri temsil eder ve tabloda bağlantılar olarak temsil edilir.Spesifikasyonu, 1971 yılında DBTGCODASYL tarafından belirlenmiştir.
2 ayrı veri yapılandırma aracı vardır. Bunlar Kayıt tipi ve bağlantı dır. Kayıt tipleri varlık tiplerini belirler.Bağlantılar ise ilişki tiplerini belirler.Bu yapıyı gösteren grafiğe de veri yapısı grafiği adı verilir.
Şebeke veri modeli veri modelleri içinde en genel olalarından biridir.Şebeke 1 eleman herhangi bir elemana bağlanabilir.Hiyerarşik yapılardan farklı olarak şebeke yapılarında bağlantı açısından herhangi bir sınırlama yoktur.
Ağ Veri Modeli Ağ Veri Modeli: Ağ veri modeli 1970'li yıların başında geliştirilmiştir. Bir verinin doğası gereği birden çok veri ile ilişkisinin olmasından dolayı hızlıca kabul görmüştür. Bu modelde verilerin birrine ağ şeklinde bağlandığı varsayılır. Bir veri ağında iki kullanıcının haberleşebilmesi için bir çeşit adresleme şekli gereklidir. Genelde, iki veya üç adres gerekir. Bazı sistemlerde bir fiziksel adres, bir veri bağlantı adresi ve bir ağ adresi kullanılır. Daha yaygın bir yaklaşım, yalnızca fiziksel ve ağ adreslerini kullanmaktır. Bu yaklaşımda, fiziksel ve veri bağlantı adresi aynıdır. Pratik olarak konuşursak, üst katman isimleri ve port numaraları gibi diğer adresler, iki kullanıcı arasında belirli uçtan-uca haberleşme yapılacağında gerekli olur. Ağ adresleri: Bir ağ adresi tanımlamanın kolay yolu; adresin ağı tanımlamasıdır. Ağ adresinin belirli bir parçası aynı zamanda bir bilgisayarı veya terminali betimleyebilir. Ancak, Internet standartları bir IP adresinin neyi tanımlayabileceğine dair sıkı kurallar koymuştur. Bir ağ adresi fiziksel veya veri bağlantı adreslerinden daha yüksek katmandadır. Yüksek katmandaki adresler, daha alt katmandaki adreslerle ilgilenmezler. Böylece, bir ağ veya internette bulunan ağ adresleri ile ilgilenen parçalar, veri fiziksel cihazın bağlı olduğu ağ linkine gelene kadar son varış fiziksel adresleri ile ilgilenmezler
Fiziksel adresler
Bir haberleşme linkindeki veya ağındaki her bir cihaz (bir bilgisayar veya iş istasyonu gibi) bir fiziksel adres ile tanımlanır. Bu adrese donanım adresi de denir. Birçok üretici fiziksel adresi cihazın içindeki bir lojik board'a veya cihaza doğrudan bağlanabilen bir arabirim ünitesine yerleştirir. Bir haberleşme diyalogunda iki fiziksel adres görev alır; bu adreslerden biri göndericiyi (kaynak) diğeri de alıcıyı (varış) tanımlar. Fiziksel adresin uzunluğu değişir. Çoğu sistem iki 48-bit adres kullanır, fakat başka adres büyüklükleri de kullanılmaktadır. 48-bit adres yapısı Ethernet ve IEEE protokollerinde kullanılır. Bu adrese MAC (Media Access Control) adresi denir. Katmanlı veri haberleşme modeli açısından bakarsak, fiziksel adres, fiziksel veya veri bağlantı katmanlarında kullanılır
İlişkisel Veri Modelleri Şu anda kullanılan veri tabanlarının çoğu ilişkisel veri modeline daha çok destek verirler. Bu modelde alakalı veriler tablolar içinde saklanır. Ayrıca tablolar arasında değişik türde ilişki kurulur. İlişkiler kurulurken birincil anahtar (Primary key) ve yabancı anahtarlar (Foreign Key) kullanılır. Anahtar alanlar sayesinde indeksleme (indexing) yapma olanığı sunan ilişkisel veri tabanlarında erişim ve işlemler daha hızlı yapılabilir. İlişkiler ve onların temsilleri olan tablolardan oluşan veri modelleri ilk olarak 1970 yılında Codd tarafından ortaya atılmıştır. İlişkisel veri modelleri formüle edilirken, veri yönetimi ihtiyaçlarını karşılayabilmek için ilişkinin matematiksel teorisi, mantıksal olarak genişletilmiştir.73 İlişkisel veri modellerinde kullanılan tek yapılandırma aracı ilişkidir. İlişkinin tanımı, veri tabanı ilişkilerinin zamana bağlı olması dışında, matematiksel tanımı ile aynıdır. Yani, bir veri tabanı ilişkisinde satırlar, eklenebilir, değiştirilebilir ya da düzeltilebilir. Aşağıdaki örneklerde büyük harflerle yazılan ifadeler ilişki isimlerini, parantez içindeki ifadeler de tanım kümesi isimlerini göstermektedir
Veri üzerinde yapılacak işlemler için, ilişkisel veri modellerinde üç tip dil kullanılır. Birincisi, matematikteki ilişkisel işlemlere dayanır. Bu tip dillere örnek olarak INGRES ve QUEL verilebilir.
İkinci tip dil, görüntü yönelimlidir. Boşluk doldurma yöntemiyle çalışır. Örneğin, QBE (Query By Example) ve CUPID bu tür dillerdendir.
Üçüncü tip dil, haritalandırma yönelimli dildir. Bu tip diller, bilinen bir özniteliğin ya da öznitelik kümesinin, aranan bir özniteliğin ya da öznitelik kümesinin üzerinde, bir ilişki yoluyla haritalandırılması prensibiyle çalışır. Örneğin, yapısal sorgulama dili bu tip bir veri dilidir.Aşağıdaki gördüğünüz resimde büyük harflerle yazılan ifadeler ilişki isimlerini , parantez içindeki ifadelerde tanım kümesini göstermektedir.
Yukarıda gördüğünüz satırlar basit bir hastane veri tabanının ilişkisel şemasını göstermektedir.İlişkisel şema ilişki isimlerinin ve karşılık gelen tanım kümesi isimlerinin listesidir.
Nesne Yönelimli Veri Modelleri Diğerlerinden daha sonra ortaya atılan ve karmaşık uygulamarda başarısını kanıtlamış nesne yönelimli programlamaya dayanan veri modelidir. Bu modelin öngörüsü giderek çözülmesi daha zor hale gelen programlama problemlerini çözen nesne yönelimli modelin veri modelleme de etkili olacağıdır.Nesne yönelimli sistemler, bir istatistiksel sistem içinde, esnek veri yapılarının geliştirilmesi ve istatistiksel modellerin sunumunda da kullanılmaktadır.Nesne yönelimli bir veri modelinin çekirdeğini şu unsurlar oluşturmaktadır:
· Nesne ve nesne tanımlayıcı: Nesne yönelimli sistemler ve dillerde, gerçek hayattaki her bir varlık birer nesne olarak modellenir. Her nesnenin de bir tanımlayıcısı vardır.
· Öznitelikler ve metotlar: Her nesnenin bir durumu ve bir davranışı vardır. Bir nesnenin durumu, nesnenin özniteliklerinin aldığı değerlerin kümesidir. Nesnenin davranışı ise, nesnenin durumu üzerinde işleyen metotlar (program kodları) kümesidir. Nesnenin özniteliğinin değeri de kendi başına bir nesnedir. Dahası, bir öznitelik, bir tek değer ya da bir değer kümesi olabilir. Kümedeki her bir eleman nesne olduğu halde, kümelerin kendileri nesne değildir. Nesne kapsülü içine yerleştirilmiş durum ve davranışa, sadece dışarıdan gönderilen mesajlar (veya fonksiyon çağrıları) ile ulaşılabilir.
· Sınıf: Aynı öznitelikler ya da metotlar kümesini paylaşan nesneleri gruplama aracı olarak kullanılır. Nesne ile sınıf arasında (INSTANCE_OF) ilişkisi vardır. Kendisi de bir nesne olan özniteliğin değeri de sınıfın içinde yer alır (kapsülleme). Bu sınıf, nesnenin özniteliğinin tanım kümesi olarak adlandırılır.
· Sınıf hiyerarşisi ve kalıtım: Nesne yönelimli sistemlerde, var olan bir sınıftan yeni bir sınıf türetilebilir. Altsınıf denilen bu yeni sınıf, üstsınıf denilen ve daha önce var olan sınıfın tüm özniteliklerini ve metotlarını kalıtsal olarak taşır. Bazı sistemler, sınıfların bir tane üstsınıfı olmasına izin verirken bazıları da birden fazla üstsınıfa izin verir. Birincisi, tekil kalıtım, ikincisi de çoklu kalıtım olarak isimlendirilir. Tekil kalıtımı destekleyen bir sistemde sınıflar, sınıf hiyerarşisi denilen bir düzeni oluştururlar.
Nesne yönelimli veri modelinde, bir sorgunun karşılığında mutlaka önceden tanımlanmış belirli bir nesne kümesi olması gerekir. Bir sorgunun sonucu olarak tesadüfi bir nesne kümesinin elde edilmesi mümkün değildir. Çünkü bütün nesnelerin, modelde önceden tanımlanmış olması gerekmektedir. İlişkisel modeldeki ilişki kavramı, nesne yönelimli modelde sınıf kavramına karşılık gelmektedir.
Nesne yönelimli modellemenin en önemli faydalarından bir tanesi de, modeldeki nesneleri tanımlarken, ortak öznitelik ve metotlara sahip nesnelerin kullanıldıkları her farklı ortamda, tekrar tanımlanmalarına gerek duyulmamasıdır. Aksi taktirde bu durum, hem tekrardan dolayı yer kaybına, hem de modeldeki dinamik değişikliklerin pratik olmamasına sebep olacaktır. Nesne yönelimli veri modelindeki sınıf hiyerarşisi ve kalıtım özelliği, bu olumsuz durumu ortadan kaldırarak, nesnelerin özniteliklerinin ve metotlarının yeniden kullanımına imkân vermektedir. Çünkü bir sınıf, ait olduğu üst sınıfın tüm özelliklerini taşır ve o sınıftaki nesneler, modelin başka bir yerinde kullanılacağı zaman yeniden tanımlanmaya gerek kalmadan tekrar kullanılabilir