
$ goosefs nsUsage: goosefs ns [generic options][create <namespace> <CosN/Chdfs path> <--wPolicy <1-6>> <--rPolicy <1-5>> [--readonly] [--shared] [--secret fs.cosn.userinfo.secretId=<AKIDxxxxxxx>] [--secret fs.cosn.userinfo.secretKey=<xxxxxxxxxx>] [--attribute fs.ofs.userinfo.appid=1200000000][--attribute fs.cosn.bucket.region=<ap-xxx>/fs.cosn.bucket.endpoint_suffix=<cos.ap-xxx.myqcloud.com>]][delete <namespace>][help [<command>]][ls [-r|--sort=option|--timestamp=option]][setPolicy [--wPolicy <1-6>] [--rPolicy <1-5>] <namespace>][setTtl [--action delete|free] <namespace> <time to live>][stat <namespace>][unsetPolicy <namespace>][unsetTtl <namespace>]
コマンド | 説明 |
create | ネームスペースを作成し、リモートストレージシステム(UFS)をネームスペースにマップするために使用します。ネームスペースの作成時に読み取り書き込みキャッシュポリシーを設定することができます。権限を有するキー情報(secretId、secretKey)を渡す必要があります。 |
delete | 指定したネームスペースの削除に使用します。 |
ls | 指定したネームスペースの詳細情報(マウントポイント、UFSパス、作成時間、キャッシュポリシー、TTL情報など)のリストアップに使用します。 |
setPolicy | 指定したネームスペースのキャッシュポリシーの設定に使用します。 |
setTtl | 指定したネームスペースのTTLの設定に使用します。 |
stat | 指定したネームスペースの記述的情報(マウントポイント、UFSパス、作成時間、キャッシュポリシー、TTL情報、永続化の状態、ユーザーグループ、ACL、最終アクセス時刻、変更時刻など)の提供に使用します。 |
unsetPolicy | 指定したネームスペースのキャッシュポリシーのリセットに使用します。 |
unsetTtl | 指定したネームスペースのTTLのリセットに使用します。 |
# COSバケットexample-bucketをtest_cosネームスペースにマッピング$ goosefs ns create test_cos cosn://example-bucket-1250000000/ --wPolicy 1 --rPolicy 1 --secret fs.cosn.userinfo.secretId=AKIDxxxxxxx --secret fs.cosn.userinfo.secretKey=xxxxxxxxxx --attribute fs.cosn.bucket.region=ap-guangzhou --attribute fs.cosn.bucket.endpoint_suffix=cos.ap-guangzhou.myqcloud.com# COSバケットexample-bucketのexample-prefixディレクトリをtest_cos_prefixネームスペースにマッピング$ goosefs ns create test_cos_prefix cosn://example-bucket-1250000000/example-prefix/ --wPolicy 1 --rPolicy 1 --secret fs.cosn.userinfo.secretId=AKIDxxxxxxx --secret fs.cosn.userinfo.secretKey=xxxxxxxxxx --attribute fs.cosn.bucket.region=ap-guangzhou --attribute fs.cosn.bucket.endpoint_suffix=cos.ap-guangzhou.myqcloud.com# Cloud HDFSファイルシステムf4ma0l3qabc-Xy3をtest_chdfsネームスペースにマッピング$ goosefs ns create test_chdfs ofs://f4ma0l3qabc-Xy3/ --wPolicy 1 --rPolicy 1 --attribute fs.ofs.userinfo.appid=1250000000
$ goosefs fs ls /test_cos
$ goosefs ns delete test_cosDelete the namespace: test_cos
$goosefs ns setPolicy [--wPolicy <1-6>] [--rPolicy <1-5>] <namespace>
ポリシー名 | アクション | 対応するWrite_Type | データの安全性 | 書き込み効率 |
MUST_CACHE(1) | データをGooseFSのみに保存し、リモートストレージシステムには書き込みません。 | MUST_CACHE | 信頼性が低い | 高い |
TRY_CACHE(2) | キャッシュにスペースがある場合はGooseFSに書き込み、スペースがない場合は基盤ストレージに直接書き込みます。 | TRY_CACHE | 信頼性が低い | 中程度 |
CACHE_THROUGH(3) | データを可能な限りキャッシュし、同時にリモートストレージシステムに同期的に書き込みます。 | CACHE_THROUGH | 信頼性が高い | 低い |
THROUGH(4) | データをGooseFSに保存せず、リモートストレージシステムに直接書き込みます。 | THROUGH | 信頼性が高い | 中程度 |
ASYNC_THROUGH(5) | データをGooseFSに書き込み、リモートストレージシステムに非同期的にキャッシュします。 | ASYNC_THROUGH | 信頼性がやや低い | 高い |
ポリシー名 | アクション | メタデータ同期 | 対応するRead_Type | データ整合性 | 読み取り効率 | データをキャッシュするか |
NO_CACHE(1) | データをキャッシュせず、リモートストレージシステムから直接データを読み取ります。 | NO | NO_CACHE | 強い整合性 | 低い | いいえ |
CACHE(2) | メタデータアクセスアクション:キャッシュにヒットした場合、メタデータはMaster内のものに準じ、能動的に基盤からメタデータを同期することはありません。 データフローアクセスアクション:データフローのReadTypeはCACHEポリシーを使用します。 | Once | CACHE | 弱い整合性 | ヒットした場合:高い ヒットしない場合:低い | はい |
CACHE_PROMOTE(3) | メタデータアクセスアクション:CACHEモードと同様です。 データフローアクセスアクション:データフローのReadTypeはCACHE_PROMOTEポリシーを使用します。 | Once | CACHE_PROMOTE | 弱い整合性 | ヒットした場合:高い ヒットしない場合:低い | はい |
CACHE_CONSISTENT_PROMOTE(4) | メタデータアクセスアクション:毎回の読み取り操作前にリモートストレージシステムUFS上のメタデータを同期し、UFS内に存在しない場合はエラーNot Existsをスローします。 データフローアクセスアクション:データフローのReadTypeはCACHE_PROMOTEポリシーを使用し、ヒットした後は最もホットなメディア内にキャッシュします。 | Always | CACHE | 強い整合性 | ヒットした場合:中程度 ヒットしない場合:低い | はい |
CACHE_CONSISTENT(5) | メタデータアクション:CACHE_CONSISTENT_PROMOTEモードと同様です。 データフローアクセスアクション:データフローのReadTypeはCACHEポリシーを使用します。すなわちCACHEがヒットした場合は他のメディア層へのデータ移動を行いません。 | Always | CACHE_PROMOTE | 強い整合性 | ヒットした場合:中程度 ヒットしない場合:低い | はい |
書き込みキャッシュポリシー | 読み取りキャッシュポリシー | ポリシー組み合わせの効果 |
CACHE_THROUGH(3) | CACHE_CONSISTENT(5) | キャッシュとリモートストレージシステムのデータは強い整合性を有します。 |
CACHE_THROUGH(3) | CACHE(2) | 書き込みは強い整合性を、読み取りは最終的な整合性を有します。 |
ASYNC_THROUGH(5) | CACHE_CONSISTENT(5) | 書き込みは最終的な整合性を、読み取りは強い整合性を有します。 |
ASYNC_THROUGH(5) | CACHE(2) | 読み取りと書き込みは最終的な整合性を有します。 |
MUST_CACHE(1) | CACHE(2) | キャッシュ内からのみデータを読み取ります。 |
$ goosefs ns setPolicy --wPolicy 3 --rPolicy 5 test_cos
$ goosefs ns unsetPolicy test_cos
$ goosefs ns setTtl [--action delete|free] <namespace> <time to live>
$ goosefs ns setTtl --action free test_cos 60000
goosefs.user.file.metadata.sync.interval=<INTERVAL>
goosefs fs ls -R -Dgoosefs.user.file.metadata.sync.interval=0 <path to sync>
goosefs.user.file.metadata.sync.interval=1m
アクセスモード | | メタデータ同期サイクル | 説明 |
すべてのファイルリクエストがGooseFSを経由する場合 | | -1 | - |
大部分のファイルリクエストがGooseFSを経由する場合 | HDFSをUFSとして使用 | ホットアップデートの使用またはパスによる更新を推奨 | HDFSの更新が特に頻繁な場合は更新サイクルを-1に設定し、更新を無効にすることを推奨します |
| COSをUFSとして使用 | パスによる更新サイクルの設定を推奨 | ディレクトリごとに異なる更新サイクルを設定すると、メタデータ同期の負荷を軽減できます |
| ファイルアップロードリクエストが通常GooseFSを経由しない場合 | HDFSをUFSとして使用 | パスによる更新サイクルの設定を推奨 |
| | COSをUFSとして使用 | パスによる更新サイクルの設定を推奨 |
フィードバック