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互換のObject Storage上にNetezzaデータ形式のユーザー・テーブルを作成できるようになり、拡張性、柔軟性、コスト効率の新しいレベルが解き放たれます。

重要な理由

この機能強化は単なる技術的なアップグレードではありません。Netezzaがクラウドネイティブ・アーキテクチャーのメリットを活用できるようにするための戦略的変更です。Netezzaは、Object Storageをネイティブに統合することで、次のことを実現します。

  • 大規模な拡張性:Object Storageは事実上無制限に拡張できるため、ビッグデータのワークロードに最適です。
  • 費用対効果:従来のBlock Storageと比較してストレージ・コストが削減されます。
  • データの共有と重複排除:コラボレーションを容易にし、冗長性を削減します。
  • 耐久性とレジリエンスの強化:クラウド・リージョン全体にわたる組み込みのフォールト・トレランスを実現します。

ハイブリッド・ストレージ階層

この新機能は、Netezzaの既存のBlock Storageサポートを補完し、ハイブリッド・ストレージを形成します。ユーザーはワークロードをブロックからObject Storageにシームレスに移行できるようになり、クラウドネイティブ・デプロイメントへのスムーズな移行パスが可能になります。

このハイブリッド・モデルは、データ・インフラストラクチャーをモダナイズしながら、性能とコストの最適化を目指すお客様にとって画期的なモデルです。

アーキテクチャとモダナイゼーション

Netezzaは現在、AWSやAzureなどの主要なクラウド・プラットフォームでSaaSおよびBring Your Own Cloud(BYOC)製品として利用できます。これらのクラウド・プラットフォームは、安価でスケーラブルかつ高性能なObject Storageを提供します。例えば、AWS S3は、AWSクラウドを通じてデプロイできる人気のObject Storageであり、コストを最小限に抑えながら非常に優れた拡張性を実現します。また、バージョン管理、冗長性、アクセス制御のためにストレージ・バケットを構成することもできます。

ハイブリッド・ストレージ・アプローチでは、お客様はテーブル作成時にテーブルのストレージ・タイプをオプションで指定できます。DDLでストレージ・タイプが定義されていない場合、Netezzaは構成可能なデータベースのデフォルト設定またはデフォルトのシステム構成に基づいて、ストレージ・タイプを自動的に選択します。

Netezzaは分散コンピューティングとMPPアーキテクチャーの概念に基づいて構築されていきます。

ストレージ・タイプは、NPSフロントエンドに対して不透明です。これは、ユーザーが基盤となるストレージ・タイプを気にせずにテーブルにクエリを実行して結合できるようにすることを意味します。

Netezzaストレージ・エンジンのモダナイゼーション

NetezzaはObject Storageを提供する一方で、Block StorageからObject Storageへのデータとワークロードの移行を容易にするために、Block Storageを引き続きサポートします。Object Storageが構成されると、顧客は新しく作成されたテーブルのストレージ・タイプを選択できます。シンプルなSQLを使用して、Object StorageとBlock Storageの間で必要に応じてデータをコピーできます。

ユーザーは、NPSインスタンスごとに個別のバケットを作成する必要があります。

テーブルオブジェクトの名前付けと削除

オブジェクト保管に格納される各オブジェクトは、構造化されたプレフィックス形式

「/nps/<instance name>/<dbuuid>/<dsid>」に従っています。

Object Storageには、テーブルとメタデータに対応するオブジェクトが含まれています。各データ・スライスには独自のメタデータ・オブジェクトがあります。メタデータは、IOのレイテンシーを改善するために大きなバッファーに保管されます。

NetezzaのObject Storageアーキテクチャーでは、ドロップされたテーブル、切り捨てられたテーブル、またはグルーミングされたテーブルから生じるようなオブジェクトが、削除リスト・オブジェクトを使用して追跡されます。このリストは、これらのオペレーション中に生成されます。次に、非同期ガーベッジ・クリーナーが、オブジェクト保管からのオブジェクトを実際に削除します。

このため、Netezzaはバックグラウンドで自動的にクリーンアップを処理し、手動介入を必要とせずに効率的なストレージ管理を実現します。

ローカルSSDキャッシュ

