Skip to main content
QUICK REVIEW

[논문 리뷰] Main Memory Adaptive Indexing for Multi-core Systems

Víctor Álvarez, Felix Schuhknecht|arXiv (Cornell University)|2014. 04. 08.
Data Management and Algorithms참고 문헌 17인용 수 15
한 줄 요약

이 논문은 다중 코어 환경에서 적응형 색인 기법보다 성능이 뛰어난 정렬 기반 접근 방식이 가능함을 보여주는 세 가지 새로운 병렬 적응형 색인 알고리즘—Parallel-Chunked Standard Cracking (P-CSC), Parallel-Chunked Coarse-Granular Index (P-CCGI), Parallel-Range-Partitioned Sorting (P-CRS)—과 NUMA 인식 하이브리드 정렬 방법을 제안한다. 주요 발견은 P-CCGI가 가장 낮은 누적 쿼리 응답 시간을 기록하며, P-CRS와 P-RPRS는 특히 약 500개 이상의 쿼리에서 뛰어난 확장성과 성능을 보여, 고도로 병렬화된 워크로드에서 적응형 색인의 지배적 우월성을 도전한다.

ABSTRACT

Adaptive indexing is a concept that considers index creation in databases as a by-product of query processing; as opposed to traditional full index creation where the indexing effort is performed up front before answering any queries. Adaptive indexing has received a considerable amount of attention, and several algorithms have been proposed over the past few years; including a recent experimental study comparing a large number of existing methods. Until now, however, most adaptive indexing algorithms have been designed single-threaded, yet with multi-core systems already well established, the idea of designing parallel algorithms for adaptive indexing is very natural. In this regard only one parallel algorithm for adaptive indexing has recently appeared in the literature: The parallel version of standard cracking. In this paper we describe three alternative parallel algorithms for adaptive indexing, including a second variant of a parallel standard cracking algorithm. Additionally, we describe a hybrid parallel sorting algorithm, and a NUMA-aware method based on sorting. We then thoroughly compare all these algorithms experimentally; along a variant of a recently published parallel version of radix sort. Parallel sorting algorithms serve as a realistic baseline for multi-threaded adaptive indexing techniques. In total we experimentally compare seven parallel algorithms. Additionally, we extensively profile all considered algorithms. The initial set of experiments considered in this paper indicates that our parallel algorithms significantly improve over previously known ones. Our results suggest that, although adaptive indexing algorithms are a good design choice in single-threaded environments, the rules change considerably in the parallel case. That is, in future highly-parallel environments, sorting algorithms could be serious alternatives to adaptive indexing.

연구 동기 및 목표

  • 코어 수 증가에 따라 확장 가능한 효율적인 병렬 적응형 색인 알고리즘을 설계하여 다중 코어 데이터베이스 시스템에서 발생하는 성능 격차를 해소하는 것.
  • 정렬 기반 방법이 병렬 환경에서 적응형 색인의 실질적이고, 잠재적으로 슈퍼어리어한 대안이 될 수 있는지 평가하는 것.
  • 다양한 변종, 특히 NUMA 인식 및 하이브리드 정렬 기법을 포함하여 병렬 색인 알고리즘 중 가장 효율적인 것을 규명하는 것.
  • 모든 알고리즘에서 캐시 미스, NUMA 영향, 잠금 오버헤드와 같은 시스템 수준의 병목 현상을 분석하여 아키텍처 최적화를 안내하는 것.
  • 다양한 워크로드 하에서 총 쿼리 응답 시간 측면에서 정렬 기반 방법이 적응형 색인을 앞서는 전환점(티핑 포인트)을 규명하는 것.

제안 방법

  • 표준 크래킹의 쓰레드 수준 병렬화인 Parallel-Chunked Standard Cracking (P-CSC)를 제안하며, 데이터를 청크로 나누어 동시 처리하도록 한다.
  • 범위 파artitioning을 색인 이전에 적용하여 수렴 속도를 향상시키고 초기 응답 시간을 감소시키는 Parallel-Chunked Coarse-Granular Index (P-CCGI)를 도입한다.
  • 공간 효율적이고 확장 가능한 정렬 변종인 Parallel-Range-Partitioned Radix Sort (P-RPRS)를 개발하여, 적응형 색인의 고성능 기준선을 제공한다.
  • 적응형 색인 원칙과 정렬을 융합한 하이브리드 병렬 정렬 알고리즘(P-CRS)을 설계하여, 초기 정렬 이후 빠른 쿼리 처리를 가능하게 한다.
  • 비균일 메모리 아키텍처에서 지연 시간을 줄이고 캐시 국소성을 향상시키기 위해 메모리 노드 간 데이터를 분할하는 NUMA 인식 정렬 전략을 적용한다.
  • 모든 알고리즘에서 대역폭 활용도, 캐시 미스, NUMA 영향, 잠금 오버헤드를 측정하기 위해 광범위한 프로파일링을 수행하여 성능 병목을 규명한다.

실험 결과

연구 질문

  • RQ1증가하는 스레드 수 조건에서 병렬 적응형 색인 알고리즘의 초기 응답 시간과 누적 쿼리 시간은 어떻게 비교되는가?
  • RQ2정렬 기반 방법이 다중 코어 시스템에서 특히 쿼리 수가 증가함에 따라 적응형 색인을 능가할 수 있는가?
  • RQ3병렬 정렬 및 색인 알고리즘에서 NUMA 인식 데이터 파artitioning의 성능에 미치는 영향은 무엇인가?
  • RQ4캐시 미스, 메모리 대역폭, 잠금 오버헤드와 같은 시스템 수준의 요소들이 병렬 적응형 색인의 확장성에 미치는 영향은 어떠한가?
  • RQ5다중 코어 환경에서 정렬 기반 방법의 총 쿼리 응답 시간이 적응형 색인을 앞서는 전환점은 언제인가?

주요 결과

  • Parallel-Chunked Coarse-Granular Index (P-CCGI)는 가장 낮은 누적 쿼리 응답 시간을 기록하며, 약 10개 쿼리 이후 모든 다른 알고리즘을 능가한다.
  • Parallel-Chunked Standard Cracking (P-CSC)는 가장 빠른 초기 응답 시간을 보이지만, 수렴 속도가 느려 약 10개 쿼리 이후 P-CCGI에 뒤지게 된다.
  • Parallel-Range-Partitioned Radix Sort (P-RPRS)는 스레드 수에 따라 거의 선형으로 확장되며, 표준 병렬 라이드 소트보다 훨씬 적은 추가 공간을 필요로 한다.
  • 하이브리드 정렬 기반 알고리즘인 P-CRS는 전체 정렬과 유사한 초기 응답 시간을 기록하며, 쿼리 수가 증가함에 따라 빠르게 가장 빠른 방법 중 하나가 된다.
  • 가장 빠른 적응형 색인 방법(P-CSC)과 가장 빠른 정렬 기반 방법(P-CRS) 간의 전환점은 약 500개 쿼리 근처로 이동하며, 이는 고병렬성 시나리오에서 정렬 기반 방법이 지배적일 수 있음을 시사한다.
  • 프로파일링 결과, P-RPRS와 P-CRS는 정렬 단계에서 CPU에 의존하는 것으로 나타나, 향후 스레드 수를 더 늘리면 전환점이 더욱 이르게 이동할 수 있음을 시사한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.