そもそもオブジェクトストレージとは?
オブジェクトストレージは、オブジェクトと呼ばれる非構造化形式でデータを格納および管理するテクノロジーです。現代の組織は、写真、動画、E メール、ウェブページ、センサーデータ、音声ファイルなど、大量の非構造化データを作成および分析しています。クラウドオブジェクトストレージシステムは、このデータを複数の物理デバイスに分散しますが、ユーザーが単一の仮想ストレージリポジトリからコンテンツに効率的にアクセスできるようにします。オブジェクトストレージソリューションは、スケーラビリティと柔軟性を必要とするクラウドネイティブアプリケーションを構築するために理想的です。また、既存のデータストアを分析、バックアップ、またはアーカイブ用にインポートするためにも使用できます。
つまり、オブジェクトストレージとは、ファイルそのものだけでなくメタデータを含めて「オブジェクト」として管理し、大量の非構造化データを効率よく保存・取得するための技術です。 ユーザーは物理的な保存場所を意識することなく、単一の論理的なストレージとしてデータにアクセスできます。
- 海外サービス
- 自社運用可能なサービス
- 国内サービス
ただ、ここまでの説明だけでは、普段利用している NAS やサーバー上のファイル保存との違いが分かりにくいかと思います。
以下は、代表的なストレージ方式の比較表です。
重要なのは「オブジェクトストレージが常に優れている」というわけではなく、用途に応じて適切な方式を選択する必要がある点です。 ブロック、オブジェクト、ファイルストレージはどのように異なりますか?
相違点の要約: オブジェクトストレージ、ブロックストレージ、ファイルストレージ
| オブジェクトストレージ | ブロックストレージ | クラウドファイルストレージ | |
|---|---|---|---|
| ファイル管理 | ファイルをオブジェクトとして保存します。既存のアプリケーションでオブジェクトストレージ内のファイルにアクセスするには、新しいコードと API の使用が必要です。 | ファイルを保存できますが、ブロックストレージのファイルをサポートするには追加の予算と管理リソースが必要です。 | 一般的なファイルレベルのプロトコルと権限モデルをサポートします。共有ファイルストレージで動作するように構成されたアプリケーションで使用できます。 |
| メタデータの管理 | どのオブジェクトにも無制限のメタデータを保存できます。カスタムメタデータフィールドを定義します。 | 関連するメタデータをほとんど使用しません。 | ファイルのみに関連する限定的なメタデータを格納します。 |
| パフォーマンス | 最小限のレイテンシーで無制限のデータを保存します。 | 高性能、低レイテンシー、高速データ転送。 | 共有ファイルアクセスに高いパフォーマンスを提供します。 |
| 物理ストレージ | 複数のストレージノードに分散。 | SSD と HDD に分散。 | オンプレミスの NAS サーバー、基盤となる物理ブロックストレージ上。 |
| スケーラビリティ | 無制限にスケールします。 | やや限られています。 | やや限られています。 |
オブジェクトストレージの活用シーンと注意点
個人的には、以下のようなシーンで特に活用しやすいと感じています。
- バックアップファイル
- データアーカイブ
- 動画や画像、音楽などのリッチメディアファイル
これ以外にも「分析」「データレイク」「クラウドネイティブアプリケーションのデータ」「機械学習用途」などがありますが、これらはオブジェクトストレージ単体で選定するというより、アプリケーション基盤側の要件から選ばれるケースが多い印象です。
具体的なシーンですとNASのバックアップや、閲覧や公開用のメディアファイルはとてもあっているかと思います。ただし、S3などは転送量やリクエストで課金がかかるため不特定多数のアクセスがある場合は注意が必要になります。
また、オブジェクトとして保存するにあたり特殊な処理を必要とする可能性がある文字と使用しない方がよい文字があります。そのためLinuxやMacOSとWindowsでファイルシステムが異なっていることについては問題ないですが、アクセス方法がREST APIだからこそ、特定の文字の使用をさけるべきと認識しておいてください。 Windows PowerShell で「”(全角ダブルクォーテーション)」を含むファイル名を AWS CLI でアップロードしようとしたところ失敗しました。一方で、ブラウザから直接アップロードする場合は成功しました。
このように、利用するツールやアクセス方法によって挙動が異なるケースがあるため、ファイル名に使用する文字には注意が必要です。
参考情報
Wasabiとは何か?
Wasabi Technologiesという会社が提供しているサービスになります。 Wasabi は、オブジェクトストレージを中心に提供している低価格なクラウドストレージサービスです。 オブジェクトストレージサービスに関連した以下のサービスを提供しています。
- Hot Cloud Storage:低価格で使用容量のみの課金のため下り転送量やAPIリクエスト料金もかからないオブジェクトストレージ
- Wasabi AiR:メディアファイルから特定の瞬間を素早く検索し、アクセスするサービス
- Surveillance Cloud:オンプレミスのビデオ管理システムのストレージ容量を即座に拡張し、貴重な監視データを保護するサービス
- Cloud NAS:クラウドと連携するネットワーク接続型ストレージによって、オンプレミスストレージの耐用年数を延ばし、コスト削減、容量不足の解消を実現サービス
リージョンも世界中に存在し、2025年12月21日時点で16のリージョンが存在し、日本でも東京と大阪に展開されています。 また、Wasabiストレージリージョンは、SOC-2、ISO27001、PCI-DSSの認定を受けているため、安心して利用することができると感じています。 また管理者用のマネジメントツールも存在するため、大規模な組織でオブジェクトストレージを運用することも可能になります。
Wasabi Hot Cloud Storageの特徴
ここではWasabiの中でオーソドックスなHot Cloud Storageについて見ていきます。 よく比較されるのは、Amazon S3になりますが、一番の違いは価格になります。 容量課金が1TBからになるのですが、同じ容量に対する金額がAmazon S3よりも80%安価になります。 個人的に一番気に入っている点は、下り転送料や API リクエスト料金が発生しない点です。 Amazon S3 の場合は、アクセス頻度やデータ配置を慎重に検討する必要がありますが、Wasabi は「まずは格納しておく」という使い方がしやすいと感じています。 ただ注意点もあるのでデメリットや注意点の次で説明します。 値段は安いのですが、データ耐久性も99.999999999%(イレブンナイン)とデータセンターの冗長性、イミュータブルストレージにも対応している点は保管の観点からも選択しやすくなります。 セキュリティに関する機能も豊富に備わっており、先ほど挙げましたリージョンコピー、イミュータブル、バージョン管理とそれ以外にも最近リリースされたConvert Copyで仮想エアギャップを利用することができます。また、バケットポリシーやIAMによってコンソールやアカウントに関する制限からコンソールにログインするMFAとマルチユーザー認証(MUA)も設定することが可能です。
公式から知っておくべきWasabiのセキュリティ設定が紹介されているため利用される場合は一読されることをお勧めします。
もちろんS3互換なのでS3で使えるAPIは利用できますし、AWS CLIでのアクセスも可能です。 利用する場合はコンソールからアクセスキーとシークレットキーを払い出して利用してください。
Wasabiのデメリットや注意点
デメリットと注意点は、最低保管期間ポリシーになります。 Wasabiには最低保管期間ポリシーがあり、一定日数保存される前にオブジェクトが削除された場合、残りの日数分をストレージ使用容量として加算されます。 従量課金の場合は90日間で予約容量ストレージ価格モデルを使用している場合は30日間で計算されてしまい、特に削除ができず閲覧できるというわけではなく、これは実際にデータが残るわけではなく、Wasabi 側で課金計算上のみ使用される論理的な容量です。そのため、毎日更新するファイルやデータを格納して削除するなど一時ストレージとして使用する場合は向いていないです。 S3のスタンダードクラスは最低保管期間ポリシーはないため、この辺りはよくWasabiの特性を理解する必要があります。 バックアップで利用する場合も使っているNASやバックアップソフトを注意して利用する必要があります。
Wasabiではバケット命名規則やファイル名でも使えない文字があり、下記のルールを守って利用いただく必要がございます。
- バケット名
- バケット名の長さは 3 (最小) から 63 (最大) 文字にする必要があります。
- バケット名には、小文字、数字、ピリオド (.)、ハイフン (-) のみを使用できます。
- バケット名は文字または数字で始まって終わる必要があります。
- バケット名には、連続する 2 つのピリオドを含めることはできません。
- バケット名は IP アドレス形式 (例: 192.168.5.4) にしないでください。
- バケット名はプレフィックス xn— で始まってはなりません。
- バケット名はプレフィックス sthree- で始まってはなりません。
- バケット名は、プレフィックス amzn-s3-demo- で始まってはなりません。
- バケット名はサフィックス -s3alias で終わることはできません。
- バケット名はサフィックス —ol-s3 で終わることはできません。
- バケット名は、サフィックス .mrap で終わることはできません。
- バケット名はサフィックス —x-s3 で終わることはできません。
- ファイル名
- % (パーセント)
- < (小なり記号)
- > (大なり記号)
- \ (バックスラッシュ)
- # (ポンド記号)
- ? (疑問符)
- 一部のファイル名には、4バイトUTF8文字(絵文字など)の非ASCII文字が含まれている場合があります。Wasabiはこれらの文字をサポートしておらず、ファイル名に4バイトUTF文字を含むファイルを書き込もうとするアプリケーションに400エラーメッセージを返します。可能であれば、影響を受けるファイルの名前を変更することをお勧めします。
まとめ
Wasabi は、S3 互換の API を持ちながら、転送料や API リクエスト課金がなく、シンプルで分かりやすい価格体系を持つオブジェクトストレージです。
特にバックアップやアーカイブ用途では、コスト面・運用面の両方で大きなメリットがあります。
一方で、最低保管期間ポリシーといった Wasabi 特有の仕様も存在するため、用途や運用方法を理解した上で導入することが重要です。
「S3 のコストが高い」「バックアップ用ストレージを見直したい」と感じている方には、Wasabi は非常に有力な選択肢になると思います。
参考:Wasabi Explorer
参考:ポリシー
IAMポリシー例
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:ListAllMyBuckets",
"Resource": "*"
},
{
"Effect": "Allow",
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::<mybucket>",
"arn:aws:s3:::<mybucket>/*"
]
}
]
}
バケットポリシー(IPによるアクセス制限)
{
"Id": "IPRestriction",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "DenyAccessNotFromAllowedIPs",
"Effect": "Deny",
"Principal": {
"AWS": "*"
},
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::<mybucket>",
"arn:aws:s3:::<mybucket>/*"
],
"Condition": {
"NotIpAddress": {
"aws:SourceIp": [
"XXX.XXX.XXX.XXX/32",
"XXX.XXX.XXX.XXX/32"
]
}
}
}
]
}