/ / Hiyerarşik veritabanıdır ... Modeller, örnekler

Hiyerarşik veritabanı ... Modeller, örnekler

Иерархическая база данных - это БД, основанная на ağaç yapısı Yapım ilkesine göre, bilgisayar dosya sistemine biraz benziyor. Bu modelin kullanılması, bu makalede ele alınacak, ayrıntılı örneklerle birlikte avantaj ve dezavantajlarına sahiptir.

Veritabanı türleri

hiyerarşik bir veritabanı

Bildiğiniz gibi, dört tür veritabanı oluşturma vardır:

  • İlişkisel - bilgilerin satır sütunları şeklinde sunulduğu tablo DBMS. Bu ilkeye göre, örneğin veritabanları "Access" te oluşturulmuştur.
  • Nesne odaklı - OOP ile yakından ilgili(nesnelerle çalıştığınız programlama) ve bu onların ana avantajıdır, ancak düşük performansları göz önüne alındığında, ilişkisel olanlara göre yaygınlık açısından hala önemli ölçüde daha düşüktürler.
  • Karma - Aynı anda yukarıdaki türlerden ikisini içeren DBMS.
  • Hiyerarşik, bu makalenin odak noktasıdır. Bunlar, ağaç benzeri bir yapı ile karakterize edilen veritabanlarıdır.

Hiyerarşik tabanın en ünlü örneğiVeriler, IBM ("IBEm") tarafından oluşturulan ve IMS olarak kısaltılan Information Management System ("Information Management System" olarak çevrilir) adı verilen bir üründür. IMS'nin ilk versiyonu son yirminci yüzyılda altmış sekizinci yılda yayınlandı. Bu güne kadar verileri saklamak ve kontrol etmek için kullanılır.

Hiyerarşik bir model oluşturma ilkesi

hiyerarşik veritabanı örneği

Hiyerarşik veri modeli aşağıdaki ilkeye göre oluşturulmuştur:

  • ağaç yapısının her düğümü için belirli bir segment atanır;
  • bir bölüm, her bir alana atanan ve bir doğrusal demet halinde düzenlenen veri alanları anlamına gelir;
  • bir daha eşleşme: her kaynak alanı için bir giriş ve birkaç çıkış segmenti;
  • her yapısal eleman için hiyerarşi sisteminde bir ve yalnızca bir yer vardır;
  • ağaç yapısı kök öğeden başlar;
  • her bağımlı düğümün yalnızca bir atası vardır, ancak her kaynak düğümün birden fazla nesli olabilir.

Hiyerarşik bir veri yapısı uygulama

Hiyerarşik veritabanı, doğası gereği ağaç yapısına sahip sistemlere uygulanabilen bir depodur. Böyle bir modellemeyi seçmeleri onlar için mantıklı.

Başlangıçta hiyerarşik bir veritabanı örneğisistematik dereceler - bildiğiniz gibi rütbelerin açıkça tanımlandığı bir askeri birim. Ayrıca, hiyerarşinin dibine kadar giderek basitleşen parçacıklardan oluşan karmaşık mekanizmalar da olabilir. Bu tür sistemleri modellemek ve bunları dikkate alınan veri tabanı formuna getirmek için ayrıştırmaya gerek yoktur. Ancak bu her zaman böyle değildir.

hiyerarşik bir veritabanı örneği

Ek olarak, aşağıya yönelik bir sorgunun yukarı bakan bir sorgudan daha kolay olduğu yönünde bir eğilim vardır.

Hiyerarşik bir model üzerine inşa edilmiş veritabanları üzerinde temel işlemler

Hiyerarşik bir veritabanının yapısı,başarılı ve neredeyse sorunsuz bir şekilde (becerilere ve yeteneklere bağlı olarak) aşağıdaki işlemleri gerçekleştirmek için (en temel olanlar sunulur, liste her zaman küçük eklemelerle genişletilebilir):

  • belirli bir öğe için veritabanı araması;
  • veritabanında gezinme - ağaçtan ağaca;
  • ağaç geçişi - daldan dala;
  • buna göre dal geçişi eleman bazındadır;
  • kayıtlarla çalışın: yeni bir tane ekleyin ve / veya mevcut olanı silin, kopyalayın, kesin, vb.

Yapının genelleştirilmiş açıklaması

Bir yapıyı tanımlamak için "ağaç" terimibu yazıda birden fazla kez bahsedilmiştir. Nereden geldiğini anlamanın zamanı geldi. Bunun nedeni, hiyerarşik bir veritabanının ağaç veri türünü kullanan bir veritabanı olmasıdır. Ne olduğuna daha yakından bakalım.

Bu bileşik bir türdür:birkaç ardışık (bir veya daha fazla) öğelerin (düğümlerin) her birine yerleştirilmiştir. Ve hepsi tek bir kök öğeyle başlar. Sonuç olarak, "ağaç" türünün her bir parçası bir alt tür, ayrıca bir "ağaç" dır. Çok, çok dallı ve hepsi de düzenli yapılar.

hiyerarşik model

Temel türler basit ve karmaşık olabilir, ancak özünde her zaman kayıtlardır. Ancak basit bir kayıtta bir tür veri vardır ve birleşik bir veride tüm bunların bir koleksiyonu vardır.

Hiyerarşik model şu ilkeyle karakterize edilir:soyundan gelenler, önceki bölümlerin her biri bir sonrakinin atası olduğunda. Ek olarak, bir ebeveyn türünün soyundan gelen bir alt tür iken, birbirine eşdeğer olan kayıtlar ikiz olarak kabul edilir.

