맨위로가기

병렬 데이터베이스

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

병렬 데이터베이스는 여러 개의 프로세서를 사용하여 데이터베이스 작업을 병렬로 처리하는 시스템이다. 병렬 처리의 종류에는 쿼리 간 병렬 처리, 독립적 병렬 처리, 파이프라인 병렬 처리, 동작 간 병렬 처리가 있다. 쿼리 간 병렬 처리는 독립적인 쿼리들을 동시에 처리하고, 독립적 병렬 처리는 서로 의존하지 않는 작업을 병렬로 처리한다. 파이프라인 병렬 처리는 파이프라인 형태로 연결된 작업의 각 단계를 병렬 처리하며, 동작 간 병렬 처리는 하나의 복잡한 작업을 여러 프로세서에서 병렬로 처리한다.

2. 병렬 처리의 종류

병렬 처리는 크게 쿼리 간 병렬 처리, 독립적 병렬 처리, 파이프라인 병렬 처리, 그리고 동작 간 병렬 처리로 나눌 수 있다.[4]


  • 쿼리 간 병렬 처리(Interquery parallelism): 여러 개의 쿼리를 동시에 처리한다.
  • 독립적 병렬 처리(Independent parallelism): 서로 독립적인 작업들을 병렬로 처리한다.
  • 파이프라인 병렬 처리(Pipe-lined parallelism): 여러 작업들을 파이프라인 방식으로 연결하여 처리한다.
  • 동작 간 병렬 처리(Intraoperation parallelism): 하나의 복잡한 작업을 여러 프로세서에서 병렬로 처리한다.


질의 내 병렬 처리는 여러 프로세서 또는 디스크를 사용하여 단일 쿼리를 병렬로 실행하는 것이다.[2] 연산 내 병렬 처리는 단일 연산을 여러 프로세서에서 병렬로 실행하는 것을 말한다.

2. 1. 쿼리 간 병렬 처리 (Interquery parallelism)

쿼리 간 병렬 처리는 여러 개의 독립적인 쿼리들을 동시에 병렬적으로 처리하는 방식이다.[4] 각 쿼리는 서로 다른 프로세서에서 실행될 수 있다.

2. 2. 독립적 병렬 처리 (Independent parallelism)

여러 개의 작업(operation)이 서로 의존 관계없이 독립적으로 실행될 수 있을 때, 각 작업을 다른 프로세서에 할당하여 병렬 처리하는 방식이다. 예를 들어, 네 개의 테이블을 조인해야 하는 경우 두 개는 한 프로세서에서 조인하고 다른 두 개는 다른 프로세서에서 조인할 수 있다. 최종 조인은 나중에 수행할 수 있다.[2]

2. 3. 파이프라인 병렬 처리 (Pipelined parallelism)

여러 개의 작업이 파이프라인 형태로 연결되어 있을 때, 각 단계를 서로 다른 프로세서에 할당하여 동시에 처리하는 방식이다. 앞 단계의 작업 결과가 완료되기를 기다리지 않고, 결과가 나오는 대로 다음 단계로 전달하여 처리한다.[4] 예를 들어, 세 개의 테이블을 조인해야 하는 경우 한 프로세서는 두 개의 테이블을 조인하고 결과 집합 레코드를 생성되는 대로 다른 프로세서로 보낼 수 있다. 다른 프로세서에서는 세 번째 테이블을 들어오는 레코드와 조인하여 최종 결과를 생성할 수 있다.

2. 4. 동작 간 병렬 처리 (Intraoperation parallelism)

하나의 복잡한 작업(operation)을 여러 개의 작은 작업으로 분할하여, 각 하위 작업을 여러 프로세서에서 병렬로 처리하는 방식이다. 예를 들어, 대용량 데이터 정렬(sort) 시, 데이터를 여러 부분으로 나누어 각 프로세서에서 정렬한 후, 결과를 병합할 수 있다.[2] 수백만 개의 레코드에 대해 실행하려는 쿼리의 ORDER BY 절은 여러 프로세서에서 병렬 처리될 수 있다.

참조

[1] 논문 Parallel database systems: The future of high performance database systems http://www.cs.berkel[...]
[2] 웹사이트 Parallel Database - Intraquery Parallelism - Advanced Database Management System http://www.exploreda[...] Blogger 2017-09-10
[3] 논문 Parallel database systems: The future of high performance database systems http://www.cs.berkel[...]
[4] 웹인용 Parallel Database - Intraquery Parallelism - Advanced Database Management System http://www.exploreda[...] 블로그 2017-09-10



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com