データフローとデータフロータスクを作成し、CPFS for Lingjun ファイルシステムと OSS バケット間で高速にデータを転送します。
機能
CPFS for Lingjun は、次のデータフロー機能をサポートしています。
アカウントレベルのデータフロー
OSS バケットとの同一アカウントおよびクロスアカウントのデータフローをサポートします。
ディレクトリレベルのデータフロー
CPFS for Lingjun ファイルシステムの任意のサブディレクトリを OSS バケット内の任意のプレフィックスにマッピングし、きめ細かい権限制御と柔軟なデータ転送を実現します。
データのインポートとエクスポート
バッチタスクまたはストリーミングタスクを作成し、CPFS for Lingjun ファイルシステムと OSS 間でデータをインポート・エクスポートします。バッチタスクは、コンピュートジョブの開始前にデータセット全体をプリロードします。ストリーミングタスクは、トレーニング中のモデルチェックポイントなど、個別のファイルのオンデマンドライトバックとプリロードを処理します。
警告CPFS for Lingjun は、ファイルの変更タイムスタンプを
x-oss-meta-alihbr-sync-mtimeという名前の OSS カスタムメタデータにエクスポートします。このメタデータを削除または変更しないでください。削除または変更すると、ファイルシステムのタイムスタンプが不正になります。タスクが失敗した場合は、タスクレポートを確認して原因を特定してください。
重要タスクレポートは参考用です。宛先のデータが正となります。ソースデータと宛先データ間のデータ整合性を確認してください。
データフロータスクのタイプ
CPFS for Lingjun は、バッチタスクとストリーミングタスクの 2 種類のデータフロータスクを提供します。
バッチタスク
バッチタスクは、ディレクトリ内のすべてのファイルを一度にインポートまたはエクスポートします。AI トレーニング前にデータセット全体をプリロードする場合に最適です。
ストリーミングタスク
ストリーミングタスクは、トレーニング中のモデルチェックポイントなど、個別のファイルをオンデマンドで転送します。API 操作によってサブタスクを送信し、各転送をトリガーします。システムはファイルの変更を自動的に同期しません。
ストリーミングタスクは、CPFS for Lingjun 2.6.0 以降でのみサポートされます。
ストリーミングタスクは API のみで利用できます。詳細については、「ストリーミングタスクの管理 (OpenAPI)」をご参照ください。
タスクの説明
インポート、エクスポート、ストリームインポート、ストリームエクスポートの 4 種類のタスクタイプが利用できます。
タイプ | 説明 |
import | ソースストレージから CPFS for Lingjun ファイルシステムにすべてのデータを一度にインポートします。
|
export | CPFS for Lingjun ファイルシステムから OSS バケットに指定されたデータを一度にエクスポートします。 エクスポートパス:CPFS for Lingjun ファイルシステム内のファイルまたはディレクトリパス。 警告
|
stream import | ソースストレージから CPFS for Lingjun ファイルシステムに、単一ファイルレベルで指定されたデータをインポートします。API のみで利用できます。
|
stream export | CPFS for Lingjun ファイルシステムから OSS バケットに、単一ファイルレベルで指定されたデータをエクスポートします。API のみで利用できます。 エクスポートパス:CPFS for Lingjun ファイルシステム内のファイルまたはディレクトリパス。 |
制限事項
データフロー
同一アカウントのデータフローには CPFS for Lingjun 2.4.0 以降が必要です。クロスアカウントのデータフローには 2.6.0 以降が必要です。
CPFS for Lingjun ファイルシステムあたりのデータフローは最大 10 個です。
各ファイルシステムパスは、1 つの OSS バケットにのみリンクできます。
データフローは異なるリージョンにまたがることはできません。
パス、ファイル名、ディレクトリ名に関する制限
データフローに関連付けられたパス内の空でないディレクトリの名前を変更すると、
Permission Deniedまたはディレクトリが空でないというエラーが返されます。ディレクトリ名とファイル名に特殊文字を使用する際は注意してください。
サポートされる文字には、大文字と小文字、数字、感嘆符 (!)、ハイフン (-)、アンダースコア (_)、ピリオド (.)、アスタリスク (*)、括弧 (()) が含まれます。
次の文字はサポートされておらず、タスクが失敗する可能性があります。
サブディレクトリ名またはファイル名を「..」にすることはできません。
パスにバックスラッシュ (\) または連続するバックスラッシュ (\\) を含めることはできません。
サブディレクトリ名またはファイル名にスラッシュ (/) を含めることはできません。
パスの最大長は 1,023 文字です。
データフロータスクの制限事項
ストリーミングタスクには CPFS for Lingjun 2.6.0 以降が必要であり、API のみで利用できます。
データフローあたり最大 4 つのバッチタスクを同時に実行できます。同時実行ストリーミングタスクは無制限です。
インポートの制限事項
シンボリックリンクをインポートすると、通常のデータファイルに変換されます。シンボリックリンク情報は失われます。
OSS バケットでバージョニングが有効になっている場合、オブジェクトの最新バージョンのみがコピーされます。
ファイル名またはサブディレクトリ名は 255 バイトを超えることはできません。
エクスポートの制限事項
シンボリックリンクは通常の空のオブジェクトとしてエクスポートされます。リンクされたファイルは同期されません。
ハードリンクは通常のファイルとしてエクスポートされます。
Socket、Device、Pipe ファイルは通常の空のオブジェクトとしてエクスポートされます。
ディレクトリパスは 1,023 文字を超えることはできません。
パフォーマンス指標
操作 | 指標 | 説明 |
データインポート | 1 GB を超えるファイルのスループット |
|
1 GB 未満のファイルの IOPS | 単一ディレクトリまたは複数ディレクトリのインポートでは 1,000 です。 | |
データエクスポート | 1 GB を超えるファイルのスループット |
|
1 GB 未満のファイルの IOPS | 単一ディレクトリまたは複数ディレクトリのエクスポートでは 1,200 です。 |
より高いスループットを実現する方法
容量の拡張:CPFS for Lingjun ファイルシステムのストレージ容量を増やすと、リニアスループットが直接向上します。
クォータの増加:VPC ネットワークのボトルネック (読み取り 10 GB/s または書き込み 5 GB/s) に達した場合は、チケットを送信して帯域幅クォータの増加をリクエストしてください。
実際の速度がベースラインより低い理由
OSS バケットに帯域幅スロットリングまたはレート制限ポリシーが設定されているかどうかを確認してください。
CPFS for Lingjun ファイルシステムでの大量の読み取り/書き込みワークロードがデータフロー帯域幅と競合しているかどうかを確認してください。
データフロータスクに、多数の小さなファイル操作、多数の小さなディレクトリ、または 1 つのディレクトリに多数の小さなファイルが含まれるケースがないか確認してください。これらは集約スループットを大幅に低下させます。
課金
CPFS for Lingjun のデータフローはパブリックプレビュー中であり、無料です。
操作手順
データフローを作成します。
同一アカウント:詳細については、「同一アカウントのデータフローの作成」をご参照ください。
クロスアカウント:詳細については、「クロスアカウントのデータフローの作成」をご参照ください。
バッチタスクまたはストリーミングタスクを作成します。
ストリーミング:詳細については、「ストリーミングタスクの管理 (OpenAPI)」をご参照ください。
バッチ:詳細については、「バッチタスクの管理」をご参照ください。
データを検証します。
タスクが完了したら、宛先でデータの正確性を検証してください。
警告宛先データを検証せずにソースデータを削除した場合、結果として生じるデータ損失についてはお客様の責任となります。