このトピックでは、特定のビジネスシナリオでObject Storage Service (OSS) の内部エンドポイントとOSSアクセラレータを使用してリソースにアクセスする場合のパフォーマンスの違いについて説明します。
大量データの操作
次の例では、ossutilを使用して、サイズが100 KB (オブジェクトの合計サイズ: 976 MB) の10,000オブジェクトをOSS内部エンドポイントとOSSアクセラレータのアクセラレーションエンドポイントを使用してダウンロードまたは読み取ります。
テスト計画
テストツール
API 操作
説明
ossutil
cp
コマンドを実行して、サイズが100 KBの10,000オブジェクトをOSSバケットからローカルコンピューターにダウンロードします。OSS内部エンドポイントとアクセラレータの高速化エンドポイントを使用して、OSSディレクトリ内のオブジェクトが同時にローカルコンピューターにダウンロードされる速度をテストします。
テスト結果
テストツール
OSS内部エンドポイントの使用
データプリロードにOSSアクセラレータを使用し、アクセスを高速化するにはOSSアクセラレータのエンドポイントを使用します
ossutil
2.2 MB/s
24 MB/s
テストの結論
OSSアクセラレータ機能が有効になっているときにossutilを使用してデータをダウンロードするのは、OSSアクセラレータ機能が無効になっているときにossutilを使用してデータをダウンロードするよりも約10倍高速です。
上記の例では、ossutilなどのツールを使用して大量のデータに対してバッチ操作を実行する場合に、OSSアクセラレータ機能によってデータ転送とアクセス速度が大幅に向上する方法を説明しています。
機械学習またはディープラーニングの大量データ
次の例では、OSS Connector for AI/MLによって作成されたOssIterableDatasetおよびOssMapDatasetデータセットから、OSS内部エンドポイントとアクセラレーションエンドを使用してデータを読み取ります。 平均サイズが100 KB (総オブジェクトサイズ: 1テラバイト) の10,000,000オブジェクトが使用されます。
テストパラメータ
パラメーター
値 /操作
説明
dataloaderバッチサイズ
256
各バッチタスクは256のサンプルを処理する。
dataloaderワーカー
32
データは32のプロセスを使用して並列にロードされます。
変換
def transform(object): data = object.read() return object.key, object.label
データは前処理されない。
テスト結果
を使用して作成されたデータセット
データセットタイプ
内部エンドポイントの使用
データプリロードにOSSアクセラレータを使用し、アクセスを高速化するエンドポイントを使用します
AI/ML用OSSコネクタ
OssIterableDataset
99920 img/s
123043 img/s
OssMapDataset
56564 img/s
78264 img/s
テストの結論
OSSアクセラレータ機能を有効にした場合のOssIterableDatasetおよびOssMapDatasetデータセットからのデータの読み取りは、OSSアクセラレータ機能を無効にした場合の同じデータの読み取りよりも約1.6倍高速です。 OSSアクセラレータが無効になっている場合、OSS Connector for AI/MLは、高帯域幅レベルで高度な同時アクセスを処理できます。 OSS Connector for AI/MLをOSSアクセラレータ機能とともに使用すると、さらに強力なパフォーマンスが提供されます。
応答レイテンシ統計のダウンロード
サイズが10 MBのオブジェクトを複数回ダウンロードしてテストし、OSSアクセラレータを無効化および有効化した場合の応答レイテンシをミリ秒単位で計算します。 OSSアクセラレータを無効にすると、オブジェクトはOSSからダウンロードされます。
次の図で、P50は50% のリクエストが現在のレイテンシ統計を満たすことを示し、P999は99.9% のリクエストが現在のレイテンシ統計を満たすことを示します。
結果は、OSSアクセラレータを使用すると、レイテンシが10倍短縮されることを示しています。
データレイクとデータウェアハウスのクラウド
ローカルディスク、OSS、およびOSSアクセラレータがストレージメディアとして使用されている場合、ユーザーはパフォーマンスをテストします。 サイズが760 GBのlineitemテーブルの約20億個のデータが使用されます。
Latency
シナリオ
ローカルCacheFS (ローカルディスク)
OSS
OSSアクセラレータ
ポイントクエリ
382ms
2451ms
1160ms
1,000データ項目に対するランダムクエリ
438ms
3786ms
1536ms
データの10% に関するランダムクエリ
130564ms
345707ms
134659ms
フルスキャン
171548ms
398681ms
197134ms
パフォーマンス
オンラインクエリ中、OSSアクセラレータの応答時間はOSSの応答時間の2〜2.5倍になります。 データの10% に対するフルスキャンおよびランダムクエリ中、OSSアクセラレータのパフォーマンスは、OSSのパフォーマンスおよびローカルESSD CacheFSのパフォーマンスの2〜2.5倍に85% ます。
オンラインクエリ中、OSSアクセラレータに送信される1つのリクエストの固定レイテンシは8〜10 msです。 1,000データ項目およびポイントクエリに対するランダムクエリの間、OSSアクセラレータのパフォーマンスは、OSSのパフォーマンスおよびローカルESSD CacheFSのパフォーマンスの30% よりも1.5 3倍高くなります。
シミュレーショントレーニングのためのコンテナと自動運転
OSSアクセラレータ機能を有効にすると、画像、マップ、ログデータを取得するために多数のコンテナが同時に起動され、シミュレーショントレーニングの全体的な期間が60% 短縮されます。
タイプ | データ量 | ピーク帯域幅 | 有効期間 |
OSS | 204 TB (OSS) | 100 Gbps | 2.2時間 |
OSS + OSSアクセラレータ | 204 TB (OSS) + 128テラバイト (OSSアクセラレータ) | 300 Gbps | 40分 |