SQLD

[SQLD] 데이터 모델링의 이해 출제예상문제(20문항)

Jia H 2025. 3. 28. 10:58

01. 다음 중 가장 추상화 수준이 높은 데이터베이스 모델링은 어느 것인가?

① 개념적 모델링
② 물리적 모델링
③ 논리적 모델링
④ 추상적 모델링

정답

더보기

① 개념적 모델링

데이터 모델링은 개념적 데이터 모델링 → 논리적 데이터 모델링 → 물리적 데이터 모델링 순으로 수행하며 단계가 진행될 수록 추상화 수준은 점점 낮아진다.

모델링 단계 설명
개념적 데이터 모델링 가장 먼저 수행하는 데이터 모델링으로 높은 추상화 수준에서 업무와 개념 중심으로 모델링을 수행
논리적 데이터 모델링 개념적 모델링을 기본으로 키, 속성, 관계 등을 정의하며 정규화를 통한 중복 저장의 최소화, 식별자의 확정 등을 수행
물리적 데이터 모델링 추상화 수준이 가장 낮은 단계로서 데이터베이스를 실제로 구축하고 성능, 보안, 저장 등 물리적인 수준에서 모델링 수행, 반정규화를 통한 성능 최적화 작업 수행

 

 

02. 아래에서 설명하고 있는 데이터 모델링의 관점은 무엇인가?

가. 엄무를 구성하는 데이터와 프로세스가 어떻게 서로 관게를 맺고 영향을 주고받는지를 모델링한다.
나. CRUD(Create, Read, Update, Delete) 분석을 기반으로 한다.

① 데이터 관점
② 프로세스 관점
③ 데이터와 프로세스의 상관 관점
④ 관계 관점

✅ 정답

더보기

③ 데이터와 프로세스의 상관 관점

데이터 모델링은 업무를 분석하여 데이터 모델을 만드는 과정이다. 업무가 무엇을 대상으로 하는지를 나타내는 데이터 관점, 그 대상을 어떻게 처리하는지를 나타내는 프로세스 관점, 대상과 처리방법 간의 상관관계를 분석하는 데이터와 프로세스의 상관 관점, 이렇게 세 가지 관점에서 데이터 모델링을 수행한다.

 

 

03. ANSI-SPARC에서 정의한 3단계 스키마 구조 중에서 아래에서 설명하고 있는 것은 어느 것인가?

가. 설계자 관점에서 데이터베이스를 바라보며 통합된 뷰를 제공한다.
나. 모든 사용자 관점을 통합한 조직 전체의 관점에서 데이터베이스 스키마를 정의한다.
다. 전체 데이터베이스에 저장된 데이터와 그들 간의 관계를 정의한다.

① 외부 스키마
② 내부 스키마
③ 개념 스키마
④ 통합 스키마

✅ 정답

더보기

③ 개념 스키마

스키마 설명
외부 스키마 사용자나 애플리케이션 또는 응용 프로그래머가 바라보는 스키마를 정의한다. 사용자 관점에서의 스키마 정의이며 다중 사용자 뷰를 제공한다.
개념 스키마 모든 사용자 관점을 통합한 조직 전체의 관점에서 데이터베이스를 바라본다. 모든 사용자와 애플리케이션이 필요로 하는 데이터를 통합한 조직 전체의 데이터베이스를 정의하며 통합된 뷰를 제공한다.
내부 스키마 디스크나 메모리상의 물리적, 실질적 저장구조를 나타낸다. 테이블, 칼럼, 인덱스 등을 정의하여 물리적 뷰를 제공한다.

 

 

04. 다음 중 데이터 모델링을 할 때의 유의사항으로 옳지 않은 것은?

① 데이터 정의를 데이터 사용 프로세스와 분리하여 유연성을 높인다.
② 여러 장소의 데이터베이스에 같은 데이터를 저장하지 않도록 하여 중복성을 최소화한다.
③ 사용자가 처리하는 프로세스나 장표 등에 따라 데이터가 매핑될 수 있도록 응용 프로그램과 테이블 간의 연계성을 높인다.
④ 데이터 상호 간의 연관관계를 명확하게 정의하여 데이터가 일관되게 유지되도록 한다.

✅ 정답

더보기

③ 사용자가 처리하는 프로세스나 장표 등에 따라 데이터가 매핑될 수 있도록 응용 프로그램과 테이블 간의 연계성을 높인다.

