close

Acil durum modeli

Gezinmeye atla Aramaya atla
Image
Bir ER diyagramı örneği

Bilgisayar bilimlerinde , veritabanı tasarımı bağlamında , varlık-ilişki modeli [1] (veya varlık-ilişki modeli ; daha yaygın olarak ER modeli ), verilerin yüksek düzeyde soyutlamada kavramsal ve grafik temsili için teorik bir modeldir , 1976'da Peter Chen tarafından resmileştirildi [2] .

Varlık-ilişki modeli genellikle bir veri tabanının tasarımının ilk aşamasında kullanılır; bu aşamada, belirli bir alanın analizinden elde edilen bilgilerin varlık-ilişki diyagramı (veya ER diyagramı ) olarak adlandırılan kavramsal bir şemaya dönüştürülmesi gerekir. ). [3]

Veritabanı mühendisliği tasarımı alanında üç bağımsız ve ardışık tasarım düzeyi vardır: kavramsal tasarım, mantıksal tasarım, fiziksel tasarım. Doğrusu, ER modeli kavramsal tasarım aşaması için ana teknik, mantıksal tasarım aşaması için ilişkisel modeldir. Fiziksel tasarımın ancak son aşamasında, piyasada bulunan tescilli veya tescilli olmayan yazılım ve donanım uygulamaları dikkate alınır.

Genel bilgiler

ER modeli, ilgilenilen gerçekliğe çok yakın bir dizi konsepte dayanmaktadır : bu nedenle tasarımcılar tarafından kolayca anlaşılır (ve genellikle teknisyen olmayanlar için bile yeterince anlaşılır ve önemli kabul edilir), ancak bilgisayarlarda uygulanamaz . Aslında, veritabanlarının tasarımına yönelik olmasına rağmen, model , BT sistemlerinde kalıcı verilerin fiziksel organizasyonunun belirli kriterlerinden bağımsızdır . Yüksek seviyeli kavramları (insanlar tarafından daha iyi anlaşılır), çeşitli mevcut VTYS'lerde uygulanan çeşitli mantıksal modellere (örneğin ilişkisel model ) özgü daha düşük seviyeli kavramlara çevirmek için teknikler vardır .

ER modeli uzun süredir (ve belki de bugün de) BT alanındaki uygulama alanlarını modellemek için en sağlam yaklaşımlardan birini temsil etmektedir; bu nedenle, genellikle veritabanı tasarımı bağlamı dışında kullanılmıştır ve çok sayıda başka modelleme notasyonu için bir referans model olarak kullanılmıştır. Diğer şeylerin yanı sıra, OMT notasyonu ER modelinden ilham aldı ve daha sonra UML ile birleştirildi .

Bir tanımlama süper anahtarı (alanlar: ana kod_kimliği, alt kod_kimliği) aracılığıyla Varlık-İlişkilendirme şeması , bilgisayar dünyasında çok yaygın olan herhangi bir sayıda düzeyde (özellikle de bir Malzeme Listesi ) bir ağaç grafiğini temsil eder. Sunburst Grafiği , hiyerarşik verilerin kolay ve yaygın bir grafiksel temsilini sağlar.

Modelin ana yapıları

ER modelinin ana yapılarının analizi: varlıklar, ilişkiler ve nitelikler.

Varlık

İlgiyi uygulamak amacıyla ortak özelliklere ve özerk varoluşa sahip nesne sınıflarını (olgular, şeyler, insanlar, ...) temsil ederler. Bir varlığın oluşumu, varlığın temsil ettiği sınıfın bir nesnesi veya örneğidir. Burada nesneyi tanımlayan değerden değil, nesnenin kendisinden bahsediyoruz. Bu gerçeğin ilginç bir sonucu da, bir varlık oluşumunun, kendisiyle ilişkilendirilen özelliklerden bağımsız bir varlığa sahip olmasıdır. Bunda, ER modeli, bazı özelliklerini bilmeden bir nesneyi temsil edemeyeceğimiz ilişkisel modelden belirgin bir fark sunar.