Veritabanı doldurma

Hiyerarşik bir veritabanının ana verileri, kayıtlarda saklanan değerlerdir (sayılar veya semboller). Böyle bir veritabanı genellikle aşağıdan yukarıya ve soldan sağa aktarılır.

haysiyet

Hiyerarşik bir veritabanı, bir köke sahip olandırDB klasörü yavaş yavaş aşağı doğru dallanıyor. Böyle bir yapının bir dosya sistemine çok benzediği düşünüldüğünde, bu tür veritabanları bilgisayar verileri üzerinde çeşitli işlemleri başarıyla gerçekleştirmek için başarıyla kullanılmaktadır. Alt satır: hafızasının rasyonel dağılımı ve işe harcanan zamanın çok iyi göstergeleri.

hiyerarşik veritabanları ağ veritabanları

Hiyerarşik model, onu sıralı bilgilere uygulamak için idealdir.

eksiklikler

Ancak, dikkate alınan DBMS'nin aynı özellikleri,ana avantajları haline gelen bu ürünler dezavantajlarını da belirlemektedir. Örneğin, mantıksal bağlantıların hantallığı ve karmaşıklığı - daha önce bilinmeyen bir veritabanıyla çalışırken deneyimli bir uzmanın anlaması zor olacak ve basit bir kullanıcı içinde tamamen "kaybolacaktır". Bu karmaşık anlayış, aslında pek çok DBMS'nin hiyerarşik bir model üzerine inşa edilmediği gerçeğine yol açar. Hiyerarşik veri tabanına bir örnek, IBEm şirketinin önceden açıklanan ürününe ek olarak Oka ve MIRIS (Rusya'da üretilmiştir) ve Data Edge ve Team-UP (yabancı şirketlerden).

örnekler

Hiyerarşik veritabanı çeşitliliktirilişkilerin inşa edildiği farklı seviyeler. Şematik olarak ters çevrilmiş bir grafiğe benziyor. Hiyerarşik veri tabanına bir örnek, herhangi bir devlet idari kurumu olabilir. Örneğin bir okulu ele alalım.

ilişkisel hiyerarşik ağ veritabanları

En üst seviyede yer alacakyönetimin "lideri" direktördür. Baş öğretmene, baş öğretmene - sınıfların paralelliklerini denetleyen öğretmenlere - sunumunda. Her paralelde belirli sayıda var ve her sınıfta belirli sayıda öğrenci var.

Aynı prensipte boyayabilir vebir şirket işletmek. Şirketin başı hatta yönetim kurulu en tepede. Dahası - her biri kendi yapısına sahip olan artan sayıda bölüm. Ortak özellikler de vardır: her departmandaki şef, asistanı, sekreteri, aslında, ofis çalışanları vb.

Bilgisayar uygulaması

Daha ciddi uygulamalar olabilir.Hiyerarşik veritabanının en önemli örneği dosya sistemidir. Herkesin aşina olduğu "Explorer", Windows işletim sisteminin tam merkezinde, tıpkı diğer birçok dosya yöneticisi gibi tamamen aynı şekilde inşa edilmiştir.

Ağ veritabanları

Var olmak:

  • ilişkisel;
  • hiyerarşik;
  • ağ veritabanları.

Sınıflandırmayı neden tekrar hatırladık? İlişkisel olandan farklı olarak, bir ağ veritabanının hiyerarşik bir veritabanıyla benzerlikleri vardır.

Veritabanlarındaki bağlantı türlerini hatırlamanın zamanı geldi.Bire bir, bire çok ve çoktan çoğa ilişkiler vardır. İkincisi ile ilgileniyoruz. Bir ağ veritabanında, şu şekilde kendini gösterir: bir ardıl düğüm aynı anda birkaç ataya sahip olabilir. Birden fazla çocuk sahibi olma özelliği de korunur. Hiyerarşik veri tabanlarının, ağ veri tabanlarının kendi içlerinde böyle bir kalıtım örneği olduğunu söyleyebiliriz. Bu durumda ata, ağ veri tabanında yapıyı inşa etme ilkesi aynı kaldığından, tam olarak hiyerarşik veri tabanıdır.

Hiyerarşi ve ilişkisellik

"İlişkisel" adı İngilizceden geliyor"tutum" kelimeleri. Bu makalenin başında belirtildiği gibi, genellikle tablolarla ifade edilirler. Ancak önceki paragrafta hiyerarşik bir veritabanının bağlantıları da düzenleyebileceğine işaret ettik, bu, bu iki tür arasında da ince bir iplik olduğu anlamına mı geliyor?

hiyerarşik veritabanı yapısı

Evet.Hem birinci hem de ikinci türlerin hala veritabanları ile ilgili olmasına ek olarak, bu özelliğe ek olarak bir başka ortak özellik daha vardır. Örneğin, hiyerarşik bir veritabanı (ve onunla birlikte bir ağ) bir tabloda ifade edilebilir. Buradaki nokta, bilginin son kullanıcıya hangi biçimde sunulacağı değil (bu zaten bir arayüz kullanılabilirliği sorunudur), bilginin hangi prensibe göre yapılandırıldığıdır. Dolayısıyla, kendi başkanları, departmanları ve diğerleriyle departmanlara net bir bölünme, hiyerarşide yine de ifade edilecek, ancak kolaylık sağlamak için tabloya girilecektir.