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

  • ストレージ アカウントと同じリージョンにあるクライアントからストレージ要求を行います。

関連項目