블록 스토리지란 무엇인가요?

블록 스토리지는 데이터 스토리지와 스토리지 디바이스를 제어하는 기술입니다. 파일 또는 데이터베이스 항목과 같은 데이터를 가져와 동일한 크기의 블록으로 나눕니다. 그런 다음 블록 스토리지 시스템은 빠른 액세스 및 검색에 최적화된 방식으로 기본 물리적 스토리지에 데이터 블록을 저장합니다. 개발자들은 효율적이고 빠르고 신뢰할 수 있는 데이터 액세스가 필요한 애플리케이션에 블록 스토리지를 선호합니다. 블록 스토리지를 데이터에 대한 보다 직접적인 파이프라인으로 생각하세요. 반면, 파일 스토리지에는 데이터에 액세스하기 전에 처리할 파일 시스템(NFS, SMB)으로 구성된 추가 계층이 있습니다.

블록 스토리지의 이점은 무엇인가요?

조직에서는 다음과 같은 이점 때문에 블록 수준 스토리지를 사용합니다.

성능

메타데이터는 스토리지 시스템에 포함된 기본 데이터를 설명하는 추가 데이터입니다. 블록 스토리지는 제한된 메타데이터를 사용하지만 읽기/쓰기 작업을 위해 각 블록에 할당된 고유 식별자에 의존합니다. 이를 통해 데이터 전송 오버헤드가 줄어들고 서버가 블록 스토리지의 데이터를 효율적으로 액세스하고 검색할 수 있습니다. 블록 스토리지 메타데이터는 제한적이기 때문에 블록 스토리지는 고성능 워크로드에 필요한 매우 짧은 지연 시간을 제공합니다. 이는 데이터베이스와 같이 지연 시간에 민감한 애플리케이션에 필요합니다. 예를 들어, Viasat은 Amazon Elastic Block Store(Amazon EBS)를 사용하여 높은 처리량(높은 트랜잭션) 데이터를 캡처하고 스토리지 비용을 최적화합니다. 조직은 성능 및 비용 최적화, 규모 및 민첩성, EBS 스냅샷을 통한 데이터 보호를 위해 Amazon EBS를 사용합니다.

블록 스토리지 아키텍처는 데이터에 대한 다중 경로를 제공하는 반면 파일 스토리지는 하나의 경로만 제공하므로 고성능 애플리케이션에 블록 스토리지가 선호됩니다.

유연성 및 확장성

블록 스토리지 디바이스는 특정 네트워크 환경으로 제한되지 않습니다. Windows 또는 Linux와 같은 다양한 운영 체제에 대해 개별 블록을 구성할 수 있습니다. 개발자는 여러 환경에서 데이터를 공유하여 고가용성을 보장할 수 있습니다. 블록 스토리지 아키텍처도 확장성이 뛰어납니다. 개발자는 증가하는 용량 요구 사항을 충족하기 위해 기존 블록에 새 블록을 추가할 수 있습니다.

잦은 수정

블록 스토리지는 성능에 영향을 주지 않고 빈번한 데이터 쓰기를 지원합니다. 시스템은 전체 파일을 다시 작성하는 대신 수정이 필요한 특정 블록을 식별합니다. 그런 다음 선택한 블록을 새 데이터로 다시 작성합니다. 따라서 블록 스토리지는 잦은 업데이트가 필요한 대용량 파일을 관리하는 데 매우 효율적입니다.

세부적인 제어

개발자는 블록 스토리지에 데이터 저장을 세부적으로 제어할 수 있습니다. 예를 들어, 특정 블록에 빠르게 변화하는 데이터를 그룹화하고 다른 블록에 정적 파일을 저장하여 성능을 최적화할 수 있습니다. 이렇게 하면 지속적 업데이트가 전체 파일이 아닌 소수의 데이터 블록에만 영향을 주므로 시스템 성능이 향상됩니다. 예를 들어, 블록 스토리지는 최고의 성능을 위해 SSD(Solid State Disk)에 빠르게 변화하는 데이터를 계층화하고 저렴한 하드 드라이브(HDD)에 웜 또는 콜드 데이터를 저장할 수 있는 유연성을 제공합니다.

