데이터 모델은 데이터의 구조, 데이터 연산, 데이터 제약이라는 세 가지 구성 요소로 이루어진다. 구조는 데이터를 어떻게 조직화하는지를 정의하고, 연산은 구조로 표현된 값을 처리하고 조작하는 작업을 뜻하며, 제약은 데이터의 정확성과 일관성을 유지하는 규칙이다. 관계는 모델 안에서 개체 간 연결을 나타내는 개념이지만 이 세 가지 구성 요소로 분류하지 않는다.
데이터 속성 간의 종속성을 엄밀히 고려하지 않고 설계하면 데이터 처리 연산 수행 시 이상 현상이 발생한다. 대표적인 것이 삽입 이상, 삭제 이상, 갱신 이상이며 검색 이상은 표준 이상 현상이 아니다. 정규화는 이 중복과 종속 문제를 다루는 수단이다.
스키마는 3단계로 나뉜다. 외부스키마는 개별 사용자나 응용프로그램이 보는 부분적 뷰이고, 내부스키마는 데이터가 실제로 디스크에 저장되는 물리적 구조를 정의한다. 개념스키마는 모든 응용프로그램과 사용자가 필요로 하는 데이터를 통합하여 조직 전체의 구조를 논리적으로 정의한다.
데이터 모델링의 용어도 구분한다. 엔티티는 유형·무형의 정보 대상으로서 서로 구별될 수 있는 것이고, 속성은 그 항목, 튜플은 구체적 값의 행을 뜻한다. ERD는 엔티티와 속성, 그리고 그들 간의 관계를 시각적으로 표현한다. 현실 세계의 대상을 사람이 파악할 수 있는 정보 구조로 옮기는 과정은 정보 모델링이다.
모델의 종류에 따라 구조가 다르다. 계층형은 트리 구조이고, 네트워크 모델은 그래프 구조를 가지며 m:n 관계를 표현하고 오너-멤버 관계로 데이터를 정의한다. 뷰는 물리적 저장 공간 없이 정의만 저장된 가상 테이블이므로 쿼리 실행 시 동적으로 결과를 생성한다.