데이터베이스 용량을 정확히 산정하여 디스크의 저장 공간을 효과적으로 사용, 확장성 및 가용성을 높인다.
디스크 특성을 고려하면서 설계 -> 디스크의 입 출력 부하를 분산시키고 채널의 병목현상을 최소화 한다.
종류 | 목적 |
---|---|
위치 투명성 | 액세스 하려는 DB의 실제 위치를 알 필요 없이 단지 DB의 논리적인 명칭만으로 엑세스 가능 |
중복 투명성 | 동일 데이터가 여러곳에 중복되어 있더라도 사용자는 마치 하나의 데이터만 존재하는 것처럼 사용, 시스템은 여러 자료에 대한 작업 수행 |
병행 투명성 | 분산 DB 와 관련된 다수의 트랜잭션들이 동시에 실행되더라도 그 트랜잭션의 결과는 영향을 받지 않음 |
장애 투명성 | 트랜잭션, DBMS, 네트워크, 컴퓨터 장애에도 불구하고 트랜잭션을 정확하게 처리 |
두 대 이상의 서버를 하나의 서버처럼 운영하는 기술
서버 이중화 및 공유 스토리지를 사용하여 서버의 고가용성을 제공
2가지 종류
RTO
: (Recovery Time Objective, 목표 복구 시간) 중단 시점으로부터 복구되어 가동될 때까지의 소요 시간
RPO
: ( Recovery Point Objective, 목표 복구 시점) 중단 시점으로부터 데이터를 복구할 수 있는 기준점
DB 보안이란 DB 일부 또는 전체에 대해서 권한이 없는 사용자가 액세스 하는 것을 금지하기 위해 사용되는 기술
data를 보낼때 송신자가 지정한 수신자 이외에는 내용을 알 수 없도록 평문을 암호문으로 바꾸는 과정
정책 | 특징 |
---|---|
DAC(임의접근통제) | 사용자의 신원에 따라 접근 권한 부여, 객채 생성자가 모든 권한 부여받고 타인에게 부여 가능 |
MAC(강제접근통제) | 주체와 객체의 등급을 비교해서 접근 권한 부여, 시스템이 권한 지정 |
RBAC(역할 기반 접근통제) | 사용자 역할에 따라 접근 권한을 부여, 중앙 관리자가 접근 통제 권한을 지정, 다중 프로그래밍 환경에 최적화 |
신분 기반 정책
신분에 근거하여 접근 제한
IBP
(Individual-based policy): 최소 권한 정책, 단일 주체에게 하나의 객체에 대한 허가 부여
GBP
(group-based policy): 복수 주체에게 하나의 객체에 대한 허가를 부여
규칙 기반 정책
주체가 갖는 권한에 근거하여 접근 제한
MLP
(Multi-level Policy): 사용자나 객체별로 지정된 기밀 분류에 따른 정책
CBP
(Compartment-based policy): 집단별로 지정된 기밀 허가에 따른 정책
역할 기반 정책
GBP의 변형으로 주체의 신분이 아니라 주체가 맡은 역할에 근거하여 접근 제한
기밀성 모델
: 군사목적으로 개발된 최초의 수학적 모델, 기밀성 보장 최우선
무결성 모델
: 기밀성 모델에서 발생하는 불법적 정보변경 방지위해 무결성 기반으로 개발
접근통제 모델
: 접근통제 모델을 보안 모델로 발전시킨것, ex) Access Control Matrix(접근통제 행렬), - 행은 주체 ,열은 객체
사용자나 app이 db에 접근하여 수행한 모든 활동을 기록하는 기능
단일 디스크로 처리할 수 없는 대용량의 데이터를 저장하기위해 서버와 저장장치를 연결하는 기술
서버와 저장장치를 전용 케이블로 연결하는 방식
서버와 저장장치를 네트워크를 통해 연결하는 방식
서버와 저장장치를 연결하는 전용 네트워크를 별도로 구성
논리적 설계(데이터 모델링) | 물리적 설계 |
---|---|
엔티티 | 테이블 |
속성 | 컬럼 |
주 식별자 | 기본키 |
외부 식별자 | 외래키 |
관계 | 관계 |
컬럼 변환시, primary UID -> 기본키
Secondary UID -> 유니크키로 변환
출처 : https://commons.wikimedia.org/
나머지 정렬들 특징
쉘정렬
입력파일을 매개변수 값으로 서브 파일을 구성하고, 각 서브파일을 Insertion sort로 배열 (삽입정렬의 확장 개념)
퀵정렬
- 키를 기준으로 작은 값은 왼쪽, 큰 값은 오른쪽 서브 파일에 분해시키는 과정
힙정렬(Heap Sort)
전이진 트리를 이용한 정렬 방식
2-way 합병 정렬(Merge Sort)
이미 정렬되어 있는 두개의 파일을 한 개의 파일로 합병하는 정렬 방식
기수 정렬 (Radix Sort = Bucket Sort)
queue를 사용하여 자릿수 별로 정렬하는 방식, 레코드 키값을 분석하여 같은 수, 문자끼리 순서에 맞는 버킷에 분배 후 버킷 순서대로 꺼내서 정렬