Bir diyagramda her varlığın kendisini benzersiz şekilde tanımlayan bir adı vardır ve içindeki varlığın adıyla bir dikdörtgen aracılığıyla grafiksel olarak temsil edilir.

Dernek

İlişkilendirmeler (ilişkiler olarak da adlandırılır), iki veya daha fazla varlık arasındaki bağlantıyı temsil eder. İlişkili varlıkların sayısı, ilişki derecesi ile gösterilir: iyi bir ER şeması, ikinci dereceli ilişkilerin yaygınlığı ile karakterize edilir. Bir varlığı kendisiyle (bir halka ilişkilendirmesi aracılığıyla) bağlamak ve aynı varlıkları birden çok ilişkilendirmeyle bağlamak mümkündür.

Genellikle, derneğin adını içeren bir elmasla grafik olarak temsil edilir. İsim, okuma yönü vermek için fiil olabileceği gibi, okuma yönü vermemek için de isim olabilir. En son akademik ve profesyonel yönelim, derneğe bir yön vermekten kaçınmak için ismi tam olarak kullanma eğilimindedir.

Nitelikler

Varlıklar ve ilişkilendirmeler bir dizi nitelik kullanılarak tanımlanabilir. Aynı varlık sınıfına (veya ilişkilendirmeye) ait tüm nesneler aynı niteliklere sahiptir - benzer nesnelerden bahsettiğimizde kastettiğimiz şey budur. Niteliklerin seçimi, varlıklar ve ilişkiler hakkındaki bilgileri temsil etmek istediğimiz ayrıntı düzeyini yansıtır. Her varlık sınıfı veya ilişkilendirme için bir anahtar tanımlanır. Anahtar, bir varlık veya ilişki örneğini benzersiz şekilde tanımlayan minimum nitelikler kümesidir. Öznitelik, içinde özniteliğin adının belirtildiği bir elips ile temsil edilir, hatta karmaşık diyagramlar söz konusu olduğunda, muhtemelen karşılık olarak yalnızca adı gösteren, basit bir şekilde. Birincil anahtar durumunda, öznitelik adının altı çizilir veya daire içine alınır.

Diğer model yapıları

Derneklerin kardinalitesi

Bunlar, bir birliğe katılan her bir kuruluş için belirtilir ve kuruluşlar arasındaki bir birliktelikte, bu kuruluşlardan birinin oluşumunun, birliğe dahil olan diğer kuruluşların oluşumlarına kaç kez bağlanabileceğini belirtirler (asgari ve maksimum oluşumları gösterir). ).

Öznitelik kardinalitesi

Nitelikler üzerindeki kardinalite kısıtlamalarını iki amaçla tanımlamak da mümkündür:

  • isteğe bağlılığı belirtmek;
  • çok değerli nitelikleri gösterir.

Kısıtlama belirtimi eksikse, çoğu durumda olduğu gibi, özniteliğin kardinalitesi (1,1)'dir. Aşağıdaki örneği ele alalım:

kardinalite örneği


Ad'da Kardinalite kısıtlaması belirtimi eksik olduğundan, bu, önem derecesinin (1,1) olduğu anlamına gelir.

  • (0,1) NumeroPatente, bir çalışanın ehliyet sahibi olabileceği ama aynı zamanda sahip olamayacağı veya daha doğrusu bir çalışanın en fazla ehliyet sahibi olabileceği anlamına gelir.
  • (0, n) NumeroTelefono, bir çalışanın birçok telefon numarasına sahip olabileceği ancak telefon numarasına sahip olamayacağı anlamına gelir.
  • (1, n) TitleStudio, bir çalışanın birçok yeterliliğe sahip olabileceği ancak en az bir tanesine sahip olması gerektiği anlamına gelir.

Varlık tanımlayıcıları

