AWS
S3
OSS
AlibabaCloud

オブジェクトストレージ比較:S3 vs OSS

最近話題のAlibaba Cloud。
よく利用されているAWS S3とAlibaba CloudのOSSを比較してみました。

Alibaba Cloudとは

  • Alibaba Cloudとは、中国最大のクラウドサービスプロバイダー
  • 2018年5月現在、中国国内やアメリカ、ヨーロッパ、日本を含む世界中に18個リージョンが存在し、仮想サーバーやストレージ、CDNなどをはじめとしたクラウドサービスを展開している
  • 最近注目を集めているQRコードを使用した非接触型決済サービスAlipayのインフラを支えている
  • 日本では2016年にソフトバンク株式会社とアリババグループが設立した合弁会社である、SBクラウド株式会社が日本向けのサービス対応を開始(東京リージョン開設)

AWSとは

  • AWSとはAmazon Web Servicesの略で、2006年にITインフラストラクチャサービスの提供を開始
  • 最初のクラウドサービスとして、2006年3月に「Amazon S3」をリリース
  • 2018年1月現在、世界中に18の物理的なリージョンと51のアベイラビリティゾーンがある
  • 現在では、ストレージだけでなくコンピューティングやデータベース、分析ツールなど数多くのサービスを展開しており、世界190か国の方々に利用されている

オブジェクトストレージの特徴

 オブジェクトストレージは、オブジェクトという単位でデータを記憶装置であるストレージに保存や取り出しが出来ます。
特徴としてはストレージの容量を拡張(スケーラビリティ)することが出来るため、大きなデータを保存することに向いています。
大量の写真や動画、IoTのセンサーデバイスから送られてきた大量のデータなど、様々なデータの保存先として利用されています。

OSSやS3には、オブジェクトストレージのアクセス頻度やAPIのリクエスト頻度によってサービス内容や料金が分かれているので、状況に応じて適切なサービスを選択することでコストを抑えることが出来ます。

Alibaba Cloud OSSの特徴

OSSは「Object Storage Service」の略で、大容量のデータを格納し、バックアップやアーカイブすることが可能なクラウドオブジェクトストレージサービスです。
バケット」を作成し、その中にオブジェクトを保存します。
OSSは暗号化されたストレージを提供しており、また、災害などの緊急時にも復旧出来るように自動データレプリケーションフェールオーバー機能にも対応しています。
さらに、Intel XeonプロセッサE5-2600 v3プロセッサファミリを使用して構築されています。
ストレージとしては、IA ストレージ(Infrequent Access Storage)やアーカイブストレージも利用出来ます。
また、REST APIを利用してバケットやオブジェクトなどを操作することが出来ます。

Amazon S3の特徴

 Amazon S3の特徴として、オブジェクトは「バケット」というリソースに保存されます。
このバケットに保存出来るオブジェクトの最大サイズは5TBまでです。
また、このバケットに保存しているオブジェクトに対して書き込み、読み取り、削除といった操作が可能です。

さらに、オブジェクトだけでなくバケットに対してのアクセス制限の設定や、アクセスログの閲覧、レイテンシーの最適化などに対応出来ます。

Alibaba CloudのOSSと同様に災害時にも復旧出来るように、全てのS3オブジェクトを別のバケットに自動的にレプリケートするクロスリージョンレプリケーション(CRR)を行っています。
S3もREST APIが準備されており、バケットやオブジェクト、アクセス制限などAPIで操作することが出来ます。
S3の最大の特徴として、ストレージクラスとライフサイクル管理があります。
ストレージクラスとは、ユーザーの様々な利用シーンに向けた幅広いストレージクラスです。
S3では、以下のストレージクラスが準備されています。

1.S3 標準ストレージ
 頻繁にアクセスするオブジェクト向けのストレージクラス。