프로그램은 데이터를 사용하는 방법을 뜻하며 테이블은 데이터의 정의를 뜻한다. 데이터의 정의(스키마)와 데이터를 사용하는 방법(프로세스)을 최대한 느슨하게 결합하도록(Loosely Coupled) 설계해야 시스템의 유지보수성을 높일 수 있다. 전체가 하나로 타이트하게 묶여 있으면(Tightly Coupled) 사소한 변경사항이 발생해도 결국 전체를 수행해야 하므로 작업의 시간과 비용이 늘어난다.

 

 

05. [기출] ERD(Entity Relationship Diagram) 작성 순서로 올바른 것을 고르시오.

가. 엔터티를 그린다.
나. 엔터티를 적절하게 배치한다.
다. 엔터티 간에 관계를 설정한다.
라. 관계명을 기술한다.
마. 관계의 참여도를 기술한다.
바. 관계의 필수 여부를 기술한다.

 

① 가 → 나 → 다 → 라 → 마 → 바
② 나  가  라  마 바 
③ 가 → 나 → 라 → 다 → 마 → 바
④ 가 → 나 → 다 → 마 → 바 → 라

✅ 정답

더보기

① 가 → 나 → 다 → 라 → 마 → 바

 

 

06. 다음 중 고객과 주문의 ERD에 대한 설명으로 가장 옳지 않은 것은?

① 한 명의 고객은 여러 개의 제품을 주문하거나 또는 주문을 전혀 안 할 수도 있다.
② 고객에 데이터를 입력할 때는 주문데이터가 존재하는 고객만이 입력 가능하다.
③ 주문에 데이터를 입력할 때는 주문하는 고객의 고객 데이터가 반드시 존재해야 한다.
④ 하나의 주문은 반드시 한 명의 고객에 의해서만 이루어진다.

✅ 정답

더보기

② 고객에 데이터를 입력할 때는 주문데이터가 존재하는 고객만이 입력 가능하다.

 

 

07. [기출] 다음 ERD에서 교차 엔터티에 해당하는 것은?

① 학생
② 과목
③ 수강
④ 학생, 과목

✅ 정답

더보기

③ 수강

교차 엔터티(Interaction Entity)란 다대다(M:N) 관계를 해소하기 위해서 만들어진 엔터티를 말한다.

 

 

08. 다음 중 다른 엔터티로붙터 상속받지 않은 자신의 고유한 주식별자를 가지며 고객, 상품, 자재, 사원, 부서 등이 예가 될 수 있는 엔터티는 어느 것인가?

① 기본 엔터티
② 중심 엔터티
③ 행위 엔터티
④ 고유 엔터티

✅ 정답

더보기

① 기본 엔터티

 

구분 기본 엔터티 (Basic Entity) 중심 엔터티 (Central Entity)
정의 시스템에서 독립적으로 존재하는 엔터티 여러 엔터티와 연관되어 중요한 역할을 하는 엔터티
특징 다른 엔터티의 영향을 받지 않고 독립적 여러 엔터티와 관계를 맺으며 핵심적인 역할 수행
예시 고객, 제품 주문, 계약, 거래
관계 보통 참조되는 대상 (PK 제공) 보통 다른 엔터티와 다대다(N:M) 또는 1:N 관계를 가짐

💡 쉽게 설명하면?

  • 기본 엔터티: 독립적으로 존재 (ex: 고객, 제품)
  • 중심 엔터티: 여러 개를 연결하는 중심 역할 (ex: 주문 → 고객과 제품 연결)

 

 

09. [기출] 식별자 중에서 대체 여부로 분류되는 식별자로서 비즈니스 프로세스에 의해서 만들어지는 식별자를 무엇이라고 하는가?

① 본질식별자
② 단일식별자
③ 내부식별자
④ 인조식별자

✅ 정답

더보기

① 본질식별자

식별자는 대체 여부에 따라서 본질식별자와 인조식별자로 나뉜다.

업무에 존재하는 본래의 식별자로서 비즈니스 프로세스에 의해서 만들어지는 식별자를 본질식별자라고 한다.

 

 

10. [기출] 다음 ERD에서 식별자 분류로 올바른 것은?

[고객마스터] 테이블의 고객번호는 대표성에 따른 식별자 분류로 ( ㉠ )이고,
스스로 생성했는지 여부에 따라서는 ( ㉡ )이다.
또한 계좌마스터의 고객번호는 스스로 생성여부에 따라서 ( ㉢ )이다.

