외부 스키마, 사용자나 응용 프로그램의 관점에서 데이터베이스를 바라보는 방식입니다. 즉, 각 사용자나 응용 프로그램이 필요로 하는 데이터만 볼 수 있도록 설계된 데이터베이스의 부분적인 뷰(View)를 의미합니다.
특징
-
하나의 데이터베이스에는 여러 개의 외부 스키마가 존재할 수 있습니다.
-
사용자별로 데이터를 어떻게 볼지 정의하기 때문에 데이터 보안과 밀접한 관계가 있습니다.
-
외부 스키마는 개별 사용자에게 친화적으로 설계되어, 데이터베이스의 복잡한 구조를 숨기고 필요한 정보만 제공합니다.
예시
-
쇼핑몰 예시
-
고객은 자신의 주문 내역만 볼 수 있습니다.
-
관리자는 전체 주문 내역과 고객 정보를 볼 수 있습니다.
-
-
은행 시스템 예시:
-
고객은 자신의 계좌 정보와 거래 내역만 조회할 수 있습니다.
-
은행 직원은 고객의 대출 신청 기록과 신용 점수까지 조회할 수 있습니다.
-
장점
-
데이터 보안
-
사용자가 접근할 수 있는 데이터만 제한적으로 보여줌으로써 민감한 데이터를 보호할 수 있습니다.
-
-
편의성
-
복잡한 데이터 구조를 사용자 관점에서 단순화하여 보여줍니다.
-
-
유연성
-
각 사용자나 응용 프로그램의 요구 사항에 맞게 데이터베이스의 뷰(View)를 조정할 수 있습니다.
-
구성 방법
외부 스키마는 뷰(View)를 통해 정의되는 경우가 많습니다. 뷰는 데이터베이스의 물리적 데이터 구조와 독립적으로 동작하며, 쿼리를 통해 특정 데이터를 필터링하거나 가공한 결과를 제공합니다.
-
예: SQL을 사용하여 특정 조건에 맞는 데이터를 뷰로 정의
CREATE VIEW CustomerOrders AS SELECT CustomerID, OrderID, OrderDate FROM Orders WHERE CustomerID = '특정 고객 ID';
주의사항
-
데이터 접근 권한(Role)을 명확히 설정해야 합니다.
-
복잡한 외부 스키마를 설계하면 시스템 성능에 영향을 줄 수 있으므로 최적화를 고려해야 합니다.
외부 스키마는 데이터베이스 사용자들에게 필요한 데이터를 적절히 제공하면서도 민감한 데이터에 대한 보안을 유지할 수 있는 강력한 도구입니다.
외부 스키마 설명 글 마치겠습니다.
[…] 외부 스키마(External Schema) […]