Share via


Een aanbieding vervangen

Als u een volledige aanbiedingsresource wilt vervangen, voert u een PUT-bewerking uit op de specifieke aanbiedingsresource. Zie het artikel Doorvoer inrichten voor containers en databases voor meer informatie over de maximale en minimale ingerichte doorvoer die kan worden ingesteld voor een container of database.

Aanvraag

Methode Aanvraag-URI Beschrijving
PUT https://{databaseaccount}.documents.azure.com/offers/{_rid-offer} {databaseaccount} is de naam van het Azure Cosmos DB-account dat u hebt gemaakt onder uw abonnement. De waarde {_rid-offer} is de door het systeem gegenereerde resource-id van de aanbieding.

Tip

Als u de _rid wilt vinden van de aanbieding die is gekoppeld aan een database of verzameling, moet u eerst de database ophalen of de verzameling OPHALEN en de _rid eigenschap van de resource noteren. Voer vervolgens een query uit op de aanbiedingen om de _rid-aanbieding te vinden die overeenkomt met de _rid van de database of verzameling. Normaal gesproken is een database-_rid lengte 8, een verzameling _rid lengte 12 en een aanbieding _rid lengte 4.

Kopteksten

Zie Algemene Azure Cosmos DB REST-aanvraagheaders voor headers die worden gebruikt door alle Cosmos DB-aanvragen

Hoofdtekst

Eigenschap Vereist Beschrijving
offerVersion Vereist Dit kan V1 zijn voor de verouderde niveaus S1, S2 en S3 en V2 voor door de gebruiker gedefinieerde doorvoerniveaus (aanbevolen).
offerType Optioneel Deze eigenschap is alleen van toepassing in de V1-aanbiedingsversie. Stel dit in op S1, S2 of S3 voor V1-aanbiedingstypen. Deze is ongeldig voor door de gebruiker gedefinieerde prestatieniveaus of het ingerichte doorvoermodel.
Inhoud Vereist Bevat informatie over de aanbieding. Voor V2-aanbiedingen bevat deze waarde de doorvoer van de verzameling.
Resource Vereist Wanneer u een nieuwe verzameling maakt, wordt deze eigenschap ingesteld op de zelfkoppeling van de verzameling, bijvoorbeeld dbs/pLJdAA==/colls/pLJdAOlEdgA=/.
offerResourceId Vereist Tijdens het maken van een verzameling wordt deze eigenschap automatisch gekoppeld aan de resource-id, dat wil _rid van de verzameling. In het bovenstaande voorbeeld is de _rid voor de verzameling pLJdAOlEdgA=.
id Vereist Het is een door het systeem gegenereerde eigenschap. De id voor de aanbiedingsresource wordt automatisch gegenereerd wanneer deze wordt gemaakt. Deze heeft dezelfde waarde als de _rid voor de aanbieding.
_Ontdoen Vereist Het is een door het systeem gegenereerde eigenschap. De resource-id (_rid) is een unieke id die ook hiƫrarchisch is per resourcestack in het resourcemodel. Het wordt intern gebruikt voor plaatsing en navigatie van de aanbieding.
{   
  "offerVersion": "V2",   
  "offerType": "Invalid",   
  "content": {   
    "offerThroughput": 4000   
  },   
  "resource": "dbs/rgkVAA==/colls/rgkVAMHcJww=/",   
  "offerResourceId": "rgkVAMHcJww=",   
  "id": "uT2L",   
  "_rid": "uT2L",   
}   
  

Antwoord

Retourneert de bijgewerkte aanbiedingsresource.

Kopteksten

Zie Algemene Azure Cosmos DB REST-antwoordheaders voor headers die worden geretourneerd door alle Cosmos DB-antwoorden.

Statuscodes

De volgende tabel bevat algemene statuscodes die door deze bewerking worden geretourneerd. Zie HTTP-statuscodes voor een volledige lijst met statuscodes.

HTTP-statuscode Beschrijving
200 OK De vervangingsbewerking is geslaagd.
400 Ongeldige aanvraag De JSON-hoofdtekst is ongeldig. Controleer op ontbrekende accolades of aanhalingstekens.
401 Onbevoegd De header Autorisatie of x-ms-date is niet ingesteld. 401 wordt ook geretourneerd wanneer de autorisatieheader is ingesteld op een ongeldig autorisatietoken.
404 Niet gevonden De aanbieding is niet langer een resource, dat wil gezegd dat de resource is verwijderd.
429 Te veel aanvragen De vervangingsaanbieding wordt beperkt omdat de aanbieding omlaag wordt geschaald binnen de time-outperiode voor inactiviteit, die 4 uur is. Raadpleeg de koptekst 'x-ms-retry-after-ms-response' om te zien hoe lang u moet wachten voordat u deze bewerking opnieuw probeert uit te voeren.