Aynı varlığın her bir oluşumunu benzersiz bir şekilde tanımlayan bir varlığın niteliklerinin bir alt kümesini oluştururlar. CittadinoItaliano varlığının CodiceFiscale özniteliği tarafından bir örnek oluşturulabilir. Aslında, CittadinoItaliano kuruluşunun, yani İtalya Cumhuriyeti topraklarında ikamet eden her vatandaşın meydana geldiği her olayın, vergi kanunu ile kesin olarak tanımlanabileceği bilinmektedir. Bu, aynı vergi koduna sahip iki İtalyan vatandaşı olamayacağı anlamına gelir (bir homocody vakası olmadığı sürece ).

Genellemeler

İki veya daha fazla varlık arasında var olan mantıksal bağlantıları temsil ederler. Katılan kuruluşlar arasında aşağıdakiler öne çıkıyor:

  • bir ve yalnızca bir ana varlık;
  • bir veya daha fazla alt varlık.

Alt varlıklar, ana varlığın "özel durumlarıdır". Ana varlığın her bir niteliği aynı zamanda alt varlıkların bir niteliğidir, ancak alt varlıkların kendilerini babalarından ve kardeşlerinden ayıran nitelikleri olabilir. Aşağıdaki örnek şunu göstermektedir:

  • her kişi bir vergi kodu ile tanımlanır ve soyadı, adı ve yaşı ile karakterize edilir;
  • her insan erkek veya kadın olarak ayırt edilir;
  • askeri pozisyon da değerlendirilebilir.

Genellemeler "toplam" ve "kısmi" olarak ikiye ayrılır. Çocukların alt kümelerinin birleşimi babanın tamamını oluşturduğunda bir genelleme toplamdır. Örneğin, tüm insanlar ya erkek ya da kadın olduğundan, kişiden erkeğe veya kadına genelleme toplamdır, bu nedenle erkek ve kadın alt kümelerini birleştirerek insan kümesini elde ederiz. Öte yandan, çocukların alt kümelerinin birleşimi baba kümesini küresel olarak tanımlamadığında bir genelleme kısmidir. Örneğin, bir ana varlık, Bisiklet ve Otomobil varlıklarıyla birlikte Hareket Araçları, kısmi bir genellemedir, çünkü bisikletlere ve arabalara ek olarak, mopedler, trenler, gemiler, vb. gibi başka hareket araçları da vardır. Bisiklet ve araba alt kümelerinin birleşimi, bu nedenle, Hareket Araçları'nın ana kümesini belirlemek için yeterli değildir.

Bir genelleme ayrıca "özel" veya "örtüşen" olabilir. Çocukların alt kümelerinin kesişimi boş olduğunda bir genelleme dışlayıcıdır; bunun yerine alt kümelerin kesişimi boş olmadığında örtüşür. Çalışan ve Öğrenci alt varlıkları olan bir ana varlık Çalışan ve Öğrenci, aynı anda öğrenci olan çalışanların olabileceği konusunda örtüşen bir genelleme tanımlar. Sonuç olarak, bir genelleme şöyle olabilir:

  • toplam özel (t, e);
  • toplam bindirilmiş (t, s);
  • kısmi özel (p, e);
  • kısmi üst üste bindirilmiş (p, s).

Bazen, kısaltmalar (t, e) ve az önce belirtilen ikincisi, genelleme türü hakkında bilgi eklemek için ER şemalarında görünebilir; ER grafik şeması içinde kullanımları bununla birlikte bağlayıcı değildir.

Varlık – nitelik – değer (EAV) veri modeli

Bir Varlık – nitelik – değer (EAV) veri modeli, veritabanlarının aşağıdakilerden oluştuğu durumlarda avantajlı bir şekilde kullanılır :

  • zaman içinde değişken türünün tek öznitelikleri ;
  • zaman içinde değişen, ancak içlerinde birkaç on satır veya örnekten oluşan yüzlerce tablo veya kategori; ve nispeten az sayıda tablo, ancak her biri binlerce veya milyonlarca satır veya örneğe sahiptir.