2.S3 標準-低頻度アクセス(S3 標準-IA)ストレージ
 アクセスは低頻度ですが、必要な時にすぐにアクセス可能なオブジェクト向けのストレージクラス。

3.S3 1ゾーン-低頻度アクセス(S3 1ゾーン-IA)ストレージ
 2)同様低頻度アクセスで必要な時にすぐアクセス可能なオブジェクト向けのストレージクラスです。
2)と異なる点は、S3は3つのアベーラビリティゾーン(AZ)にオブジェクトを保存せず、1つのAZにオブジェクトを保存します。
この性質から、セカンダリバックアップとして利用したり、別リージョンからのS3クロスリージョンレプリケーションとして利用することに向いています。
ただし、AZが破壊されると保存内容は失われます。

4.Amazon Glacierストレージ
 アーカイブとして利用されます。
アーカイブへのアクセスは数分から数時間までの3つのオプションが準備されています。
各ストレージクラスの耐久性や可用性などの詳細はこちらを参考にしてください。

OSSとS3の比較

機能面(スペック)と料金について比較していきます。

スペック

アップロード制限

サービス 内容
S3 1度のPUTでは1ファイル5GBまで。
それ以上大きなファイルは
マルチパートアップロードAPIを利用することで
5TBまでファイルを分割してアップロードできます。
OSS 1ファイル5GBまで。
OSSではマルチパートアップロードの場合、
ファイルを複数のデータブロック
(パート)に分割します。
この1パートにつき、最大5GBのサイズが制限となり、
ファイル全体のサイズは最大48.8 TBまでです。

ストレージ容量

サービス 内容
S3 バケットは100個まで。
それ以上はサービスの制限緩和申請を行うことで、
上限を解除することが出来ます。
各バケットの容量は無制限。
OSS バケットは30個まで。各バケットの容量は無制限。

レプリケーション

サービス 内容
S3 クロスリージョンレプリケーション(CRR)
OSS レプリケーション機能あり。

バージョニング

サービス 内容
S3 あり
OSS なし

ライフサイクル管理

サービス 内容
S3 あり
OSS あり

静的なWebサイトのホスティング

サービス 内容
S3 あり。
バケットをWebサイトホスティング用に設定する。
OSS あり。
ストレージ容量を静的Webサイトホスティングモード
で機能するように設定する。

サーバーアクセスログ

サービス 内容
S3 あり。
アクセスログを残すために、
バケットで設定が必要になります。
OSS あり。
バケットへのアクセスリクエストログを格納する
オブジェクトを1時間単位で生成します。

料金

標準パターンの料金体系の比較をまとめました。
今回は、OSSは東京リージョン、S3はアジアパシフィック(東京)リージョンで比較しています。
こちらで比較している内容は、参考価格でありカスタマイズプランなどの利用により実際の金額とは異なる場合があります。

基本的な料金体系は以下の通りです。

OSS

ストレージの合計量、転送されたデータ量、実行されたAPIリクエスト数(GET/PUTなど)に基づいて算出されます。
https://jp.alibabacloud.com/product/oss#pricing

S3

ストレージの合計量、リクエスト数(GET/PUT)、データ「S3標準ストレージ」を利用します。
https://aws.amazon.com/jp/s3/pricing/

料金の見積もりはこちらで計算出来ます。
S3 標準 – 低頻度アクセスと S3 1 ゾーン – 低頻度アクセスストレージでは、128KB以下のデータでも128KBとして最小課金対象となります。

金額の比較表は、以下の通りです。
金額は税抜き価格です。
1ドル109円で換算して計算しています。

ストレージ:標準

今回は標準的なストレージのもので金額を比較しています。
S3とOSSには、それぞれ低頻度アクセス用のストレージやアーカイブ用のストレージも準備されています。
これらのストレージの金額は別の価格が設定されています。
S3: https://aws.amazon.com/jp/s3/pricing/
OSS: https://jp.alibabacloud.com/product/oss#pricing