Hoofdtekst

Eigenschap Beschrijving
offerVersion Deze waarde kan V1 zijn voor vooraf gedefinieerde doorvoerniveaus en V2 voor door de gebruiker gedefinieerde doorvoerniveaus.
offerType Vooraf gedefinieerde prestatieniveaus S1, S2 of S3 voor V1-aanbiedingen. De waarde is ingesteld op Ongeldig voor door de gebruiker gedefinieerde prestatieniveaus.
Inhoud Het bevat informatie over de aanbieding. Voor V2-aanbiedingen bevat deze de doorvoer van de verzameling.
Resource Wanneer u een nieuwe verzameling maakt, wordt deze eigenschap ingesteld op de zelfkoppeling van de verzameling, bijvoorbeeld dbs/pLJdAA==/colls/pLJdAOlEdgA=/.
offerResourceId Tijdens het maken van een verzameling wordt deze eigenschap automatisch gekoppeld aan de resource-id, dat wil _rid van de verzameling. In het bovenstaande voorbeeld is de _rid voor de verzameling pLJdAOlEdgA=.
id Het is een door het systeem gegenereerde eigenschap. De id voor de aanbiedingsresource wordt automatisch gegenereerd wanneer deze wordt gemaakt. Deze heeft dezelfde waarde als de _rid voor de aanbieding.
_Ontdoen Het is een door het systeem gegenereerde eigenschap. De resource-id (_rid) is een unieke id die ook hiƫrarchisch is per resourcestack in het resourcemodel. Het wordt intern gebruikt voor plaatsing en navigatie van de aanbieding.
_Ts Het is een door het systeem gegenereerde eigenschap. Hiermee wordt de tijdstempel van de resource voor het laatst bijgewerkt. De waarde is een tijdstempel.
_Zelf Het is een door het systeem gegenereerde eigenschap. Dit is de unieke adresseerbare URI voor de resource.
_etag Het is een door het systeem gegenereerde eigenschap die de resource-etag aangeeft die is vereist voor optimistisch gelijktijdigheidsbeheer.
{  
  "offerVersion": "V2",  
  "_rid": "uT2L",
   "content": {  
    "offerThroughput": 4000
  }, 
  "resource": "dbs/rgkVAA==/colls/rgkVAMHcJww=/",  
  "offerResourceId": "rgkVAMHcJww=",  
  "id": "uT2L",  
  "_self": "offers/uT2L/"
}  
  

Voorbeeld 1

In dit voorbeeld ziet u hoe u de handmatige doorvoer (RU/s) van een verzameling wijzigt in 1000 RU/s.

PUT https://querydemo.documents.azure.com/offers/uT2L HTTP/1.1 

x-ms-date: Tue, 29 Mar 2016 17:50:18 GMT  
authorization: type%3dmaster%26ver%3d1.0%26sig%3dRdNwi9H3molMOsEoHXCUHa56N8U5eFDlfuewcSoiHgc%3d  
Cache-Control: no-cache  
User-Agent: contoso/1.0  
x-ms-version: 2015-12-16  
Accept: application/json  
Host: querydemo.documents.azure.com  
Content-Length: 234  
Expect: 100-continue  
  
{  
  "id": "uT2L",  
  "_rid": "uT2L",  
  "_self": "offers/uT2L/",  
  "offerVersion": "V2",  
  "resource": "dbs/rgkVAA==/colls/rgkVAMHcJww=/",  
  "content": {  
    "offerThroughput": 1000 
   }, 
  "offerResourceId": "rgkVAMHcJww="  
}  
  

Hieronder ziet u een voorbeeld van een antwoord.

HTTP/1.1 200 Ok  
Cache-Control: no-store, no-cache  
Pragma: no-cache  
Transfer-Encoding: chunked  
Content-Type: application/json  
Content-Location: https://querydemo.documents.azure.com/offers/uT2L  
Server: Microsoft-HTTPAPI/2.0  
Strict-Transport-Security: max-age=31536000  
x-ms-last-state-change-utc: Fri, 25 Mar 2016 22:54:09.213 GMT  
etag: "0000a900-0000-0000-0000-56fac05a0000"  
x-ms-schemaversion: 1.1  
x-ms-quorum-acked-lsn: 8110  
x-ms-current-write-quorum: 3  
x-ms-current-replica-set-size: 4  
x-ms-request-charge: 9.9  
x-ms-serviceversion: version=1.6.52.5  
x-ms-activity-id: fa543c39-a64e-44bd-ba9a-c4f313a9d7d4  
x-ms-session-token: M:8111  
x-ms-gatewayversion: version=1.6.52.5  
Date: Tue, 29 Mar 2016 17:50:20 GMT  
  
