분산처리(distributed processing)
분산처리는 주어진 데이터 처리 task가 네트워크로 연결된 여러개의 컴퓨터에서 처리되는 것을 말한다.
분산데이터베이스는 네트워크로 연결된 여러개의 컴퓨터에 데이터베이스가 분산 저장되어 있으나 DB request를 처리하는 컴퓨터에 모든 데이터가 있는 것처럼 처리하는 것을 말한다.
즉, 실제로는 여러대의 컴퓨터에 분산되어 있지만 특정 사이트의 이름이나 주소를 DB request는 표현하지 않아도 분산 DBMS가 해당 데이터를 가져와서 처리하여 주는 방식이다.
더보기
여러 사이트에 분산된 데이터베이스를 하나의 사이트에 모두 있는 것처럼 처리하는 방식을 transparent라고 한다.
이것을 위치 독립성이라 한다.
예를 들면,
데이터베이스의 특정 테이블이 주어진 사이트에서 다른 사이트로 이동하여도 응용 프로그램이 변경될 필요가 없는 것을 말한다.
EXEC SQL SELECT fname, lname, address, bno
INTO :first_name, :last_name, :address, :branch_no
FROM SITE_A::staff //위치 종속성
WHERE sno = :staff_no;
EXEC SQL SELECT fname, lname, address, bno
INTO :first_name, :last_name, :address, :branch_no
FROM staff //위치 독립성
WHERE sno = :staff_no;
위 코드에서 SITE_A::staff 표현은 테이블 staff가 SITE_A에 있다는 것을 응용 프로그램에 명시하기 때문에 분산데이터베이스 처리방식이 아니다.
그러나 SITE_A를 명시하지 않고 테이블 staff만 기술하여도 분산 데이터베이스는 해당 테이블이 어느 사이트에 있는지를 알려주는 것이 메타데이터 또는 catalog이다.
위치 독립성도 메타 데이터를 사용하여 매핑해 주기 때문에 가능한 특성이다.
참고: 데이터베이스 SQL프로그래밍(MySQL실습), 홍봉희 편저, 부산대학교 출판문화원, 2022
'대학원 공부 > 데이터베이스' 카테고리의 다른 글
[DB] Relational 데이터 모델 (0) | 2022.11.04 |
---|---|
[DB] Relational 데이터베이스 (0) | 2022.11.03 |
[DB] 데이터베이스 시스템 구조Ⅱ(Database System Architecture Ⅱ) (0) | 2022.11.02 |
[DB] 데이터베이스 시스템 구조(Database System Architecture) (0) | 2022.11.01 |
[DB] 데이터 독립성(Data Independence) (0) | 2022.10.31 |