병렬 데이터베이스

병렬 데이터베이스(parallel database) 시스템은 데이터 적재, 색인 빌드, 쿼리 평가 등의 다양한 동작의 병렬 컴퓨팅을 통해 성능 개선을 강구한다. 데이터가 분산 방식으로 저장될지라도 분산은 성능적 고려에 의해 단독으로 처리된다. 병렬 데이터베이스들은 다중 중앙 처리 장치와 디스크를 병렬로 사용함으로써 처리 및 입출력 속도를 개선한다. 중앙 집중식 및 클라이언트 서버 모델 데이터베이스 시스템들은 이러한 응용을 다루기에 충분히 강력하지 않다. 병렬 처리에서 수많은 동작들은 계산 단계가 순차적으로 수행되는 직렬 처리와는 반대로 동시에 수행된다. 병렬 데이터베이스들은 대략적으로 2개의 그룹으로 나눌 수 있으며, 첫 번째 그룹은 멀티프로세서 아키텍처인데 대안은 다음과 같다:
공유 메모리 여러 프로세서가 주 메모리 (RAM) 공간을 공유하지만 각 프로세서는 자신만의 디스크(HDD)를 갖추고 있다. 수많은 프로세서가 동시에 수행되면 속도는 감소되며 이는 수많은 병렬 작업이 수행되어 컴퓨터가 느려지는 것과 동일하다.
공유 디스크 아키텍처 각 노드에 자체적으로 주 메모리가 있지만 모든 노드가 스토리지 에어리어 네트워크(SAN) 등의 대용량 스토리지를 공유하고 있다. 현실적으로 각 노드는 일반적으로 여러 개의 프로세서를 가질 수도 있다.
셰어드 나띵 아키텍처(Shared nothing architecture) 각 노드가 주 메모리 외에 자체 대용량 스토리지를 가지고 있다.

기타 아키텍처 그룹은 하이브리드 아키텍처로서 다음을 포함한다:
 NUMA(Non-Uniform Memory Architecture): 불균일 기억 장치 접근을 동반한다.
 클러스터 (셰어드 나띵 + 공유 디스크: SAN/NAS): 연결된 컴퓨터 그룹에 의해 형성된다.

병렬 처리의 종류 
 쿼리 간 병렬 처리(Interquery parallelism)
 독립적 병렬 처리(Independent parallelism)
 파이프라인 병렬 처리(Pipe-lined parallelism)
 동작 간 병렬 처리(Intraoperation parallelism)

각주 

데이터베이스 유형