기출문제/정보처리기사

2021년 2회 정보처리기사 기출문제 53번

엉클지니 2025. 3. 23. 00:42

53. 릴레이션 R의 차수가 4이고 카디널리티가 5이며, 릴레이션 S의 차수가 6이고 카디널리티가 7일 때, 두 개의 릴레이션을 카티션 프로덕트한 결과의 새로운 릴레이 션의 차수와 카디널리티는 얼마인가?

24, 35     24, 12

 10, 35      10, 12

 

 

 

이 문제는 **카티션 프로덕트(Cartesian Product)**에 대한 이해를 요구하는 문제입니다. 카티션 프로덕트는 두 개의 릴레이션(테이블)의 모든 가능한 튜플을 결합하는 연산입니다. 이를 통해 새로운 릴레이션이 만들어지며, 차수(속성의 수)와 카디널리티(튜플의 수)가 어떻게 변하는지 이해해야 합니다.

문제 분석

  • 릴레이션 R의 차수는 4이고, 카디널리티는 5입니다.
    • 차수는 릴레이션에 포함된 속성(열)의 개수를 의미합니다. 즉, R에는 4개의 속성이 있습니다.
    • 카디널리티는 릴레이션에 포함된 튜플(행)의 개수를 의미합니다. 즉, R에는 5개의 튜플이 있습니다.
  • 릴레이션 S의 차수는 6이고, 카디널리티는 7입니다.
    • 차수는 6, 즉 S에는 6개의 속성이 있습니다.
    • 카디널리티는 7, 즉 S에는 7개의 튜플이 있습니다.

카티션 프로덕트의 규칙

카티션 프로덕트는 두 릴레이션의 튜플을 전부 결합하여 새로운 튜플을 생성하는 연산입니다. 카티션 프로덕트를 통해 생성되는 새로운 릴레이션의 차수카디널리티는 다음과 같은 규칙을 따릅니다.

  1. 차수:
    • 새로운 릴레이션의 차수는 두 릴레이션의 차수의 합입니다.
    • 즉, 새로운 릴레이션의 차수는 R의 차수 + S의 차수입니다.
    새로운 차수=R의 차수+S의 차수\text{새로운 차수} = \text{R의 차수} + \text{S의 차수} 새로운 차수=4+6=10\text{새로운 차수} = 4 + 6 = 10
  2. 카디널리티:
    • 새로운 릴레이션의 카디널리티는 두 릴레이션의 카디널리티의 곱입니다.
    • 즉, 새로운 릴레이션의 카디널리티는 R의 카디널리티 × S의 카디널리티입니다.
    새로운 카디널리티=R의 카디널리티×S의 카디널리티\text{새로운 카디널리티} = \text{R의 카디널리티} \times \text{S의 카디널리티} 새로운 카디널리티=5×7=35\text{새로운 카디널리티} = 5 \times 7 = 35

결론

따라서, 카티션 프로덕트의 결과로 새로운 릴레이션의 차수는 10이고, 카디널리티는 35입니다.

정답은 ③ 10, 35입니다.

예시

R과 S가 실제로 어떤 데이터를 가지고 있다고 가정해 봅시다.

  • R: 5개의 튜플과 4개의 속성을 가진 릴레이션 
  • R = {(r1, r2, r3, r4), (r5, r6, r7, r8), (r9, r10, r11, r12), (r13, r14, r15, r16), (r17, r18, r19, r20)}
  • S: 7개의 튜플과 6개의 속성을 가진 릴레이션
    S = {(s1, s2, s3, s4, s5, s6),
         (s7, s8, s9, s10, s11, s12),
         (s13, s14, s15, s16, s17, s18),
         (s19, s20, s21, s22, s23, s24),
         (s25, s26, s27, s28, s29, s30),
         (s31, s32, s33, s34, s35, s36),
         (s37, s38, s39, s40, s41, s42)}
    

R과 S의 카티션 프로덕트를 계산하면, R의 각 튜플마다 S의 모든 튜플이 결합되어 새로운 튜플을 만듭니다. 따라서 새로운 릴레이션에는 총 5 × 7 = 35개의 튜플이 생성되고, 각 튜플은 10개의 속성을 가지게 됩니다.