{  
  "offerVersion": "V2",
  "_rid": "uT2L",  
  "content": {  
    "offerThroughput": 1000
  },
  "resource": "dbs/rgkVAA==/colls/rgkVAMHcJww=/",  
  "offerResourceId": "rgkVAMHcJww=",  
  "id": "uT2L",  
  "_self": "offers/uT2L/",  
  "_etag": "\"0000a900-0000-0000-0000-56fac05a0000\"",  
  "_ts": 1459273818  
}  
  

Voorbeeld 2

In dit voorbeeld ziet u hoe u de maximale doorvoer (RU/s) van een aanbieding met doorvoer automatisch schalen kunt wijzigen in 8000 RU/s (schaalt tussen 800 - 8000 RU/s)

PUT https://querydemo.documents.azure.com/offers/uT2L HTTP/1.1

x-ms-version: 2018-12-31
x-ms-date: Thu, 23 Jul 2020 00:04:41 GMT
authorization: type%3dmaster%26ver%3d1.0%26sig%3dRdNwi9H3molMOsEoHXCUHa56N8U5eFDlfuewcSoiHgc%3d  
Accept: application/json
Content-Type: application/json
User-Agent: contoso/1.0
Host: querydemo.documents.azure.com:443
Connection: keep-alive
Content-Length: 278

{   
  "offerVersion": "V2",   
  "offerType": "Invalid",   
  "content": {   
    "offerAutopilotSettings": {"maxThroughput": 8000}
  },
  "resource": "dbs/rgkVAA==/colls/rgkVAMHcJww=/",  
  "offerResourceId": "rgkVAMHcJww="  
  "id": "uT2L",  
  "_rid": "uT2L"
}

Voorbeeld 3

In dit voorbeeld ziet u hoe u een aanbieding met handmatige doorvoer migreert om de doorvoer automatisch te schalen. De header x-ms-cosmos-migrate-offer-to-autopilot met waarde true is vereist.

Wanneer u migreert, bepaalt Azure Cosmos DB automatisch het nieuwe maximum aantal RU/s voor automatisch schalen op basis van de huidige resource-instellingen. De maxThroughput eigenschap in het antwoordobject vertegenwoordigt het standaard maximum aantal RU/s voor automatisch schalen dat door het systeem is ingesteld.

In de hoofdtekst is de content eigenschap met een gedefinieerd offerThroughput vereist, maar de waarde wordt genegeerd door de service. In het volgende voorbeeld wordt -1 gebruikt.

Nadat de wijziging is voltooid, kunt u voorbeeld 2 volgen om het maximum aantal RU/s voor automatisch schalen te wijzigen in een aangepaste waarde.

Meer informatie over migreren naar automatische schaalaanpassing.

PUT https://querydemo.documents.azure.com/offers/uT2L HTTP/1.1

x-ms-version: 2018-12-31
x-ms-date: Wed, 22 Jul 2020 23:33:41 GMT
authorization: type%3dmaster%26ver%3d1.0%26sig%3dRdNwi9H3molMOsEoHXCUHa56N8U5eFDlfuewcSoiHgc%3d  
Accept: application/json
x-ms-cosmos-migrate-offer-to-autopilot: true
Content-Type: application/json
User-Agent: contoso/1.0  
Host: querydemo.documents.azure.com  
Connection: keep-alive
Content-Length: 254

{   
  "offerVersion": "V2",   
  "offerType": "Invalid",   
  "content": {   
    "offerThroughput": -1  
  },
  "resource": "dbs/rgkVAA==/colls/rgkVAMHcJww=/",  
  "offerResourceId": "rgkVAMHcJww=",  
  "id": "uT2L",   
  "_rid": "uT2L"
}

Hieronder ziet u een voorbeeld van de antwoordtekst.

De eigenschap maxThroughput vertegenwoordigt het maximum aantal RU/s voor automatisch schalen dat door het systeem is ingesteld. De eigenschap offerThroughput vertegenwoordigt de RU/s waarnaar het systeem momenteel is geschaald.

