Model EDM (Entity Data Model)

Entity Data Model (EDM) je sada konceptů, které popisují strukturu dat bez ohledu na uloženou formu. EDM si půjčuje model entity-relationship popsaný Peterem Chenem v roce 1976, ale také vychází z modelu entity-relationship a rozšiřuje své tradiční použití.

EDM řeší problémy, které vyplývají z ukládání dat v mnoha formách. Představte si například firmu, která ukládá data v relačních databázích, textových souborech, souborech XML, tabulkách a sestavách. To představuje významné problémy při modelování dat, návrhu aplikací a přístupu k datům. Při návrhu aplikace orientované na data je výzvou psaní efektivního a udržovatelného kódu bez obětování efektivního přístupu k datům, úložiště a škálovatelnosti. Pokud data mají relační strukturu, přístup k datům, úložiště a škálovatelnost jsou velmi efektivní, ale zápis efektivního a udržovatelného kódu je obtížnější. Když data mají strukturu objektů, kompromisy jsou obrácené: Zápis efektivního a udržovatelného kódu má náklady na efektivní přístup k datům, úložiště a škálovatelnost. I když lze najít správnou rovnováhu mezi těmito kompromisy, vznikají nové výzvy, když se data přesunou z jedné formy do jiné. Model Entity Data Model řeší tyto problémy popisem struktury dat z hlediska entit a relací, které jsou nezávislé na schématu úložiště. Díky tomu je uložená forma dat pro návrh a vývoj aplikací irelevantní. A vzhledem k tomu, že entity a relace popisují strukturu dat, jak se používají v aplikaci (nikoli v uložené podobě), můžou se vyvíjet s tím, jak se aplikace vyvíjí.

A conceptual model je specifická reprezentace struktury dat jako entit a relací a je obecně definována v jazyce specifickém pro doménu (DSL), který implementuje koncepty EDM. Koncepční jazyk definice schématu (CSDL) je příkladem takového jazyka specifického pro doménu. Entity a vztahy popsané v konceptuálním modelu lze považovat za abstrakce objektů a přidružení v aplikaci. To umožňuje vývojářům soustředit se na koncepční model bez obav o schéma úložiště a umožňuje jim psát kód s ohledem na efektivitu a udržovatelnost. Návrháři schémat úložiště se mezitím můžou zaměřit na efektivitu přístupu k datům, úložiště a škálovatelnosti.

V tomto oddílu

Témata v této části popisují koncepty modelu Entity Data Model. Všechny DSL, které implementují EDM, by měly obsahovat koncepty popsané zde. Všimněte si, že ADO.NET Entity Framework používá csDL k definování konceptuálních modelů. Další informace naleznete v tématu SPECIFIKACE CSDL.

Koncepty modelu EDM (Entity Data Model)

Model EDM (Entity Data Model): Obory názvů

Model EDM (Entity Data Model): Primitivní datové typy

Model EDM (Entity Data Model): Dědičnost

association end

association end multiplicity

association set

association set end

association type

complex type

entity container

entity key

entity set

entity type

facet

foreign key property

model-declared function

model-defined function

navigation property

vlastnost

referential integrity constraint

Viz také