블록 스토리지의 사용 사례로 무엇이 있나요?

블록 스토리지의 고유한 특성으로 인해 트랜잭션, 미션 ​​크리티컬 및 I/O 집약적 애플리케이션에 선호되는 옵션입니다. 블록 스토리지는 관계형 또는 트랜잭션 데이터베이스, 시계열 데이터베이스, 컨테이너, 부팅 디스크, 하이퍼바이저 파일 시스템 등의 다양한 애플리케이션에 사용됩니다.

스토리지 영역 네트워크

개발자가 블록 스토리지를 스토리지 영역 네트워크(SAN)로 배포하는 경우가 많습니다. SAN은 블록 스토리지를 로컬로 연결된 디바이스인 것처럼 여러 네트워크 시스템에 제공하는 복잡한 네트워크 기술입니다. SAN은 일반적으로 파이버 채널 상호 연결을 사용합니다. 반대로 네트워크 연결 스토리지(NAS)는 이더넷을 통해 파일을 제공하는 단일 디바이스입니다.

SAN 아키텍처는 다음 3가지 계층으로 구성됩니다.

  • 호스트 계층은 스토리지 액세스를 관리하는 서버로 구성됩니다.
  • 스토리지 계층은 자기 테이프, 디스크 드라이브 또는 광 미디어와 같은 물리적 블록 스토리지 디바이스로 구성됩니다.
  • 패브릭 계층은 SAN 스위치, 프로토콜 브리지, 라우터, 케이블 및 게이트웨이 디바이스 등의 디바이스와 SAN 서버 및 SAN 스토리지를 연결합니다.

SAN은 동기식 또는 비동기식 장거리 복제를 사용하여 중복을 이용한다는 점에 유의해야 합니다. 이렇게 하면 지리적 위치에 액세스할 수 없는 경우 가동 중지 시간이 줄어듭니다.

SAN 아키텍처는 블록 스토리지를 포함하여 통합 환경에서 여러 유형의 스토리지와 작동할 수 있습니다. 블록 스토리지는 SAN의 파일 스토리지에 대한 고효율 대안을 제공합니다.

컨테이너

개발자는 블록 스토리지를 사용하여 컨테이너식 애플리케이션을 클라우드에 저장합니다. 컨테이너는 어느 컴퓨팅 환경에나 배포할 수 있는 애플리케이션과 해당 리소스 파일이 들어 있는 소프트웨어 패키지입니다. 컨테이너와 마찬가지로 블록 스토리지는 유연하고 확장 가능하며 효율적입니다. 블록 스토리지를 통해 개발자는 서버, 위치 및 운영 환경 간에 컨테이너를 원활하게 마이그레이션할 수 있습니다.

트랜잭션 워크로드

트랜잭션 워크로드는 비즈니스 프로세스의 특정 지점에서 생성되는 일련의 데이터입니다. 예를 들어, 판매 레코드, 작업 로그 및 로그인 알림은 트랜잭션 워크로드입니다. 시간에 민감한 미션 크리티컬 트랜잭션을 처리하는 조직은 이러한 워크로드를 지연 시간이 짧고 용량이 높으며 내결함성이 있는 데이터베이스에 저장합니다.

블록 스토리지를 통해 개발자는 강력하고 확장 가능하며 매우 효율적인 트랜잭션 데이터베이스를 설정할 수 있습니다. 각 블록은 자체 포함 단위이므로 저장된 데이터가 증가하더라도 데이터베이스는 최적의 성능을 발휘합니다. 또한 개별 스토리지 블록을 서로 다른 서버에서 호스팅할 수 있으므로 액세스 병목 현상이 발생하지 않습니다.