İş zekası alanında, bu tür bir bilgi yapısı çok boyutlu bir OLAP küpü olabilir ve kullanıcının genellikle zaman içinde tahmin edilemeyen bir sayı ve değişken analiz boyutu eklemesi gerekir: EAV tabloları, analiz edilecek veriler, örneğin bir biyomedikal bilgi tabanında son derece dağınıktır. Aynı EAV modeli, EAV tablolarını doğrudan OLAP küpüne [4] aktarmak için de kullanılabilir .

Bir ER modeli, boyutları ve önemi ne olursa olsun, görsel açıdan bile tüm tabloları olağan şekilde yönetme sınırına sahip olacaktır. Varlık – nitelik – değer modeli , bu sınırı aşan bir veri modelidir ve bireysel varlıkların nispeten daha küçük bir dizi nitelik (özellikler veya parametre) tarafından tanımlandığı durumlarda kavramların BT açısından verimli bir şekilde temsil edilmesine izin verir. etkili bir kavramsal ve mantıksal temsil için potansiyel olarak uygun olanlardan daha fazla .

ER Şematik Belgeleri

Bir ER şeması, çeşitli nedenlerle bir uygulamanın tüm yönlerini ayrıntılandırmak için neredeyse hiçbir zaman tek başına yeterli değildir. Her şeyden önce, bir ER şemasında sadece içinde bulunan çeşitli kavramların isimleri görünür, ancak bu onların anlamlarını anlamak için yetersiz olabilir. Özellikle karmaşık şemalar söz konusu olduğunda, çeşitli kavramları anlaşılır ve kapsamlı bir şekilde temsil edemeyebilirsiniz.

Bu nedenle, her bir ER şemasına, şemanın kendisinin yorumlanmasını kolaylaştırmaya ve temsil edilen verilerden model yapıları tarafından doğrudan ifade edilemeyen özellikleri tanımlamaya hizmet edebilecek destekleyici belgeler sağlamak önemlidir. Bu nedenle, planı tamamlamak için araçlara sahip olma ihtiyacı.

İş kuralları

Doğrudan kavramsal modellerle temsil edilemeyen bir uygulamanın özelliklerinin tanımlanması için bilgi sistemleri analistleri tarafından en çok kullanılan araçlardan biri iş kurallarıdır . Bu anlam, çoğu durumda ifade etmek istediğimiz şeyin, düşündüğümüz belirli uygulama alanının sadece bir kuralı olduğu gerçeğinden kaynaklanmaktadır.

İş kuralı terimi , bir uygulamanın bazı yönlerini tanımlayan veya kısıtlayan herhangi bir bilgiyi belirtmek için daha geniş bir anlamda analistler tarafından kullanılır. Özellikle, oldukça konsolide bir sınıflandırmaya dayalı olarak, bir iş kuralı şunlar olabilir:

  • ER modelinin bir varlığı, niteliği veya ilişkisinin uygulaması veya kesin tanımı ile ilgili bir kavramın tanımı;
  • ER modelinin bazı yapısıyla ifade edilen bir kısıtlamanın dokümantasyonu (bir ilişkinin kardinalitesi gibi) veya doğrudan modelin yapıları ile ifade edilemeyen bir kısıtlamanın açıklaması olsun, uygulama verileri üzerinde bir bütünlük kısıtlaması ;
  • şemanın diğer kavramlarından bir çıkarım veya aritmetik hesaplama yoluyla elde edilebilen bir türetme veya kavram.

Birinci tür kurallar için kesin bir sözdizimi tanımlamak açıkça imkansızdır ve genellikle doğal dilde cümlelerden yararlanılır. Bu kurallar tipik olarak açıklamaları uygun şekilde gruplandıran sözlükler biçiminde temsil edilir.

