Condividi tramite


Recupero di una raccolta

L'esecuzione di un'operazione GET su una risorsa raccolta specifica recupera le proprietà della raccolta.

Nota

Questi articoli di riferimento sulle API illustrano come creare risorse usando l'API del piano dati di Azure Cosmos DB. Con l'API del piano dati è possibile configurare opzioni di base, ad esempio criteri di indicizzazione, chiavi di partizione molto simili a quelle che è possibile usare con gli SDK di Cosmos DB. Se è necessario il supporto completo delle funzionalità per tutte le risorse di Azure Cosmos DB, è consigliabile usare il provider di risorse Cosmos DB.

Richiesta

Metodo URI richiesta Descrizione
GET https://{databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id} {databaseaccount} è il nome dell'account Azure Cosmos DB creato nella sottoscrizione. Il valore {db-id} è il nome/ID generato dall'utente del database, non l'ID generato dal sistema (rid). Il valore {coll-id} è il nome della raccolta.

Intestazioni

Vedere Intestazioni di richiesta REST comuni di Azure Cosmos DB per le intestazioni usate da tutte le richieste di Cosmos DB.

Corpo

Nessuno.

Risposta

Get Collection restituisce il corpo della raccolta come persistente in Cosmos DB insieme alle intestazioni di risposta che segnalano la quota e l'utilizzo della raccolta.

Intestazioni

Vedere Intestazioni di risposta REST comuni di Azure Cosmos DB per le intestazioni restituite da tutte le risposte di Cosmos DB.

Codici di stato

La seguente tabella elenca i codici di stato comuni restituiti da questa operazione. Per un elenco completo dei codici di stato, vedere Codici di stato HTTP.

Codice di stato HTTP Descrizione
200 Ok L'operazione è stata completata.
404 - Non trovato La raccolta non è più una risorsa, ovvero la raccolta è stata eliminata.

Corpo

Proprietà Descrizione
id È il nome univoco che identifica la nuova raccolta.
_rid Si tratta di una proprietà generata dal sistema. L'ID risorsa (_rid) è un identificatore univoco gerarchico anche per ogni stack di risorse nel modello di risorse. Viene usato internamente per il posizionamento e l'esplorazione della risorsa di autorizzazione.
_Ts Si tratta di una proprietà generata dal sistema. Indica il timestamp dell'ultimo aggiornamento della risorsa. Il valore è un timestamp.
_stesso Si tratta di una proprietà generata dal sistema. URI indirizzabile univoco per la risorsa.
_Etag Si tratta di una proprietà generata dal sistema che rappresenta l'etag della risorsa necessaria per il controllo della concorrenza ottimistica.
_Doc Si tratta di una proprietà generata dal sistema che specifica il percorso indirizzabile della risorsa documenti.
_sprocs Si tratta di una proprietà generata dal sistema che specifica il percorso indirizzabile della risorsa stored procedure (sprocs).
_Trigger Si tratta di una proprietà generata dal sistema che specifica il percorso indirizzabile della risorsa triggers.
_udfs Si tratta di una proprietà generata dal sistema che specifica il percorso indirizzabile della risorsa funzioni definite dall'utente (udfs).
_Conflitti Si tratta di una proprietà generata dal sistema che specifica il percorso indirizzabile della risorsa conflitti. Se durante un'operazione su una risorsa all'interno di una raccolta si verifica un conflitto, gli utenti possono controllare le risorse in conflitto eseguendo un'operazione GET sul percorso URI dei conflitti.
indexingPolicy Si tratta delle impostazioni dei criteri di indicizzazione per la raccolta.

Proprietà in Criteri di indicizzazione

Proprietà Descrizione
Automatico Indica se l'indicizzazione automatica è attiva o disattiva. Il valore predefinito è True, quindi tutti i documenti vengono indicizzati. L'impostazione del valore su False consente la configurazione manuale dei percorsi di indicizzazione.
indexingMode Per impostazione predefinita, la modalità di indicizzazione è Coerente. Ciò significa che l'indicizzazione si verifica in modo sincrono durante l'inserimento, la sostituzione o l'eliminazione di documenti. Perché l'indicizzazione venga eseguita in modo asincrono, impostarne la modalità su lazy.
includedPaths Matrice che contiene i percorsi dei documenti da indicizzare. Per impostazione predefinita, vengono inclusi due percorsi: /path che specifica che tutti i percorsi del documento devono essere indicizzati e il percorso _ts, che indicizza per un confronto di intervalli di timestamp.

All'interno dell'elemento nella matrice.

Proprietà in Percorso incluso

Proprietà Descrizione
path Percorso a cui si applica il comportamento di indicizzazione. I percorsi di indice iniziano con la radice (/) e in genere terminano con l'operatore con caratteri jolly punto interrogativo (?), che indica che sono presenti più valori possibili per il prefisso. Ad esempio, per usare SELECT * FROM Families F WHERE F.familyName = "Andersen", è necessario includere un percorso di indice per /"familyName"/? nei criteri di indicizzazione della raccolta.

I percorsi di indice possono anche usare il carattere jolly * per specificare un comportamento ricorsivo dei percorsi al di sotto del prefisso. È ad esempio possibile usare /payload/* per escludere dall'indicizzazione qualsiasi elemento al di sotto della proprietà payload.
dataType È il tipo di dati a cui viene applicato il comportamento di indicizzazione. Può essere String, Number, Point, Polygon o LineString. I valori booleani e null vengono indicizzati automaticamente
gentile Tipo di indice. Gli indici hash sono utili per i confronti di uguaglianza, mentre gli indici Range sono utili per l'uguaglianza, i confronti tra intervalli e l'ordinamento. Gli indici spaziali sono utili per le query spaziali.
precisione Precisione dell'indice. Può essere impostato su -1 per la precisione massima o tra 1-8 per Number e 1-100 per String. Non applicabile per i tipi di dati Point, Polygon e LineString .

Proprietà in Chiave di partizione

Proprietà Descrizione
Percorsi Matrice di percorsi che usano i dati all'interno della raccolta possono essere partizionati. I percorsi non devono contenere un carattere jolly o una barra finale. Ad esempio, la proprietà JSON "AccountNumber" viene specificata come "/AccountNumber". La matrice deve contenere solo un singolo valore.
gentile Algoritmo usato per il partizionamento. È supportato solo hash .
{  
  "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/"  
}  
  

Esempio

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/"  
}  
  

Vedere anche