Netezza Native Cloud Object Storage(NCOS) 지원 소개

스토리지 스택에 선이 있는 클라우드 아이콘의 디지털 일러스트

작성자

Brajesh Pandey

STSM, Chief Architect, Netezza

IBM

Daniel Hancock

IBM

Principal Data and AI Specialist, Worldwide Technical Sales

Harish Mara

Senior Backend Developer

IBM

Kiran Kumar Gahlot

QA/Test Developer

Samuel Patterson

Senior Software Engineer

Shawn Rackley

Software Development

Netezza는 엔진 내에서 직접 Cloud Object Storage 지원을 도입하여 현대화 여정에서 큰 도약을 이루었습니다.

이 강력한 새 기능을 통해 사용자는 S3 호환 오브젝트 스토리지에서 Netezza 데이터 형식으로 사용자 테이블을 생성하여 새로운 차원의 확장성, 유연성 및 비용 효율성을 실현할 수 있습니다.

중요한 이유

이 개선 사항은 단순한 기술 업그레이드 그 이상으로, Netezza가 클라우드 네이티브 아키텍처의 이점을 최대한 활용할 수 있게 한 전략적 변화입니다. Netezza는 오브젝트 스토리지를 기본적으로 통합하여 다음을 지원합니다.

  • 엄청난 확장성: 오브젝트 스토리지는 사실상 제한 없이 확장할 수 있으므로 빅데이터 워크로드에 이상적입니다.
  • 비용 효율성: 기존 블록 스토리지에 비해 스토리지 비용이 낮습니다.
  • 데이터 공유 및 중복: 협업이 더 쉬워지고 중복성이 줄어듭니다.
  • 향상된 내구성 및 복원력: 클라우드 지역 전반에 걸쳐 내결함성이 내장됩니다.

하이브리드 스토리지 계층 구조

이 새로운 기능은 Netezza의 기존 블록 스토리지 지원을 보완하여 하이브리드 스토리지 계층을 형성합니다. 이제 사용자는 워크로드를 블록 스토리지에서 오브젝트 스토리지로 원활하게 전환하여 클라우드 네이티브 배포로 더 원활하게 마이그레이션할 수 있습니다.

이 하이브리드 모델은 데이터 인프라를 현대화하는 동시에 성능과 비용을 최적화하려는 고객에게 획기적인 변화를 가져올 것입니다.

아키텍처 및 현대화

Netezza는 현재 AWS 및 Azure와 같은 주요 클라우드 플랫폼에서 SaaS 및 BYOC(Bring Your Own Cloud) 제품으로 사용할 수 있습니다. 이러한 퍼블릭 클라우드 플랫폼은 저렴하고 확장 가능하며 뛰어난 기능을 갖춘 오브젝트 스토리지를 제공합니다. 예를 들어, AWS S3는 AWS 클라우드 계정을 통해 배포할 수 있으며 비용을 최소화하면서 확장성이 매우 뛰어난 인기 있는 오브젝트 스토리지 서비스입니다. 버전 관리, 중복성 및 액세스 제어를 위해 스토리지 버킷을 구성할 수도 있습니다.

하이브리드 스토리지 접근 방식을 사용하면 고객은 생성 중에 테이블의 스토리지 유형을 선택적으로 지정할 수 있습니다. DDL에 정의된 스토리지 유형이 없는 경우 Netezza는 구성 가능한 데이터베이스의 기본 설정 또는 기본 시스템 구성에 따라 스토리지 유형을 자동으로 선택합니다.

Netezza는 분산 컴퓨팅 및 MPP 아키텍처의 개념을 기반으로 계속 구축되고 있습니다. 

스토리지 유형은 NPS 프런트 엔드에 대해 불투명합니다. 즉, 사용자는 기본 스토리지 유형에 대한 걱정 없이 테이블을 쿼리하고 결합할 수 있어야 합니다.

Netezza 스토리지 엔진 현대화