Bütünlük kısıtlamalarını ve türevlerini tanımlayan kurallar, bunun yerine, az ya da çok karmaşık sözdizimi olan resmi tanımlar için daha uygundur. Ancak, standartlaştırmaların olmadığı ve seçilen herhangi bir biçimciliğin yeterince ifade edici olmama riski taşıdığı göz önüne alındığında, bu tanımları yeterince yapılandırmaya özen göstererek, yine de doğal dildeki tanımlara başvuracağız. Özellikle, bütünlük kısıtlamalarını tanımlayan kurallar, veritabanımızda her zaman doğrulanması gereken iddialar veya ifadeler şeklinde ifade edilebilir. Açıklık nedenleriyle ve yapılarını kolaylaştırmak için bu ifadeler atomik olmalıdır, yani hala ifadeleri oluşturan cümlelere ayrıştırılamazlar. Ayrıca, bir ER şemasını belgelemek için kullanıldıklarından, iddialar, onları tatmin edecek bir yöntem önermeyen bir biçimde bildirimsel olarak belirtilmelidir. Bu aslında bir gerçekleştirme sorunudur ve bu nedenle kavramsal temsille ilgili değildir. Bu nedenle if <condition> ardından <action> gibi gösterimler , bir ER şemasını belgelediklerinde iş kurallarını ifade etmek için uygun değildir. İş kurallarının iddialar şeklinde ifade edilmesi için önceden tanımlanmış bir yapı aşağıdaki gibi olabilir:

<kavram> gerekir/yapamaz <kavramlar üzerine ifadeler>

Burada atıfta bulunulan kavramlar, atıfta bulunulan ER şemasında görünen kavramlara veya bunlar tarafından tanımlanabilen kavramlara karşılık gelebilir.

Türetmeleri ifade eden iş kuralları, türetilmiş kavramı elde etmeyi mümkün kılan işlemler (aritmetik veya diğer) belirtilerek ifade edilebilir. Bu nedenle olası bir yapı:

<kavram>, <kavramlar üzerinde işlem> ile sonuçlanır

Dokümantasyon teknikleri

Bir diyagramda temsil edilen çeşitli kavramların dokümantasyonu veya tanımlayıcı iş kuralları, bir veri sözlüğü kullanılarak üretilebilir. İki tablodan oluşur: ilki, adıyla şema varlıklarını, doğal dilde resmi olmayan bir tanımı, tüm niteliklerin listesini (ilişkili açıklamalarla birlikte) ve olası tanımlayıcıları tanımlar. Diğer tablo, adla olan ilişkileri, bunların resmi olmayan açıklamalarını, niteliklerin listesini (herhangi bir tanımla birlikte) ve katılım kardinaliteleriyle birlikte dahil olan kuruluşların listesini açıklar.

Diğer kurallar söz konusu olduğunda, yine de, her seferinde türlerini belirterek çeşitli kuralların listelendiği bir tablo kullanabilirsiniz. Şema tarafından ifade edilmeyen kısıtlamaları tanımlayan tüm kuralları temsil etmek önemlidir, ancak bazen şemada zaten ifade edilen kısıtlamaları belgeleyen kuralları da temsil etmek yararlıdır.

ER Şema Çevirisi

ER şemasının eşdeğer bir mantıksal şemaya ( ilişkisel model gibi mantıksal bir modele dayalı olarak ) çevrilmesi , yani aynı bilgiyi temsil edebilmesi, mantıksal tasarımın temel bir adımıdır ve normalde yeniden yapılandırma aşamasından önce gelir. . düzeni ER . Bir ER şemasının eşdeğer bir mantıksal şemaya dönüştürülmesinin ana unsuru, ilişkisel modelde ilişkilerin olmamasıdır , bu nedenle hem varlıklar hem de dernekler , belirlenen ana tanımlayıcılara dayalı olarak uygun kodlanmış kurallar aracılığıyla ilişkilere dönüştürülmelidir . ER şemasının yeniden yapılandırma aşamasında, ilişkilendirmelerin kardinalitesi ve harici tanımlayıcıların varlığı.