미션 크리티컬 애플리케이션에서 블록 스토리지는 데이터 중복을 보장하기 위해 RAID(Redundant Array of Independent Disks)로 보호됩니다. RAID 시스템은 보조 스토리지에 있는 데이터 파일을 백업하고 기본 디스크에 장애가 발생할 경우 사본을 복구합니다. 이를 통해 블록 스토리지에 트랜잭션 워크로드를 저장하고 검색할 때 애플리케이션이 중단 없이 유지됩니다.

분석 및 데이터 웨어하우징

블록 스토리지는 Hadoop의 Hadoop 분산 파일 시스템(HDFS) 아키텍처과 함께 사용되어 데이터를 독립적으로 분산된 단위로 저장하여 Hadoop 및 Kafka 분석 애플리케이션의 성능을 향상시킵니다.

가상 머신

가상 머신(VM) 은 컴퓨터가 소프트웨어 정의 컴퓨팅 리소스를 사용하여 별도의 운영 환경을 실행할 수 있도록 하는 기술입니다. 예를 들어, VM이 있는 Windows 데스크톱에서 Linux 운영 체제를 실행할 수 있습니다. 하이퍼바이저는 보조 운영 환경을 실행하는 데 필요한 메모리, 드라이브 및 컴퓨팅 서비스를 할당하는 추상화 계층입니다.

블록 스토리지는 널리 사용되는 VM 하이퍼바이저를 지원합니다. 사용자는 블록 스토리지 볼륨에 운영 체제, 파일 시스템 및 기타 컴퓨팅 리소스를 설치할 수 있습니다. 블록 스토리지 볼륨을 포맷하고 VM 파일 시스템으로 변환하여 이를 수행합니다. 이를 통해 가상 드라이브 크기를 쉽게 늘리거나 줄이고 가상화된 스토리지를 한 호스트에서 다른 호스트로 전송할 수 있습니다. 

블록 스토리지는 어떻게 작동하나요?

블록 스토리지 시스템에서는 데이터를 독립적인 고정 크기 블록 또는 조각으로 나눌 수 있습니다. 각 블록은 개별 데이터 스토리지입니다. 데이터 파일과 같은 완전한 정보는 순차적이지 않은 여러 블록에 저장됩니다.

블록 스토리지 시스템은 파일 유형, 소유권 및 타임스탬프와 같은 상위 수준의 메타데이터를 유지하지 않습니다. 개발자는 데이터 저장을 각 블록으로 관리하기 위해 애플리케이션 시스템에서 데이터 조회 테이블을 설계해야 합니다. 애플리케이션은 읽기/쓰기 효율성을 높이기 위해 서로 다른 운영 환경에 데이터를 저장할 수 있습니다.

데이터 쓰기

쓰기 시퀀스 중 애플리케이션은 데이터를 여러 블록 크기 섹션으로 분할합니다. 데이터를 여러 블록에 쓰고 블록의 식별자를 데이터 조회 테이블에 기록합니다. 조회 테이블을 사용하면 서버가 블록에 저장된 데이터의 상대 주소를 계산할 수 있습니다.

데이터 읽기

사용자가 블록 스토리지 시스템에서 특정 파일을 요청하면 서버는 데이터 조회 테이블을 사용하여 데이터 조각이 저장되는 위치를 확인합니다. 그런 다음 애플리케이션은 여러 블록에서 데이터를 검색하여 원래 순서로 병합합니다.

사용 가능한 다른 유형의 스토리지로 무엇이 있나요?

블록 스토리지 외에도 객체 및 파일 스토리지 옵션도 있습니다. 유형마다 고유한 이점이 있습니다.

객체 스토리지

객체 스토리지는 객체라고 하는 비정형 형식으로 데이터를 저장하고 관리하는 기술입니다. 각 객체에는 고유 식별자로 태그가 지정되며 기본 콘텐츠를 설명하는 메타데이터가 포함됩니다. 예를 들어, 사진의 객체 스토리지에는 사진 작가, 해상도, 형식 및 생성 시간에 관한 메타데이터가 포함됩니다. 개발자는 객체 스토리지를 사용하여 텍스트, 비디오 및 이미지와 같은 비정형 데이터를 저장합니다. 