Netezza는 오브젝트 스토리지를 제공하는 동시에 데이터와 워크로드를 블록 스토리지에서 오브젝트 스토리지로 쉽게 전환할 수 있도록 블록 스토리지를 지속적으로 지원합니다. 오브젝트 스토리지가 구성되면 고객은 새로 생성된 테이블의 스토리지 유형을 선택할 수 있습니다. 필요에 따라 간단한 SQL을 사용하여 오브젝트 스토리지와 블록 스토리지 간에 데이터를 복사할 수 있습니다.

사용자는 각 NPS 인스턴스에 대해 별도의 버킷을 만들어야 합니다. 

테이블 오브젝트 이름 지정 및 삭제

오브젝트 저장소에 저장된 각 오브젝트는 다음의 구조화된 접두사 형식을 따릅니다.

 “/nps/<instance name>/<dbuuid>/<dsid>”.

오브젝트 스토리지에는 테이블 및 메타데이터에 해당하는 오브젝트가 포함되어 있습니다. 각 데이터 슬라이스에는 자체 메타데이터 개체가 있습니다. 메타데이터는 IO 지연 시간을 개선하기 위해 대형 버퍼에 저장됩니다.

Netezza의 오브젝트 스토리지 아키텍처에서는 테이블이 삭제되거나 잘리거나 그루밍되어 생성된 오브젝트와 같이 더 이상 사용되지 않는 오브젝트는 삭제 목록 오브젝트를 사용하여 추적합니다. 이 목록은 해당 작업 중에 생성됩니다. 그런 다음 비동기 가비지 클리너가 오브젝트 저장소에서 해당 오브젝트의 실제 삭제를 수행합니다.

즉, Netezza는 백그라운드에서 자동으로 정리를 처리하여 수동 개입 없이 효율적인 스토리지 관리를 보장합니다.

로컬 SSD 캐싱

Netezza의 성능을 향상하고 운영 비용을 줄이기 위해 오브젝트 스토리지는 로컬 캐싱을 활용합니다. 이 캐싱 계층은 짧은 지연 시간과 높은 처리량을 제공합니다. Netezza 스토리지 엔진을 위해 특별히 개발된 맞춤형 캐싱 구현을 통해 신속한 반복과 Netezza 전용 아키텍처와의 긴밀한 통합이 가능합니다.

Netezza 사용자를 위한 오브젝트 스토리지 주요 내용

Netezza의 기본 오브젝트 스토리지 통합은 기존 워크플로나 애플리케이션을 중단하지 않고도 사용자에게 강력한 이점을 제공합니다. 다음은 몇 가지 주요 이점입니다.

  1. 고객 애플리케이션 변경 없음: 블록 스토리지 테이블용으로 구축된 애플리케이션은 오브젝트 스토리지 테이블과 원활하게 계속 작동하며, 노코드 변경이나 재구성이 필요하지 않습니다.
  2. 완벽한 SQL 호환성: 모든 Netezza SQL 구문, 도구 및 운영 기능은 오브젝트 스토리지 테이블과 동일하게 작동하므로 사용자는 두 스토리지 유형 모두에서 일관된 동작을 경험할 수 있습니다.
  3. 확장성 향상: 용량과 IOPS 모두에 있어 클라우드 오브젝트 스토리지의 고유한 확장성을 활용하므로, 증가하는 작업 부하와 대규모 데이터 세트에 이상적입니다.
  4. 투명한 비용 모델: 사용자에게 실제 사용량(스토리지 및 API 호출)을 기준으로 요금이 청구되므로 비용 관리를 개선하고 예측 가능성을 높일 수 있습니다.
  5. 시간 경과에 따른 가격 및 성능 최적화: Netezza는 고성능 로컬 캐싱 및 일괄 쓰기와 같은 기술을 사용하여 API 오버헤드를 줄입니다. 이러한 최적화는 특히 읽기가 많은 분석 워크로드의 경우 더 낮은 운영 비용으로 더 나은 성능을 제공하는 데 도움이 됩니다.

