컬렉션 가져오기
특정 컬렉션 리소스에 대해 GET을 수행하면 해당 컬렉션의 속성이 검색됩니다.
참고
이러한 API 참조 문서에서는 Azure Cosmos DB 데이터 평면 API를 사용하여 리소스를 만드는 방법을 보여 줍니다. 데이터 평면 API를 사용하면 Cosmos DB SDK와 마찬가지로 인덱싱 정책, 파티션 키와 같은 기본 옵션을 구성할 수 있습니다. 모든 Azure Cosmos DB 리소스에 대한 완전한 기능 지원이 필요한 경우 Cosmos DB 리소스 공급자를 사용하는 것이 좋습니다.
요청
메서드 | 요청 URI | 설명 |
---|---|---|
GET | https://{databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id} | {databaseaccount}는 구독에서 만든 Azure Cosmos DB 계정의 이름입니다. {db-id} 값은 시스템 생성 ID(rid)가 아니라 사용자가 생성한 데이터베이스의 이름/ID입니다. {coll-id} 값은 컬렉션의 이름입니다. |
헤더
모든 Cosmos DB 요청에 사용되는 헤더는 일반적인 Azure Cosmos DB REST 요청 헤더를 참조하세요.
본문
없음
응답
컬렉션 가져오기는 컬렉션의 할당량 및 사용량을 보고하는 응답 헤더와 함께 Cosmos DB에 유지되는 컬렉션 본문을 반환합니다.
헤더
모든 Cosmos DB 응답 에서 반환되는 헤더는 일반적인 Azure Cosmos DB REST 응답 헤더를 참조하세요.
상태 코드
다음 표에는 이 작업에서 반환하는 일반적인 상태 코드가 나열되어 있습니다. 상태 코드의 전체 목록은 HTTP 상태 코드를 참조하세요.
HTTP 상태 코드 | 설명 |
---|---|
200 정상 | 작업이 완료되었습니다. |
404 찾을 수 없음 | 컬렉션은 더 이상 리소스가 아닙니다. 즉, 컬렉션이 삭제되었습니다. |
본문
속성 | Description |
---|---|
id | 새 컬렉션을 식별하는 고유한 이름입니다. |
_rid | 시스템 생성 속성입니다. 리소스 ID(_rid)는 리소스 모델의 리소스 스택에 따라 계층적인 고유 식별자입니다. 사용 권한 리소스의 배치와 탐색용으로 내부적으로 사용됩니다. |
_ts | 시스템 생성 속성입니다. 리소스가 마지막으로 업데이트된 시간의 타임스탬프를 지정합니다. 값은 타임스탬프입니다. |
_self | 시스템 생성 속성입니다. 고유한 주소를 지정할 수 있는 리소스의 URI입니다. |
_etag | 낙관적 동시성 제어에 필요한 리소스 etag 를 나타내는 시스템 생성 속성입니다. |
_문서 | 문서 리소스의 주소 지정 가능 경로를 지정하는 시스템 생성 속성입니다. |
_sprocs | 스프록스(저장 프로시저) 리소스의 주소 지정 가능 경로를 지정하는 시스템 생성 속성입니다. |
_트리거 | 트리거 리소스의 주소 지정 가능 경로를 지정하는 시스템 생성 속성입니다. |
_Udf | udfs(사용자 정의 함수) 리소스의 주소 지정 가능 경로를 지정하는 시스템 생성 속성입니다. |
_충돌 | 충돌 리소스의 주소 지정 가능 경로를 지정하는 시스템 생성 속성입니다. 컬렉션 내의 리소스에 대한 작업 중에 충돌이 발생하면 사용자는 충돌 URI 경로에 대해 GET을 수행하여 충돌하는 리소스를 검사할 수 있습니다. |
indexingPolicy | 컬렉션에 대한 인덱싱 정책 설정입니다. |
인덱싱 정책 아래의 속성
속성 | 설명 |
---|---|
자동 번역 | 자동 인덱싱의 설정 여부를 나타냅니다. 기본값은 True이므로 모든 문서가 인덱싱됩니다. 값을 False로 설정하면 인덱싱 경로를 수동으로 구성할 수 있습니다. |
indexingMode | 기본적으로 인덱싱 모드는 일관성입니다. 즉, 문서를 삽입, 교체 또는 삭제하는 동안 인덱싱이 동기적으로 발생합니다. 인덱싱이 비동기식으로 수행되도록 하려면 인덱싱 모드를 lazy로 설정합니다. |
includedPaths | 인덱싱할 문서 경로를 포함하는 배열입니다. 기본적으로 두 개의 경로가 포함됩니다. 즉, 모든 문서 경로를 인덱싱할 것을 지정하는 /path와 타임스탬프 범위 비교를 위해 인덱싱하는 _ts 경로가 포함됩니다. 배열의 요소 내에 있습니다. |
포함된 경로 아래의 속성
속성 | 설명 |
---|---|
path | 인덱싱 동작이 적용되는 경로입니다. 인덱스 경로는 루트(/)로 시작하고 일반적으로 접두사에 여러 개의 가능한 값이 있음을 나타내는 물음표(?) 와일드카드 연산자로 끝납니다. 예를 들어 SELECT * FROM Families F WHERE F.familyName = "Andersen"을 처리하려면 컬렉션의 인덱스 정책에 /familyName/?의 인덱스 경로를 포함해야 합니다. 또한 인덱스 경로에 * 와일드카드 연산자를 사용하여 접두사 아래에 재귀적으로 경로에 대한 동작을 지정할 수 있습니다. 예를 들어 /payload/*를 사용하여 페이로드 속성의 모든 항목을 인덱싱에서 제외할 수 있습니다. |
dataType | 인덱싱 동작이 적용되는 데이터 형식입니다. String, Number, Point, Polygon 또는 LineString일 수 있습니다. 부울 및 null은 자동으로 인덱싱됩니다. |
kind | 인덱스의 유형입니다. 해시 인덱스는 같음 비교에 유용하지만 범위 인덱스는 같음, 범위 비교 및 정렬에 유용합니다. 공간 인덱스는 공간 쿼리에 유용합니다. |
전체 자릿수 | 인덱스의 전체 자릿수입니다. 최대 정밀도의 경우 -1로 설정하거나 Number의 경우 1-8, String의 경우 1-100 사이로 설정할 수 있습니다. Point, Polygon 및 LineString 데이터 형식에는 적용되지 않습니다. |
파티션 키 아래의 속성
속성 | 설명 |
---|---|
경로 | 컬렉션 내에서 분할할 수 있는 데이터를 사용하는 경로 배열입니다. 경로에는 와일드카드 또는 후행 슬래시가 포함되어서는 안 됩니다. 예를 들어 JSON 속성 "AccountNumber"는 "/AccountNumber"로 지정됩니다. 배열에는 단일 값만 포함되어야 합니다. |
kind | 분할에 사용되는 알고리즘입니다. 해시만 지원됩니다. |
{
"id": "testcoll",
"indexingPolicy": {
"indexingMode": "consistent",
"automatic": true,
"includedPaths": [
{
"path": "/*",
"indexes": [
{
"kind": "Range",
"dataType": "String",
"precision": -1
},
{
"kind": "Range",
"dataType": "Number",
"precision": -1
}
]
}
],
"excludedPaths": []
},
"partitionKey": {
"paths": [
"/AccountNumber"
],
"kind": "Hash"
},
"_rid": "1tAvAP4XWww=",
"_ts": 1459198933,
"_self": "dbs/1tAvAA==/colls/1tAvAP4XWww=/",
"_etag": "\"00005600-0000-0000-0000-56f99bd50000\"",
"_docs": "docs/",
"_sprocs": "sprocs/",
"_triggers": "triggers/",
"_udfs": "udfs/",
"_conflicts": "conflicts/"
}
예제
GET https://querydemo.documents.azure.com/dbs/testdb/colls HTTP/1.1
x-ms-offer-throughput: 1000
x-ms-date: Mon, 28 Mar 2016 21:02:12 GMT
authorization: type%3dmaster%26ver%3d1.0%26sig%3dP8r7%2fEZnOxv2wQr2smp4G1tCH9PkOkIZscHqsqdn6y4%3d
Cache-Control: no-cache
User-Agent: Microsoft.Azure.Documents.Client/1.6.0.0
x-ms-version: 2015-12-16
Accept: application/json
Host: querydemo.documents.azure.com
Content-Length: 235
Expect: 100-continue
HTTP/1.1 201 Created
Cache-Control: no-store, no-cache
Pragma: no-cache
Transfer-Encoding: chunked
Content-Type: application/json
Server: Microsoft-HTTPAPI/2.0
Strict-Transport-Security: max-age=31536000
x-ms-last-state-change-utc: Mon, 28 Mar 2016 20:10:13.601 GMT
etag: "00005600-0000-0000-0000-56f99bd50000"
collection-partition-index: 0
collection-service-index: 24
x-ms-schemaversion: 1.1
x-ms-alt-content-path: dbs/testdb
x-ms-quorum-acked-lsn: 6
x-ms-current-write-quorum: 3
x-ms-current-replica-set-size: 4
x-ms-request-charge: 4.95
x-ms-serviceversion: version=1.6.52.5
x-ms-activity-id: fbc3f36d-15d5-45fa-8f19-8579945451f8
x-ms-session-token: 0:7
Set-Cookie: x-ms-session-token#0=7; Domain=querydemo.documents.azure.com; Path=/dbs/1tAvAA==/colls/1tAvAP4XWww=
Set-Cookie: x-ms-session-token=7; Domain=querydemo.documents.azure.com; Path=/dbs/1tAvAA==/colls/1tAvAP4XWww=
x-ms-gatewayversion: version=1.6.52.5
Date: Mon, 28 Mar 2016 21:02:13 GMT
{
"id": "testcoll",
"indexingPolicy": {
"indexingMode": "consistent",
"automatic": true,
"includedPaths": [
{
"path": "/*",
"indexes": [
{
"kind": "Range",
"dataType": "String",
"precision": -1
},
{
"kind": "Range",
"dataType": "Number",
"precision": -1
}
]
}
],
"excludedPaths": []
},
"partitionKey": {
"paths": [
"/AccountNumber"
],
"kind": "Hash"
},
"_rid": "1tAvAP4XWww=",
"_ts": 1459198933,
"_self": "dbs/1tAvAA==/colls/1tAvAP4XWww=/",
"_etag": "\"00005600-0000-0000-0000-56f99bd50000\"",
"_docs": "docs/",
"_sprocs": "sprocs/",
"_triggers": "triggers/",
"_udfs": "udfs/",
"_conflicts": "conflicts/"
}