Skip to main content
QUICK REVIEW

[논문 리뷰] A Billion Updates per Second Using 30,000 Hierarchical In-Memory D4M Databases

Jeremy Kepner, Vijay Gadepally|arXiv (Cornell University)|2019. 02. 03.
Advanced Data Storage Technologies참고 문헌 21인용 수 5
한 줄 요약

이 논문은 MIT SuperCloud의 1,100台 서버와 30,000개의 인스턴스를 사용하여 초당 19억 건의 업데이트를 달성하는 계층적 메모리 내부 D4M 연관 배열 시스템을 제시한다. 메모리 계층 구조를 고려한 구조로 배열을 구성함으로써 고속 메모리 계층에서의 빠른 업데이트와 효율적인 집계를 최적화하여 대규모 스트리밍 네트워크 데이터를 실시간으로 대규모로 분석할 수 있도록 한다.

ABSTRACT

Analyzing large scale networks requires high performance streaming updates of graph representations of these data. Associative arrays are mathematical objects combining properties of spreadsheets, databases, matrices, and graphs, and are well-suited for representing and analyzing streaming network data. The Dynamic Distributed Dimensional Data Model (D4M) library implements associative arrays in a variety of languages (Python, Julia, and Matlab/Octave) and provides a lightweight in-memory database. Associative arrays are designed for block updates. Streaming updates to a large associative array requires a hierarchical implementation to optimize the performance of the memory hierarchy. Running 34,000 instances of a hierarchical D4M associative arrays on 1,100 server nodes on the MIT SuperCloud achieved a sustained update rate of 1,900,000,000 updates per second. This capability allows the MIT SuperCloud to analyze extremely large streaming network data sets.

연구 동기 및 목표

  • 대규모 스트리밍 네트워크 데이터에 대한 고성능, 실시간 분석을 가능하게 하기 위해.
  • 동적 네트워크를 표현하는 데 사용되는 큰 연관 배열을 업데이트할 때 발생하는 성능 저하 문제를 해결하기 위해.
  • 느린 메모리 왤쓰를 최소화하는 계층적 데이터 구조를 통해 메모리 계층 활용도를 최적화하기 위해.
  • 초당 테라바이트 단위의 네트워크 트래픽을 처리할 수 있는 확장성 있고 상호작용 가능한 분석 플랫폼을 구현하기 위해.
  • 데이터베이스, 행렬, 그래프를 하나의 수학적 프레임워크로 통합하여 네트워크 분석에 활용하기 위해.

제안 방법

  • 각 레이어가 비제로 요소의 부분집합을 관리하는 계층적 연관 배열을 사용하며, 업데이트 작업은 고속 메모리 레이어에서 수행된다.
  • 레이어의 크기가 사전 정의된 임계값 $ c_i $ 를 초과하면, 해당 레이어의 내용이 다음 상위 레이어로 집계되고, 현재 레이어는 초기화된다.
  • D4M 라이브러리는 파이썬, 줄리아, MATLAB/Octave에서 연관 배열을 구현하여 고수준 과학 계산 환경과의 통합을 가능하게 한다.
  • 시스템은 MIT SuperCloud의 1,100노드 클러스터를 활용하여 계층적 D4M 배열의 34,000개 인스턴스를 수천 개의 코어에 분산한다.
  • 모든 쿼리는 모든 레이어를 하나의 논리적 배열로 합쳐서 해결되며, 일관성과 정확성을 보장한다.
  • 연관 배열의 수학적 성질(닫힘성, 교환법칙, 결합법칙, 분배법칙)을 활용하여 정확성과 확장성을 확보한다.

실험 결과

연구 질문

  • RQ1계층적 메모리 내 연관 배열 시스템이 대규모 스트리밍 네트워크 데이터에 대해 밀리초 이내의 업데이트 속도를 달성할 수 있는가?
  • RQ2메모리 계층 레이어에 따라 연관 배열을 구성함으로써 평탄한 메모리 기반 또는 디스크 기반 시스템에 비해 성능이 어떻게 향상되는가?
  • RQ3대규모 슈퍼컴퓨팅 클러스터에서 분산된 계층적 D4M 구현을 통해 도달할 수 있는 최대 지속 업데이트 속도는 얼마인가?
  • RQ4연관 배열 대수는 어떤 정도로 데이터베이스, 행렬, 그래프 연산을 통합하여 대규모 네트워크 분석에 활용할 수 있는가?
  • RQ5고처리량 동시 스트리밍 업데이트 상황에서 시스템은 정확성과 일관성을 어떻게 유지하는가?

주요 결과

  • 시스템은 MIT SuperCloud의 1,100개 서버 노드에서 지속적인 업데이트 속도로 초당 1,900,000,000건의 업데이트를 달성했다.
  • 계층적 설계 덕분에 느린 메모리에 대한 왤쓰 수를 줄여 bulk 업데이트를 상위 레이어로 이관함으로써 성능 향상이著격하게 했다.
  • 서버 수 증가에 따라 성능 곡선을 통해 시스템의 효과적인 확장성이 입증되었다.
  • 연관 배열의 사용 덕분에 SQL, NoSQL, NewSQL 방식의 연산이 하나의 수학적 프레임워크 내에서 원활하게 통합되었다.
  • 수천 개의 코어를 활용해 수분 내에 대규모 네트워크 데이터셋을 상호작용적으로 분석할 수 있어 실용적인 확장성을 입증했다.
  • 이전의 Accumulo, SciDB, Oracle TPC-C, CrateDB 등과 같은 시스템에 비해 업데이트 처리량에서 뛰어난 성능을 보였다.

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

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

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

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