大容量ファイルの管理(SLO)

5GB以上の大容量のファイルを管理するための手順を説明します。
大容量ファイルの管理方法は、 Dynamic Large Object(DLO), Static Large Object(SLO) など2つの方式があり、
該当ガイドでは、SLO方式を説明します。

SLOのアップロード

  1. 5GB以上のファイルは分割します。
    APIでファイル分割はサポートしません。
    分割サイズと数量は、ユーザーが直接指定してください。

  2. 分割されたファイルを Segement Objectにアップロードします。
    Segment Objectの位置及び名前に制約はありません。 Segment Objectのアップロードは、通常のオブジェクトのアップロードと同じく行ってください。

  3. SLOのマニフェストファイルをアップロードします。 Segment Objectの位置情報を持っているファイルです アップロードをリクエストする時にqueryパラメータとして以下の内容を含む必要があります。

     ?multipart-manifest=put
    

    リクエストのbodyにはSegment Objectの情報をJSONフォーマットに含ませます。

詳細については、以下の例示を参照します。

Segment Object のアップロード(1bytesファイル3つ)

curl -i -X PUT \
  https://kr.archive.ncloudstorage.com/v1/AUTH_{project_id}/SLO/slo-object/0001 \
  -H 'X-Auth-Token: $token' \
  --data-binary '1'
HTTP/1.1 201 Created
Last-Modified: Tue, 18 Sep 2018 06:20:35 GMT
Content-Length: 0
Etag: c4ca4238a0b923820dcc509a6f75849b
Content-Type: text/html; charset=UTF-8
X-Trans-Id: tx3f192e9948504e689285d-005ba09932
X-Openstack-Request-Id: tx3f192e9948504e689285d-005ba09932
Date: Tue, 18 Sep 2018 06:20:34 GMT
curl -i -X PUT \
  https://kr.archive.ncloudstorage.com/v1/AUTH_{project_id}/SLO/slo-object/0002 \
  -H 'X-Auth-Token: $token' \
  --data-binary '2'
HTTP/1.1 201 Created
Last-Modified: Tue, 18 Sep 2018 06:23:38 GMT
Content-Length: 0
Etag: c81e728d9d4c2f636f067f89cc14862c
Content-Type: text/html; charset=UTF-8
X-Trans-Id: tx22f749319f844f3ebb0dc-005ba099e9
X-Openstack-Request-Id: tx22f749319f844f3ebb0dc-005ba099e9
Date: Tue, 18 Sep 2018 06:23:37 GMT
curl -i -X PUT \
  https://kr.archive.ncloudstorage.com/v1/AUTH_{project_id}/SLO/slo-object/0003 \
  -H 'X-Auth-Token: $token' \
  --data-binary '3'
HTTP/1.1 201 Created
Last-Modified: Tue, 18 Sep 2018 07:05:30 GMT
Content-Length: 0
Etag: eccbc87e4b5ce2fe28308fd9f2a7baf3
Content-Type: text/html; charset=UTF-8
X-Trans-Id: tx3ed5e77d00a14631b96f4-005ba0a3b9
X-Openstack-Request-Id: tx3ed5e77d00a14631b96f4-005ba0a3b9
Date: Tue, 18 Sep 2018 07:05:29 GMT

SLO マニフェストファイルのアップロード

curl -i -X PUT \
  http://kr.beta-archive.ncloudstorage.com/v1/AUTH_f968d2ccd5aa4dada14302397d785663/SLO/slo?multipart-manifest=put \
  -H 'X-Auth-Token: gAAAAABbn32xZY6gaC5QNuqXVRRxFRithPtdnEVXLxvm73uA8gxerd_Ze2uz2WErOeGwY2GeC9x3YqYXXxPCQUqc8vwKUJ0kzXswwQADWDs8KLWnLng-S6fyWun_Xw6D7r0ypstJtihPeRjohgVjNkc7XBOot-bW0BZABvL3Pad-lwHsxmXoXU8' \
  --data-binary \
    '[{"path": "/SLO/slo-object/0001"},{"path": "/SLO/slo-object/0002"},{"path": "/SLO/slo-object/0003"}]'
HTTP/1.1 201 Created
Last-Modified: Tue, 18 Sep 2018 07:13:29 GMT
Content-Length: 0
Etag: "8f481cede6d2ddc07cb36aa084d9a64d"
Content-Type: text/html; charset=UTF-8
X-Trans-Id: txa8c0de4034be4bd0b85b4-005ba0a598
X-Openstack-Request-Id: txa8c0de4034be4bd0b85b4-005ba0a598
Date: Tue, 18 Sep 2018 07:13:28 GMT

SLOのダウンロード

アップロードされたSLOファイルをダウンロードするには、マニフェストファイルをダウンロードします。

詳細については、以下の例示を参照します。

curl -i -X GET \
  https://kr.archive.ncloudstorage.com/v1/AUTH_{project_id}/SLO/slo \
  -H 'X-Auth-Token: $token' \
HTTP/1.1 200 OK
Content-Length: 3
Accept-Ranges: bytes
Last-Modified: Tue, 18 Sep 2018 07:13:29 GMT
Etag: "8f481cede6d2ddc07cb36aa084d9a64d"
X-Timestamp: 1537254808.62092
X-Static-Large-Object: True
Content-Type: application/x-www-form-urlencoded
X-Trans-Id: txb67bc8f4ade24a80a64a7-005ba0a663
X-Openstack-Request-Id: txb67bc8f4ade24a80a64a7-005ba0a663
Date: Tue, 18 Sep 2018 07:16:51 GMT

123

に対する検索結果は~件です。 ""

    に対する検索結果がありません。 ""

    処理中...