다음을 통해 공유


엔터티 데이터 모델

EDM(엔터티 데이터 모델)은 저장된 형식에 관계없이 데이터의 구조를 설명하는 개념 집합입니다. EDM은 1976년 Peter Chen이 설명한 Entity-Relationship 모델에서 차용되었지만 Entity-Relationship 모델을 기반으로 하여 기존의 용도를 확장합니다.

EDM은 데이터를 여러 형식으로 저장하여 발생하는 문제를 해결합니다. 예를 들어 관계형 데이터베이스, 텍스트 파일, XML 파일, 스프레드시트 및 보고서에 데이터를 저장하는 비즈니스를 고려합니다. 이는 데이터 모델링, 애플리케이션 디자인 및 데이터 액세스에서 중요한 과제를 제시합니다. 데이터 지향 애플리케이션을 디자인할 때 문제는 효율적인 데이터 액세스, 스토리지 및 확장성을 희생하지 않고 효율적이고 유지 관리 가능한 코드를 작성하는 것입니다. 데이터에 관계형 구조가 있는 경우 데이터 액세스, 스토리지 및 확장성이 매우 효율적이지만 효율적이고 유지 관리 가능한 코드를 작성하는 것이 더 어려워집니다. 데이터에 객체 구조가 있을 때는 절충안이 반전됩니다. 효율적이고 유지 관리하기 쉬운 코드를 작성하는 것은 효율적인 데이터 액세스, 저장소, 확장성을 희생합니다. 이러한 절충 간의 적절한 균형을 찾을 수 있더라도 데이터가 한 형식에서 다른 형식으로 이동될 때 새로운 문제가 발생합니다. 엔터티 데이터 모델은 스토리지 스키마와 독립적인 엔터티 및 관계 측면에서 데이터의 구조를 설명하여 이러한 문제를 해결합니다. 이렇게 하면 저장된 데이터 형식이 애플리케이션 디자인 및 개발과 관련이 없습니다. 또한 엔터티와 관계는 저장된 형식이 아닌 애플리케이션에서 사용되는 데이터의 구조를 설명하기 때문에 애플리케이션이 진화함에 따라 진화할 수 있습니다.

A conceptual model 는 데이터 구조를 엔터티 및 관계로 특정한 표현으로, 일반적으로 EDM의 개념을 구현하는 DSL(도메인별 언어)로 정의됩니다. CSDL(개념 스키마 정의 언어) 은 이러한 도메인별 언어의 예입니다. 개념적 모델에 설명된 엔터티 및 관계는 애플리케이션에서 개체 및 연결의 추상화로 간주할 수 있습니다. 이를 통해 개발자는 스토리지 스키마에 대한 관심 없이 개념적 모델에 집중할 수 있으며 효율성과 유지 관리를 염두에 두고 코드를 작성할 수 있습니다. 한편 스토리지 스키마 디자이너는 데이터 액세스, 스토리지 및 확장성의 효율성에 집중할 수 있습니다.

이 섹션 안에

이 섹션의 항목에서는 엔터티 데이터 모델의 개념에 대해 설명합니다. EDM을 구현하는 모든 DSL에는 여기에 설명된 개념이 포함되어야 합니다. ADO.NET Entity Framework는 CSDL을 사용하여 개념 모델을 정의합니다. 자세한 내용은 CSDL 사양을 참조하세요.

엔터티 데이터 모델 키 개념

엔터티 데이터 모델: 네임스페이스

엔터티 데이터 모델: 기본 데이터 형식

엔터티 데이터 모델: 상속

연결 끝

연결 끝 다수성

연관 집합

연관 집합 끝

연결 유형

복합 형식

엔터티 컨테이너

엔터티 키

엔터티 집합

엔터티 형식

패싯

외래 키 속성

모델 선언 함수

모델 정의 함수

탐색 속성

속성

참조 무결성 제약 조건

참고하십시오