Azure Blob Storage での SSH ファイル転送プロトコル (SFTP) のパフォーマンスに関する考慮事項
BLOB ストレージでは、SSH ファイル転送プロトコル (SFTP) がサポートされるようになりました。 この記事には、ストレージ要求のパフォーマンスを最適化するのに役立つ推奨事項が含まれています。 Azure Blob Storage での SFTP のサポートの詳細については、「Azure Blob Storage の SSH ファイル転送プロトコル (SFTP) サポート」を参照してください。
コンカレント接続を使用してスループットを向上させる
Azure Blob Storage は、ストレージ アカウントのエグレスとイングレスの上限に達するまで、直線的にスケーリングします。 したがって、アプリケーションで使用するクライアント接続が多いほど、より高いスループットを実現できます。 ストレージ アカウントのエグレスとイングレスの制限については、「Standard Storage アカウントのスケーラビリティとパフォーマンスのターゲット」を参照してください。
WinSCP の場合は、最大 9 個のコンカレント接続を使用して、複数のファイルをアップロードできます。 FileZilla などのその他の一般的な SFTP クライアントにも同様のオプションがあります。
重要
同時アップロードでは、複数のファイルを同時にアップロードする場合にのみパフォーマンスが向上します。 複数の接続を使用して 1 つのファイルをアップロードすることはサポートされていません。
- [ 環境設定 ]ダイアログの[ ログ記録]で、[ セッションのログオンを有効にする]レベル がオンになっている場合は、[ 縮小] または [標準]を選択します。
注意事項
ログ レベルのデバッグ 1 またはデバッグ 2により、セッション操作のパフォーマンスが大幅に低下します。
プレミアム ブロック BLOB ストレージ アカウントを使用する
Azure プレミアム ブロック BLOB ストレージ アカウントを使用することで、低遅延と高トランザクション レートが一貫して提供されます。 Premium ブロック BLOB ストレージ アカウントは、より少ないスレッドとクライアントで最大帯域幅に到達できます。 たとえば、クライアントが 1 つの場合、Standard パフォーマンスの汎用 v2 ストレージ アカウントで使用される同じセットアップと比較して、Premium ブロック BLOB ストレージ アカウントでは 2.3 倍の帯域幅を実現できます。
ネットワーク待機時間の影響を軽減する
ネットワーク待機時間は、小さなメッセージに依存しているため、SFTP のパフォーマンスに大きな影響を与えます。 既定では、ほとんどのクライアントは、約 32 KB のメッセージ サイズを使用します。
既定のメッセージ サイズを大きくしてパフォーマンスを向上させる
Windows の OpenSSH では、次の
-B
オプションを使用してメッセージ サイズを 100000 に増やすことができます:sftp -B 100000 testaccount.user1@testaccount.blob.core.windows.net
Linux の OpenSSH では、次の
-B
オプションを使用してバッファー サイズを 262000 に増やせます:sftp -B 262000 -R 32 testaccount.user1@testaccount.blob.core.windows.net
ストレージ アカウントと同じリージョンにあるクライアントからストレージ要求を行います。