ER şemasının yeniden yapılandırılmasının hazırlık aşaması yalnızca kısmen otomatikleştirilebilirken , yeniden yapılandırılmış ER şemasından piyasadaki çeşitli yazılımlar ilgili ilişkisel şemayı, gerçek veritabanını otomatik olarak türetebilmektedir. Bu gerçeklerin ve açık bir şekilde ilgili modellerin doğasının açık bir sonucu , DB'nin fiziksel uygulaması temelinde türetilen ilişkisel şemadan otomatik olarak bir ER şeması türetme etkinliğinin, bazıları tarafından kullanıma sunulan bir işlev olmasıdır. yazılım, genel olarak orijinal ER şemasının elde edilmesine izin vermez .

Her varlığın adı, varlığın öznitelikleri kadar sütuna sahip olan bir tablo matrisinin başlığına karşılık gelir. Öznitelik bir birincil anahtar veya birkaç öznitelikten oluşan bir süper anahtarın parçasıysa, NULL değerini (isteğe bağlı olmayan, zorunlu öznitelik) kabul edemez ve aynı değerin iki oluşumunu (benzersiz, tekrarlanmayan değerler) kabul edemez.

İki veya daha fazla varlık arasındaki ilişkinin bir veya daha fazla özniteliği varsa, normal olarak ilişkilendirme, ilişkiyle (herhangi bir kardinalite ile) bağlanan tüm varlıkların birincil anahtarlarının bir tanımlama anahtarı olarak ve alanlar olarak alanlar olarak bir tabloya yol açacaktır. ER şemasındaki ilişkiye yerleştirilen nitelikler. Mantıksal bir yapıya sahip olan bu pasaj, ER şemasında gerçekleştirilebilecek kavramsal bir karaktere sahip bir pasaj olan bir ilişkinin bir varlıkta şeyleştirilmesiyle karıştırılmamalıdır .

İkinci adımda, iki tabloyu birbirine bağlayan maksimum kardinalite (üniter, n-air) dikkate alınarak tablo sayısı önemli ölçüde azaltılabilir.

Notlar

  1. ^ Terim, İngiliz varlık -ilişki modelinin bir dökümüdür .
  2. ^ Varlık - ilişki modellemesi için "Varlık İlişki Modeli: Birleşik Veri Görünümüne Doğru" .
  3. ^ ER şemasına kıyasla daha az yaygın olan varlık-ilişki şeması .
  4. ^ Peter Thanisch , Tapio Niemi , Marko Niinimaki, Jyrki Nummenmaa, OLAP Küp Yapısı için Varlık-Özellik-Değer Modelini Kullanma , içindeSeçilen konferans bildirisi : Perspectives in Business Informatics Research: 10th International Conference , BIR 2011. Proceedings , Riga, Letonya, 6 Ekim 2011, DOI : 10.1007 / 978-3-642-24511-4_5 , ISSN  1865-1348  ( WC  ACNP ) . 17 Mayıs 2018'de alındı .

Kaynakça

  • EF Codd, Büyük Paylaşılan Veri Bankaları için İlişkisel Veri Modeli , IBM Araştırma Laboratuvarı, San Jose, California, Communications of the ACM - Cilt 13 / Sayı 6 / Haziran 1970
  • Atzeni, Ceri, Paraboschi, Torlone, Veritabanları (Modeller ve Sorgu Dilleri) , McGraw Hill, 2003
  • Atzeni, Ceri, Fraternali, Paraboschi, Torlone, Veritabanları (Mimarlar ve Evrim Çizgileri) , McGraw Hill, 2003
  • Ramez Elmasri, Shamkant B. Navathe, Veritabanı sistemleri, temeller , Pearson - Addison Wesley, 2003

Diğer projeler