① ㉠ 보조식별자,  ㉡ 외부식별자, ㉢ 단일식별자
② ㉠ 주식별자, ㉡ 내부식별자, ㉢ 외부식별자
③ ㉠ 보조식별자, ㉡ 내부식별자, ㉢ 외부식별자
④ ㉠ 내부식별자, ㉡ 단일식별자, ㉢ 보조식별자

✅ 정답

더보기

② ㉠ 주식별자, ㉡ 내부식별자, ㉢ 외부식별자

대표성 여부: 주식별자, 보조식별자

스스로 생성 여부: 내부식별자, 외부식별자(FK)

 

 

11. 다음 중 두 개의 엔터티 사이에 관계를 도출할 때 참고할 사항을 모두 고른 것은?

가. 두 개의 엔터티 사이에 정보의 조합이 발생되는가?
나. 두 개의 엔터티 사이에 관심 있는 연관규칙이 존재하는가?
다. 업무기술서, 장표에 관계연결을 가능하게 하는 동사(Verb)가 있는가?
라. 업무기술서, 장표에 관계연결에 대한 규칙이 서술되어 있는가?

① 가, 다, 라
② 가, 나, 라
③ 가, 나, 다
④ 가, 나, 다, 라

✅ 정답

더보기

④ 가, 나, 다, 라



12. 다음 중 ERD에서 관계(Relationsihp)를 나타낼 때 표시되지 않는 것은?

① 관계의 이름(Relationship Membership)
② 관계의 차수(Relationship Degree/Cardinality)
③ 관계의 선택사양(Relationship Optionality)
④ 관계의 중요도(Relationship Priority)

✅ 정답

더보기

④ 관계의 중요도(Relationship Priority)

관계(Relatioinship)을 나타내는 세 가지 요소는 관계명, 관계차수, 관계선택사양이다.

 

 

13. [기출] 다음은 어떤 증권회사의 데이터베이스 모델링으로서 고객과 계좌 간의 관계를 표현한 것이다. 다음의 보기 중에서 그 설명이 올바르지 않은 것은?

① 계좌를 개설하지 않은 고객은 본 증권회사에 고객이 될 수가 없다.
② 계좌번호는 전체 고객마다 유일한 번호가 부여된다.
③ 고객마스터와 계좌마스터의 관계는 식별관계이다.
④ 한 명의 고객에 하나의 고객등급만 부여된다.

✅ 정답

더보기

② 계좌번호는 전체 고객마다 유일한 번호가 부여된다.

[계좌마스터] 테이블의 주식별자가 계좌번호와 고객번호의 복합식별자로 되어 있기 때문이다.

 

 

14. 아래의 내용은 주식별자의 어떤 특징을 설명한 것인가?

학생의 학번으로 고유한 구조를 표현할 수가 있다.
하지만 ABC대학교의 [학생] 엔터티의 주식별자를 학번과 입학일자로 해서 잘못된 모델링을 했다.

① 유일성
② 최소성
③ 불변성
④ 존재성

✅ 정답

더보기

② 최소성

주식별자는 엔터티를 식별할 수 있는 유일성을 만족하면서 최소의 개수로 구성해야 한다. 이를 최소성이라고 한다. [학생] 엔터티는 학번만으로 이미 고유한 구조를 표현할 수 있다고 했으므로 학번은 유일성을 만족한다. 여기에 입학일자라는 불필요한 속성을 주식별자에 포함시켰다는 것이므로 이는 최소성을 위배한 것이다.

 

 

15. 데이터베이스 모델링과 관련된 개념으로 다음에서 설명하고자 하는 것으로 가장 올바른 것은?

증권회사에서 주문을 발주할 때 해당 종목에 대한 호가단위가 있다. 즉, 주문은 10호가를 기준으로 발주할 수 있어서 어떤 종목을 주문할 때 1003원과 같은 금액으로는 발주할 수 없다. 이처럼 데이터베이스에서 값이 가질 수 있는 조건을 정의하는 것이다.

① 시스템 카탈로그
② 다중 값 속성
③ 선택도
④ 도메인(Domain)

✅ 정답

더보기

④ 도메인(Domain)

속성이 가질 수 있는 값의 범위를 도메인이라고 한다. 도메인은 데이터 타입, 크기, 제약조건 등을 묶어 정의하므로 보기와 같이 값이 가질 수 있는 조건은 도메인으로 정의할 수 있다. 시스템 카탈로그는 데이터베이스에 저장되어 있는 모든 데이터 객체들에 대한 정의나 명세에 대한 정보가 수록되어 있는 시스템 테이블이다.

 

 