パフォーマンスを向上させ、運用コストを削減するために、NetezzaのObject Storageはローカルキャッシュを活用します。このキャッシュ層は、低遅延と高いスループットを実現します。カスタム・キャッシング実装は、Netezzaストレージ・エンジン専用に開発されており、迅速な反復とNetezza固有のアーキテクチャーとの緊密な統合が可能になっています。

Netezzaユーザー向けのObject Storageの主要なハイライト

Netezzaのネイティブ・オブジェクト・ストレージ統合は、既存のワークフローまたはアプリケーションを中断することなく、ユーザーに強力なメリットをもたらします。主なメリットを以下に紹介します。

  1. お客様のアプリケーションに変更はありません:Block Storageテーブル用に構築されたアプリケーションは、Object Storageテーブルとシームレスに連携し続けます。コードの変更や再構成は必要ありません。
  2. 完全なSQL互換性:すべてのNetezza SQL構文、ツール、操作機能はObject Storageテーブルと同じように動作します。ユーザーは両方のストレージ・タイプで一貫した動作を体験できます。
  3. スケーラビリティーの向上:Cloud Object Storageの固有の拡張性を容量とIOPSの両方で活用します。増大するワークロードや大規模なデータセットに最適です。
  4. 透明性の高いコスト・モデル:ユーザーは実際の使用量(ストレージ容量とAPI呼び出し)に基づいて請求されます。コスト管理と予測可能性を向上させることができます。
  5. 長期にわたる価格とパフォーマンスの最適化:Netezzaは、高性能のローカル・キャッシュやバッチ書き込みなどの手法を採用して、APIオーバーヘッドを削減します。これらの最適化により、特に読み取り量の多いワークロードや分析ワークロードでは、低い運用コストで性能が向上します。

性能特性ブロックとObject Storageの比較

Object Storageの効率と信頼性を評価するために、読み取り専用クエリー、混合分析オペレーション、書き込み集約型タスク、複数ユーザーが同時に実行するワークロード・シナリオなど、多様なワークロードが実行されました。

主なハイライト:

  • Block Storageとの性能の同等性:Object Storageは、さまざまなワークロード・タイプにおいて、従来のBlock Storageと同等の性能を実証しました。
  • バッチ書き込み性能の高速化:大量の書き込み操作(特にバッチ挿入)では、最適化されたキャッシングと書き込みストラテジーのおかげでスループットが向上しました。
  • ストレージ・コストの削減:APIの使用を含むこれらのワークロードの実行にかかる総コストは、Block Storageと比較してObject Storageでは一貫して低く、長期的なデータ管理のためのコスト効率の高いソリューションとなっています。

ユーザー・エクスペリエンス

ネイティブのObject Storageをサポートするために、Netezzaはstoragetypeキーワードを導入し、ユーザーがさまざまな構成レベルで目的のストレージ・タイプを指定できるようにします。

1. ストレージ・タイプの解決階層:CREATE TABLEでテーブル・レベルが指定されている場合、そのテーブルは定義されたストレージ・タイプを使用します。

2. 例: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’;

この階層により、デプロイメント間の一貫性を維持しながら柔軟性が確保されます。

可用性の更新

Netezza向けCloud Object Storageは現在、パブリック・プレビューで利用可能であり、AWSおよびAzureでの一般提供は2025年第4四半期に予定されています。

一貫したユーザー・エクスペリエンスを維持

NetezzaはネイティブのCloud Object Storageをサポートし、ユーザーがS3互換のクラウドストレージ上でテーブルを直接作成、管理できるようになりました。Block StorageとObject Storageを組み合わせたこのハイブリッド・モデルは、優れた拡張性、低コスト、シームレスなSQL互換性を実現します。

Netezzaは、キャッシュ、非同期クリーンアップ、storagetypeキーワードによる柔軟なストレージ構成により、一貫したユーザー・エクスペリエンスを維持しながら、価格性能を向上させます。Netezza NCOSパブリック・プレビューは、ユーザーを魅了する新機能の波を促進するための強固な基盤です。

ユーザーがワークロードを実行することによってObject Storageを探索し、データとワークロードのニーズに最適なバランスを決定することをお勧めします。

今すぐ確認