블록 스토리지와 오브젝트 스토리지의 성능 특성 비교

오브젝트 스토리지의 효율성과 신뢰성을 평가하기 위해 읽기 전용 쿼리, 혼합 분석 작업, 쓰기 집약적인 작업, 동시 다중 사용자 시나리오 등 다양한 워크로드가 실행되었습니다.

주요 특징:

  • 블록 스토리지와의 성능 동등성: 오브젝트 스토리지는 다양한 워크로드 유형에서 기존 블록 스토리지와 비슷한 성능을 보였습니다.
  • 더욱 빠른 일괄 쓰기 성능: 최적화된 캐싱 및 쓰기 전략 덕분에 쓰기 작업이 많은 작업, 특히 일괄 삽입 작업의 처리량이 향상되었습니다.
  • 시간 경과에 따른 스토리지 비용 절감: API 사용을 포함하여 이러한 워크로드를 실행하는 데 드는 총 비용이 블록 스토리지에 비해 오브젝트 스토리지에서 지속적으로 낮았기 때문에 장기 데이터 관리에 더 비용 효율적인 솔루션입니다.

사용자 경험

Netezza는 네이티브 오브젝트 스토리지를 지원하기 위해 storagetype 키워드를 도입하여 사용자가 다양한 구성 수준에서 원하는 스토리지 유형을 지정할 수 있도록 합니다.

1.   스토리지 유형 해결 계층: CREATE TABLE 문에 테이블 수준이 지정된 경우 테이블은 정의된 스토리지 유형을 사용합니다.

2.  Example: CREATE TABLE t1 (c1 INT) storagetype ‘object’;세션 수준:  테이블 수준에서 지정하지 않으면 스토리지 유형이 세션에서 상속됩니다. 예시:

               SET default_storage_type = ‘object’;

               CREATE TABLE t1 (c1 INT)

3. 데이터베이스 수준: 세션 수준에서 지정하지 않으면 스토리지 유형은 데이터베이스에서 상속됩니다. 예시:

CREATE DATABASE db1 storagetype ‘object’;

ALTER DATABASE db1 storagetype ‘object’;

4. 글로벌 설정: 데이터베이스 수준에서도 지정하지 않으면 시스템은 시스템 구성에 설정된 글로벌 기본 스토리지 유형으로 돌아갑니다. 예시:

SET default_storage_type = ‘object’;

이 계층 구조는 배포 전반에 걸쳐 일관성을 유지하면서 유연성을 보장합니다.

가용성 업데이트

Native Cloud Object Storage for Netezza on AWS가 이제 공개 미리 보기로 제공되며, 2025년 4분기에 AWS와 Azure에 정식 출시될 예정입니다.

일관성 있는 사용자 경험 유지

Netezza는 이제 네이티브 클라우드 오브젝트 스토리지를 지원하므로 사용자는 S3 호환 클라우드 스토리지에서 직접 테이블을 생성하고 관리할 수 있습니다. 블록 스토리지와 오브젝트 스토리지를 결합한 이 하이브리드 모델은 확장성 향상, 비용 절감 및 원활한 SQL 호환성을 제공합니다.

Netezza는 캐싱, 비동기식 정리 및 storagetype 키워드를 통한 유연한 스토리지 구성을 통해 일관된 사용자 경험을 유지하면서 향상된 가격 대비 성능을 제공합니다. Netezza NCOS 공개 미리 보기는 사용자들이 열광할 새로운 기능의 물결에 박차를 가할 수 있는 견고한 기반입니다. 

사용자는 워크로드를 실행하여 오브젝트 스토리지를 탐색하고 데이터 및 워크로드 요구 사항에 가장 적합한 균형을 결정하는 것이 좋습니다.

지금 바로 살펴보기