16. 다음 중 보기에서 엔터티 내에 주식별자를 도출하는 기준으로 옳은 것을 모두 고르면?

가. 해당 업무에서 자주 수정되는 속성을 주식별자로 지정한다.
나. 명칭, 내역 등과 같이 이름으로 기술되는 것들을 주식별자로 지정한다.
다. 복합으로 주식별자를 구성할 경우 너무 많은 속성을 포함하지 않도록 한다.
라. 해당 업무에서 자주 사용되는 속성을 주식별자로 지정한다.

① 가, 나
② 가, 다
③ 다, 라
④ 나, 라

✅ 정답

더보기

③ 다, 라

 

 

17. 다음 중 보기에서 설명하고 있는 금액 속성과 주문합계 속성의 종류를 바르게 짝지은 것은?

ABC 온라인 쇼핑몰은 매일 고객들의 주문정보를 [주문] 테이블에 저장하고 있다. 그리고 매일 24시에 [주문] 테이블에 있는 금액을 조회하여 [일별주문합계] 테이블에 상품별, 일별 주문합계 금액을 보관한다. 이때 [주문] 테이블의 금액 속성과 [일별주문합계] 테이블의 주문합계 속성은 서로 데이터 정합성을 유지해야 한다.

① PK 속성, FK 속성
② 기본 속성, 파생 속성
③ 기본 속성, 설계 속성
④ 일반 속성, 파생 속성

✅ 정답

더보기

② 기본 속성, 파생 속성

종류 설명
기본 속성 엔터티가 본래부터 가지고 있어야 하는 속성
설계 속성 엔터티가 본래부터 가지고 있던 속성은 아니지만 설계 시 필요하다고 판단되어 도출된 속성
파생 속성 다른 속성으로부터 계산되거나 특정 규칙에 따라 변형되어 만들어진 속

 

 

18. 다음 중 엔터티, 관계 속성에 대한 설명으로 올바르지 않은 것은?

① 한 개의 엔터티는 두 개 이상의 인스턴스를 가진다.
한 개의 엔터티는 두 개 이상의 속성을 가진다.
③ 한 개의 엔터티는 두 개 이상의 관계를 가진다.
④ 한 개의 속성은 한 개의 속성값을 가진다.

✅ 정답

더보기

③ 한 개의 엔터티는 두 개 이상의 관계를 가진다.

엔터티는 엔터티 인스턴스의 집합이다. (집합의 구성은 최소 2개 이상의 원소를 갖는 것이다.) 또한 엔터티는 속성의 집합이다. 한 개의 속성은 오직 1개의 속성값만을 가지며 2개 이상의 속성값을 가지는 경우에는 1차 정규화를 수행하여 속성의 원자성을 확보해야 한다. 또한 엔터티는 1개 이상의 관계를 가진다. 단, 통계성이나 코드성 엔터티는 관계를 생략할 수 있다.

 

 

19. 다음 주어진 그림과 같은 ERD 표기법을 무엇이라 하는가?

① Peter Chen
② Barker
③ IDEF1X
④ IE

✅ 정답

더보기

④ IE

Peter Chen 표기법은 관계를 마름모로 표시한다.

Barker 표기법은 IE와 유사하나 선택사양(Optionality)을 점선과 실선으로 표현한다.

IDEF1X 표기법은 타디널리티를 까치발로 표시하지 않고 원이나 마름모로 표시한다.

IE Peter Chen Barker IDEF1X

 

 

20. 다음 중 식별자 관계에 대한 설명으로 옳지 않은 것은?

① 부모와 자식 간의 강한 연결 관계를 표현한다.
② 자식의 주식별자를 독립적으로 구성한다.
③ 부모의 주식별자가 자식의 주식별자에 포함된다.
④ ERD에서 실선으로 표현한다.

✅ 정답

더보기

② 자식의 주식별자를 독립적으로 구성한다.

자식의 주식별자를 독립적으로 구성하는 경우에는 비식별자 관계가 더 적합하다.

  식별자 관계 비식별자 관계
ERD

연결 관계 강한 연결 관계를 표현 약한 연결 관계를 표현
주식별자 포함 위치 부모의 주식별자가 자식의 주식별자에 포함 부모의 주식별자가 자식의 일반 속성에 포함
관계 표기 실선으로 표기 점선으로 표기
주식별자 이전 상속받은 주식별자를 타 엔터티에 이전 상속받은 주식별자를 타 엔터티에 차단
주식별자 구성 자식의 주식별자 구성이 부모의 주식별자에 의존 자신의 주식별자를 독립적으로 구성