{
    "resource": "dbs/rgkVAA==/colls/rgkVAMHcJww=/",  
    "offerType": "Invalid",
    "offerResourceId": "rgkVAMHcJww=",
    "offerVersion": "V2",
    "content": {
        "offerThroughput": 400,
        "offerIsRUPerMinuteThroughputEnabled": false,
        "offerMinimumThroughputParameters": {
            "maxThroughputEverProvisioned": 4000,
            "maxConsumedStorageEverInKB": 0
        },
        "offerLastReplaceTimestamp": 1595460122,
        "offerAutopilotSettings": {
            "maxThroughput": 4000
        }
    },
    "id": "uT2L",
    "_rid": "uT2L",
    "_self": "offers/uT2L/",
    "_etag": "\"2d002059-0000-0800-0000-5f18cbf80000\"",
    "_ts": 1595460600
}

Voorbeeld 4

In dit voorbeeld ziet u hoe u een aanbieding met doorvoer met automatische schaalaanpassing naar handmatige doorvoer migreert. De header x-ms-cosmos-migrate-offer-to-manual-throughput met waarde true is vereist.

Tijdens de migratie bepaalt Azure Cosmos DB automatisch de nieuwe handmatige doorvoer (RU/s) op basis van de huidige resource-instellingen. Nadat de wijziging is voltooid, kunt u voorbeeld 1 volgen om de handmatige RU/s te wijzigen in een aangepaste waarde.

In de hoofdtekst is de content eigenschap met een gedefinieerd offerAutopilotSettings en maxThroughput vereist, maar de waarde wordt genegeerd door de service. Hieronder passeren we -1.

Meer informatie over migreren naar handmatige doorvoer.

PUT https://querydemo.documents.azure.com/offers/uT2L HTTP/1.1  
x-ms-version: 2018-12-31
x-ms-date: Wed, 22 Jul 2020 23:43:03 GMT
authorization: type%3dmaster%26ver%3d1.0%26sig%3dRdNwi9H3molMOsEoHXCUHa56N8U5eFDlfuewcSoiHgc%3d  
Accept: application/json
x-ms-cosmos-migrate-offer-to-manual-throughput: true
Content-Type: application/json
User-Agent: contoso/1.0  
Host: querydemo.documents.azure.com
Connection: keep-alive
Content-Length: 280

{
  "offerVersion": "V2",
  "offerType": "Invalid",
  "content": {
    "offerAutopilotSettings": {"maxThroughput": -1}
  },
  "resource": "dbs/rgkVAA==/colls/rgkVAMHcJww=/",  
  "offerResourceId": "rgkVAMHcJww=",  
  "id": "uT2L",
  "_rid": "uT2L"
}

Hieronder ziet u een voorbeeld van de antwoordtekst. De eigenschap offerThroughput vertegenwoordigt de handmatige doorvoer (RU/s) die is ingesteld voor de resource.

{
    "resource": "dbs/rgkVAA==/colls/rgkVAMHcJww=/",  
    "offerType": "Invalid",
    "offerResourceId": "rgkVAMHcJww=",
    "offerVersion": "V2",
    "content": {
        "offerThroughput": 4000,
        "offerIsRUPerMinuteThroughputEnabled": false,
        "offerMinimumThroughputParameters": {
            "maxThroughputEverProvisioned": 4000,
            "maxConsumedStorageEverInKB": 0
        },
        "offerLastReplaceTimestamp": 1595461384
    },
    "id": "uT2L",
    "_rid": "uT2L",
    "_self": "offers/uT2L/",
    "_etag": "\"2d002359-0000-0800-0000-5f18cf080000\"",
    "_ts": 1595461384
}

Opmerkingen

Wanneer u de doorvoer handmatig of automatisch schalen voor een database of container wijzigt, dwingt het systeem beperkingen af voor de RU/s die voor de resource kunnen worden ingesteld. Zie het artikel Doorvoer inrichten voor containers en databases voor meer informatie over de minimale en maximale ingerichte doorvoer (RU/s) die kunnen worden ingesteld met handmatige doorvoer. Zie de veelgestelde vragen over automatisch schalen voor meer informatie over het minimale maximum aantal RU/s voor automatische schaalaanpassing dat u kunt instellen.

Als u de minimale doorvoer wilt ophalen die kan worden ingesteld voor de database of container, voert u GET uit op de aanbiedingsresource. De antwoordheader x-ms-cosmos-min-throughput geeft de door het systeem bepaalde minimale doorvoer aan. Dit vertegenwoordigt de minimale waarde die u kunt instellen voor de RU/s voor een resource met handmatige doorvoer, of de minimumwaarde die u kunt instellen voor het maximum aantal RU/s voor automatisch schalen voor een resource met doorvoer voor automatische schaalaanpassing.

Zie ook