카테고리 없음

ANSI/SPARC 아키텍처와 데이터 독립성

에리아푸스 2024. 1. 17. 06:25
. . . . . . .

ANSI/SPARC 아키텍처는 1975년에 제안된 데이터베이스 관리 시스템(DBMS)의 표준 아키텍처입니다. 이 모델은 데이터베이스를 3단계로 나누어 정의하며, 이를 통해 데이터 독립성을 구현하는 데 중점을 둡니다.

ANSI/SPARC 아키텍처의 3단계

  1. 외부 단계 (External Level)
    • 설명: 외부 단계는 개별 사용자나 애플리케이션이 데이터베이스를 바라보는 관점을 정의합니다. 사용자마다 필요한 데이터와 그 형식이 다를 수 있기 때문에, 외부 단계에서는 각 사용자에게 맞춤형 뷰를 제공합니다.
    • 역할: 데이터 접근의 편의성과 보안성 증대를 위해, 사용자별로 필요한 데이터만 제공하고 불필요한 데이터는 숨길 수 있습니다.
  2. 개념 단계 (Conceptual Level)
    • 설명: 개념 단계는 데이터베이스 전체의 논리적 구조를 정의합니다. 이 단계에서는 모든 엔티티, 관계, 제약 조건을 통합적으로 표현하며, 데이터베이스의 구조를 한층 추상화하여 관리합니다.
    • 역할: 데이터 독립성을 제공하는 핵심 단계로, 물리적 저장 방식이나 특정 사용자 뷰에 종속되지 않는 데이터베이스의 논리적 뷰를 관리합니다.
  3. 내부 단계 (Internal Level)
    • 설명: 내부 단계는 데이터베이스의 물리적 저장 방식을 다룹니다. 데이터를 실제로 어떻게 저장할 것인지, 저장 공간은 어떻게 배치할 것인지 등을 정의합니다.
    • 역할: 데이터가 저장되는 물리적 위치나 구조를 관리하며, 최적화를 통해 성능을 개선합니다.

데이터 독립성 (Data Independence)

데이터 독립성은 데이터베이스 시스템의 중요한 목표 중 하나로, 데이터의 논리적 구조 또는 물리적 구조를 변경하더라도, 그 변경이 상위 단계(외부 또는 개념 단계)에 영향을 미치지 않도록 하는 것입니다. 데이터 독립성은 두 가지로 나뉩니다:

  1. 논리적 데이터 독립성 (Logical Data Independence)
    • 설명: 개념 단계에서의 변경이 외부 단계에 영향을 주지 않는 것을 의미합니다. 예를 들어, 데이터베이스의 논리적 구조(테이블 추가, 속성 변경 등)를 수정하더라도, 사용자나 애플리케이션에서 사용하는 뷰나 쿼리에 영향을 미치지 않습니다.
    • 중요성: 이 독립성이 유지되면, 시스템이나 데이터 모델의 변경 없이도 새로운 요구 사항에 대응할 수 있습니다.
  2. 물리적 데이터 독립성 (Physical Data Independence)
    • 설명: 내부 단계에서의 변경이 개념 단계에 영향을 주지 않는 것을 의미합니다. 예를 들어, 데이터 저장 방식이나 인덱스 구조를 변경하더라도, 데이터베이스의 논리적 구조에 영향을 미치지 않습니다.
    • 중요성: 하드웨어 성능 향상이나 저장소 최적화를 위한 변경을 수행할 때, 데이터베이스의 논리적 설계나 사용자에게는 전혀 영향을 미치지 않도록 할 수 있습니다.

ANSI/SPARC 아키텍처와 데이터 독립성의 관계

이 3단계 아키텍처는 데이터 독립성을 달성하기 위해 설계되었습니다.

  • 외부-개념 간 데이터 독립성: 개념 단계에서 변경이 발생하더라도 외부 단계에 영향을 미치지 않도록 하여, 논리적 데이터 독립성을 확보합니다.
  • 개념-내부 간 데이터 독립성: 내부 단계에서 물리적 저장 방식이 변경되더라도 개념 단계에 영향을 주지 않도록 하여, 물리적 데이터 독립성을 확보합니다.

이렇게 계층화된 접근 방식은 데이터베이스를 보다 유연하고 유지 관리가 용이하게 만들며, 시스템이 확장되거나 변경될 때도 최소한의 영향을 미치도록 합니다. 이를 통해 사용자는 데이터베이스의 물리적 구조나 논리적 구조의 변경에 구애받지 않고, 일관되게 데이터를 사용할 수 있습니다.