블록 스토리지와 객체 스토리지 비교

두 스토리지 솔루션 모두 사용 사례에 따라 유용합니다. 블록 스토리지는 다양한 사용 사례에서 짧은 지연 시간과 고성능 값을 제공합니다. 이 기능은 주로 정형 데이터베이스 스토리지, VM 파일 시스템 볼륨, 대량의 읽기 및 쓰기 로드에 유용합니다. 객체 스토리지는 대량의 비정형 데이터에 가장 적합합니다. 특히 내구성, 무제한 스토리지, 확장성 및 복잡한 메타데이터 관리가 전체 성능과 관련된 요소인 경우 더욱 그렇습니다.

파일 스토리지

파일 스토리지는 파일 및 폴더의 계층 구조로 데이터를 저장합니다. 네트워크 환경에서 파일 기반 스토리지는 종종 NAS(Network-Attached Storage) 기술을 사용합니다. NAS를 사용하면 로컬 하드 드라이브와 유사한 방식으로 네트워크 스토리지 데이터에 액세스할 수 있습니다. 파일 스토리지는 사용자에게 친숙하며 사용자가 파일 공유 제어를 관리할 수 있습니다.

블록 스토리지와 파일 스토리지 비교

파일 스토리지 시스템은 특정 환경에 데이터를 저장하는 반면 블록 스토리지 시스템은 다른 운영 체제와 통합될 수 있습니다. 파일 스토리지는 최종 사용자 컴퓨팅을 위한 직관적 인터페이스를 제공합니다. 한편, 운영 지연 시간을 늘리지 않고 블록 스토리지 시스템에 새 데이터 블록을 추가할 수 있습니다. 

인스턴스 스토리지

인스턴스 스토어는 인스턴스에 블록 수준의 임시 스토리지를 제공합니다. 이 스토리지는 호스트 컴퓨터에 물리적으로 연결된 디스크에 있습니다. 인스턴스 스토어는 버퍼, 캐시, 스크래치 데이터 및 기타 임시 콘텐츠와 같이 자주 변경되는 정보의 임시 스토리지 또는 로드 밸런싱된 웹 서버 풀과 같이 인스턴스 플릿 전체에 복제되는 데이터에 이상적입니다.

인스턴스 스토어는 블록 디바이스로 노출되는 하나 이상의 인스턴스 스토어 볼륨으로 구성됩니다. 인스턴스 스토어의 크기와 사용 가능한 디바이스 수는 인스턴스 유형에 따라 다릅니다.

AWS가 블록 스토리지 요구 사항을 어떻게 지원할 수 있나요?

Amazon EBS는 클라우드 워크로드를 위한 사용하기 쉬운 블록 스토리지 솔루션입니다. 개발자는 Amazon EBS를 사용하여 Amazon Elastic Compute Cloud(Amazon EC2) 워크로드를 위한 영구 스토리지 서비스를 제공합니다.

  • Amazon EBS는 미션 크리티컬 및 I/O 집약적 애플리케이션을 위한 확장성이 뛰어난 스토리지 솔루션을 제공합니다.
  • Amazon EBS 스냅샷은 블록 스토리지 데이터 보호를 위한 쉽고 안전한 방법을 제공합니다.
  • 개발자는 SAP HANA, Oracle, Microsoft SQL Server, MySQL, Cassandra 및 MongoDB를 비롯한 다양한 유형의 데이터베이스를 Amazon EBS에 설치할 수 있습니다.

 

지금 무료 AWS 계정을 만들어 블록 스토리지를 시작하세요.

AWS 블록 스토리지의 다음 단계

무료 계정에 가입

AWS 프리 티어에 즉시 액세스할 수 있습니다. 

가입 
콘솔에서 구축 시작하기

AWS 관리 콘솔에서 구축을 시작하세요.

로그인