Qumulo의 분산 파일 시스템

확장 가능한 블록 스토어(SBS)

Qumulo 확장 가능 블록 스토어(SBS)

Qumulo 파일 시스템은 Qumulo Scalable Block Store(SBS)라고 하는 강력한 최첨단 데이터 관리 시스템을 기반으로 합니다. SBS는 대규모로 확장 가능한 분산 데이터베이스의 원칙을 사용하며 파일 기반 데이터의 특수한 요구 사항에 최적화되어 있습니다.

확장 가능한 블록 저장소는 Qumulo 파일 시스템의 블록 계층으로, 해당 파일 시스템을 구현하기 쉽고 매우 강력합니다. SBS는 또한 파일 시스템을 제공합니다. 대규모 확장성, 최적화된 성능 및 데이터 보호.

다음은 SBS 내부의 개요입니다. 

SBS는 보호된 스토리지 블록의 트랜잭션 가상 계층을 제공합니다. 모든 파일이 자체적으로 보호를 파악해야 하는 시스템 대신 파일 시스템 아래 블록 수준에서 데이터 보호가 존재합니다.

SBS에서 구현한 Qumulo의 블록 기반 보호는 페타바이트 규모의 데이터와 파일 크기가 혼합된 워크로드가 있는 환경에서 뛰어난 성능을 제공합니다. SBS에는 다음과 같은 많은 이점이 있습니다.

  • 디스크 드라이브 고장 시 빠른 재구축 시간
  • 재구축 작업 중에 정상적인 파일 작업을 계속하는 기능
  • 일반 파일 쓰기와 재구축 쓰기 간의 경합으로 인한 성능 저하 없음
  • 작은 파일과 큰 파일을 위한 동일한 스토리지 효율성
  • 사용 가능한 공간의 정확한 보고
  • Qumulo 클러스터를 수백 개의 노드로 확장할 수 있는 효율적인 트랜잭션
  • 아카이브 가격으로 플래시 성능을 제공하는 기본 제공 핫/콜드 데이터 계층화.

SBS가 이러한 이점을 달성하는 방법을 이해하려면 작동 방식을 살펴볼 필요가 있습니다.

보호된 가상 블록

Qumulo 클러스터의 전체 스토리지 용량은 개념적으로 아래와 같이 보호되는 단일 가상 주소 공간으로 구성됩니다.

해당 공간 내의 보호된 각 주소는 4K 바이트 블록을 저장합니다. "보호됨"이란 여러 디스크에 장애가 발생하더라도 모든 블록을 복구할 수 있음을 의미합니다. 디렉토리 구조, 사용자 데이터, 파일 메타데이터, 분석 및 구성 정보를 포함하여 전체 파일 시스템은 SBS에서 제공하는 보호된 가상 주소 공간 내에 저장됩니다.

즉, 보호 저장소는 파일 시스템과 연결된 블록 장치에 기록된 블록 기반 데이터 간의 인터페이스 역할을 합니다. 이러한 장치는 SSD와 HDD를 결합하여 형성된 가상 디스크이거나 클라우드의 블록 스토리지 리소스일 수 있습니다.

보호된 주소 공간의 블록은 Qumulo 클러스터의 모든 노드(또는 인스턴스)에 분산되어 있습니다. 그러나 Qumulo 파일 시스템은 완전히 보호된 블록의 선형 배열만 봅니다.

거래 내역

확장 가능한 블록 스토리지에서 보호된 가상 주소 공간에 대한 읽기 및 쓰기는 트랜잭션입니다.

즉, 예를 들어 파일 시스템 작업에 둘 이상의 블록이 포함된 쓰기 작업이 필요한 경우 작업은 모든 관련 블록을 쓰거나 아무 것도 쓰지 않습니다.

원자적 읽기 및 쓰기 작업은 데이터 일관성과 SMB 및 NFS와 같은 파일 프로토콜의 올바른 구현에 필수적입니다. 최적의 성능을 위해 SBS는 병렬 처리 및 분산 컴퓨팅을 최대화하는 동시에 I/O 작업의 트랜잭션 일관성을 유지하는 기술을 사용합니다. 예를 들어 SBS는 병렬이 아닌 순차적으로 작업이 진행되는 직렬 병목 현상을 방지하도록 설계되었습니다. SBS의 트랜잭션 시스템은 미리 쓰기 로깅, 실행 취소 작업 중 반복 기록 및 실행 취소 작업 로깅을 포함하여 비차단 트랜잭션에 ARIES 알고리즘의 원칙을 사용합니다.

그러나 SBS의 트랜잭션 구현은 ARIES와 몇 가지 중요한 차이점이 있습니다. SBS는 트랜잭션이 오래 지속되는 범용 데이터베이스와 달리 Qumulo 파일 시스템에 의해 시작된 트랜잭션이 예측할 수 있을 정도로 짧다는 사실을 이용합니다. 단기 트랜잭션 사용 패턴을 통해 SBS는 효율성을 위해 트랜잭션 로그를 자주 트리밍할 수 있습니다. 단기 트랜잭션을 사용하면 더 빠른 약정 주문이 가능합니다.

또한 SBS의 트랜잭션은 고도로 분산되어 있으며 각 트랜잭션 로그 항목에 대해 전역적으로 정의된 ARIES 스타일 시퀀스 번호의 전체 순서가 필요하지 않습니다. 대신 트랜잭션 로그는 각 bstore에서 로컬로 순차적으로 이루어지며 약정 순서 제약을 고려하는 부분 순서 체계를 사용하여 전역 수준에서 조정됩니다.

Qumulo DB는 2PL(XNUMX-Phase Locking) 프로토콜을 사용하여 일관된 커밋 순서를 위한 직렬성을 구현합니다. 직렬화 가능한 연산은 분산 처리 장치(bstores)에 의해 수행되며 의도한 연산 순서가 사후에 재구성될 수 있다는 속성이 있습니다.

SBS 접근 방식의 장점은 트랜잭션 I/O 작업에 절대 최소의 잠금이 사용되며 이를 통해 Qumulo 클러스터를 수백 개의 노드로 확장할 수 있다는 것입니다.

자세한 내용을 원하십니까?

10분의 시간을 주시면 스토리지 데이터를 재고하는 방법을 알려드리겠습니다.