バージョン付レイヤーからデータを取得します
注
現在 blob
、このサービスは REST API バージョン v1
およびをサポート v2
しています。 v1
バージョン管理、インデックス作成、およびストリーム(ストリームペイロードが 1MB より大きい場合)の各レイヤーへのアクセスには、バージョンを使用する必要があります。 v2
オブジェクト ストア レイヤーにアクセスするには、バージョンを使用する必要があります。 正しい API バージョンの応答が返されるように、 API 検索から適切な API バージョンを常に選択してください。 手順については 、『 API Lookup 開発者ガイド』を参照してください。
REST API metadata
v1
(メタデータ用)および blob
v1
(データ用)を使用して、バージョン付レイヤーからデータを取得できます。
データを取得するための一般的なフローは、次の手順で構成されています。
- 認可トークンを取得します
- API ベースの URL を取得します
- データ ハンドルを入手してください
- パーティション データを入手します
認可トークン を取得します
HTTP 要求の認可トークンを取得します。 手順について は、『 Identity & Access Management Guide 』を参照してください。
API ベースの URL を取得します
API ルックアップサービスを使用して、データを取得するカタログのmetadata
v1
およびblob
v1
API の API エンドポイントを取得します。 手順については 、『 API Lookup 開発者ガイド』を参照してください。
データ ハンドル を入手してください
blob
API からデータを取得するには、目的のデータが含まれているパーティションのデータ ハンドルを取得する必要があります。 データ ハンドルを取得するには metadata
、 API を使用します。
GET /<Base path for the metadata API from the API Lookup Service>/layers/<Layer ID>/partitions?version=<Catalog Version> HTTP/1.1
Host: <Hostname for the metadata API from the API Lookup Service>
Authorization: Bearer <Authorization Token>
Content-Type: application/json
Cache-Control: no-cache
応答にはパーティション メタデータの配列が含まれています。 例 :
{
"partitions": [
{
"dataHandle": "1b2ca68f-d4a0-4379-8120-cd025640510c",
"layer": "my-layer",
"partition": "314010583",
"partitionType": "reference",
"version": 0
}
]
}
パーティション データ を入手します
パーティション メタデータが作成されました。目的のパーティションのデータ ハンドルを検索します。 次に、データ ハンドルを使用し blob
て API を使用してデータを取得します。
GET /<Base path for the blob API from the API Lookup Service>/layers/<Layer ID>/data/<Data Handle> HTTP/1.1
Host: <Hostname for the blob API from the API Lookup Service>
Authorization: Bearer <Authorization Token>
Cache-Control: no-cache
応答は、指定されたデータ ハンドルに最近アップロードされたバイナリデータで構成されます。
パーティション データ の一部を取得します
クライアントとサーバーの間で接続の問題が発生した場合、またはデータの特定のスライスを取得する場合に、大きな応答のダウンロードを再開するに は、 RFC 7233 などのRange
ヘッダーを指定します。Range: bytes=10-
GET /<Base path for the blob API from the API Lookup Service>/layers/<Layer ID>/data/<Data Handle> HTTP/1.1
Host: <Hostname for the blob API from the API Lookup Service>
Range: bytes=10-
Authorization: Bearer <Authorization Token>
Cache-Control: no-cache
応答には、要求したバイトスライスのみが含まれます。
注
HTTP 5xx エラーを処理するための再試行ロジックがアプリケーションに含まれていることを推奨します。 再試行ロジックで指数バックオフを使用します。