[S3]

容量 USD/GB 日本円
~50TB/月 0.025 2.725
~450TB/月 0.024 2.616
500~TB/月 0.023 2.507

[OSS]

容量 日本円/GB/Month
~5GB 無料
5~GB 2.41

API:標準

S3と比較するとOSSの方が料金は安いですが、操作内容においてはS3の方が幅広く対応している様にみえます。

[S3]

操作 金額 日本円
S3 Select によって返されたデータ 0.0008USD/GB 0.0872
S3 Select によってスキャンされたデータ 0.00225USD/GB 0.24525
PUT、COPY、POST、または LIST リクエスト リクエスト 1,000 件あたり 0.0047USD 0.5123
GET、SELECT および他のすべてのリクエスト リクエスト 1,000 件あたり 0.00037USD 0.04033
標準 – 低頻度アクセス
または
1ゾーン–低頻度アクセス
へのライフサイクル移行
リクエスト
リクエスト 1,000 件あたり 0.01USD 1.09
DELETE 無料 無料

[OSS]

操作 金額
Get/Head リクエスト10,000件あたり0.204円
Put/Post/Delete リクエスト10,000件あたり1.64円

※OSSではDeleteにも料金が必要です。

データ転送

[S3]

同一リージョン内でのS3バケット間やS3から他のサービスへの転送は無料です。
インターネットから Amazon S3 へのデータ転送受信 (イン)

場所 金額
すべてのデータ転送受信 (イン) 0.00USD/GB



Amazon S3 からインターネットへのデータ転送(アウト)

転送量 金額 日本円
1 GB まで / 月 0.00USD/GB 0円
次の 9.999 TB / 月 0.14USD/GB 15.26円
次の 40 TB / 月 0.135USD/GB 14.715円
次の 100 TB / 月 0.13USD/GB 14.17円
150 TB 以上 / 月 0.12USD/GB 13.08円



Amazon S3 からのデータ転送(アウト)

場所 金額 日本円
CloudFront 0.00USD/GB  0円
欧州 (フランクフルト) 0.09USD/GB 9.81円
欧州 (パリ) 0.09USD/GB 9.81円
米国東部(バージニア北部) 0.09USD/GB 9.81円
米国西部 (北カリフォルニア) 0.09USD/GB 9.81円
アジアパシフィック(シドニー) 0.09USD/GB 9.81円
AWS GovCloud (米国) 0.09USD/GB 9.81円
アジアパシフィック (シンガポール) 0.09USD/GB 9.81円
アジアパシフィック (ムンバイ) 0.09USD/GB 9.81円
カナダ (中部) 0.09USD/GB 9.81円
アジアパシフィック (ソウル) 0.09USD/GB 9.81円
南米 (サンパウロ) 0.09USD/GB 9.81円
欧州 (ロンドン) 0.09USD/GB 9.81円
米国西部(オレゴン) 0.09USD/GB 9.81円
米国東部 (オハイオ) 0.09USD/GB 9.81円
アジアパシフィック (大阪ローカル) 0.09USD/GB 9.81円
欧州(アイルランド) 0.09USD/GB 9.81円

[OSS]

ダウンストリームトラフィックの総使用率に基づいて課金されます。
アップストリームトラフィックとイントラネットアクセストラフィックは無料です。

パブリックトラフィック
転送量 金額
0~5GB 無料
5GB~10TB 12.3円/GB
10TB~50TB 11.1円/GB
50TB~150TB 10.5円/GB
150TB~ 9.69円/GB
CDNトラフィック

8.16円/GB

まとめ

AWSのS3の方が現在は利用できる機能が多く便利な状況ですが、Alibaba CloudのOSSもこれから機能が充実してくるのではないかと思われます。
オブジェクトストレージを単体で利用することは少ないと思いますので、クラウドデザインパターンや運用、料金などトータルで検討してみてはいかがでしょうか。