Samenvatting van de functionaliteit van table-service

De Tabelservice REST API voldoet aan de OData-protocolspecificatie, met enkele verschillen, zoals beschreven in de volgende secties.

Table Service-extensies

Beperkingen voor Table Service

Table Service-extensies

De Table-service breidt de functionaliteit van OData op de volgende manieren uit.

Shared Key, Shared Key Lite en Azure Active Directory autorisatie

De Tabelservice vereist dat elke aanvraag wordt geautoriseerd. Shared Key, Shared Key Lite en Azure Active Directory (Azure AD) worden ondersteund. Azure AD-autorisatie is veiliger en wordt aanbevolen voor aanvragen die zijn ingediend bij de Table-service met behulp van de REST API.

Zie Aanvragen autoriseren voor meer informatie over het autoriseren van Azure Storage.

Vervolgtokens voor query paginering

Een query op de Table-service kan maximaal 1000 items tegelijk retourneren en kan maximaal vijf seconden worden uitgevoerd. Als de resultatenset meer dan 1000 items bevat, of als de query niet binnen vijf seconden is voltooid, bevat het antwoord headers waarmee de ontwikkelaar vervolgtokens kan gebruiken om de query bij het volgende item in de resultatenset te hervatten. Vervolg tokenheaders kunnen worden geretourneerd voor een querytabellen bewerking of een query entiteiten bewerking.

Houd er rekening mee dat de totale tijd die is toegewezen aan de aanvraag voor het plannen en verwerken van de query 30 seconden is, inclusief de vijf seconden voor het uitvoeren van de query.

Zie Time-out van query's en Paginering voor meer informatie over vervolgtokens.

Systeemeigenschappen primaire sleutel

Elke entiteit in de Table-service heeft twee belangrijke eigenschappen: PartitionKey de eigenschap en de eigenschap RowKey . Deze eigenschappen vormen samen de primaire sleutel van de tabel en identificeren elke entiteit in de tabel uniek.

Voor beide eigenschappen zijn tekenreekswaarden vereist. Het is de verantwoordelijkheid van de ontwikkelaar om waarden op te geven voor deze eigenschappen wanneer een nieuwe entiteit wordt ingevoegd en deze op te nemen in een update- of verwijderbewerking op een entiteit.

Zie Understanding the Table Service Data Model (Inzicht in het gegevensmodel van tableservice) voor meer informatie over deze vereiste sleuteleigenschappen.

Systeem-eigenschap tijdstempel

Elke entiteit in de Tabelservice heeft een Timestamp systeem-eigenschap. De eigenschap is een waarde die wordt onderhouden aan de serverzijde om vast te registreren op welke tijd een entiteit voor het laatst Timestamp DateTime is gewijzigd. De Tabelservice gebruikt de Timestamp eigenschap intern om optimistische gelijktijdigheid te bieden. De waarde van is een monotone toenemende waarde, wat betekent dat telkens als de entiteit wordt gewijzigd, de waarde van Timestamp Timestamp toeneemt voor die entiteit. Deze eigenschap mag niet worden ingesteld bij invoeg- of bijvoegbewerkingen (de waarde wordt genegeerd).

Zie Understanding Timestamp the Table Service Data Model (Het gegevensmodel van de tabelservice)voor meer informatie over de eigenschap .

Batchbewerkingen

De Table-service ondersteunt batchtransacties op entiteiten die zich in dezelfde tabel en behoren tot dezelfde partitiegroep, wat betekent dat ze dezelfde waarde PartitionKey hebben. Hierdoor kunnen meerdere invoeg-, update-, samenvoegings- en verwijderbewerkingen worden ondersteund binnen één atomische transactie. De Table-service ondersteunt een subset van de functionaliteit van het OData-protocol.

Zie Entiteitsgroepstransacties uitvoeren voor meer informatie over batchbewerkingen.

Beperkingen voor Table Service

De Table-service heeft de volgende beperkingen voor de functionaliteit van OData.

Eigenschap Credentials

De Table-service biedt geen ondersteuning voor het gebruik van de eigenschap Credentials van de klasse DataServiceContext om een aanvraag te autor toestemming te geven. In plaats daarvan moet u een aanvraag voor de Tabelservice autoreren door een Authorization header aan de aanvraag toe te voegen. Zie Aanvragen voor toegang tot Azure Storage voor meer Azure Storage.

Eigenschapstypen

Niet alle eigenschapstypen die door OData worden ondersteund, worden ondersteund door de Tabelservice. Zie Understanding the Table Service Data Model (Inzicht in het tabelservicegegevensmodel) voor een lijst met ondersteunde eigenschapstypen.

De Tabelservice biedt momenteel geen ondersteuning voor koppelingen tussen tabellen. Koppelingen zijn koppelingsrelaties tussen gegevens.

Bewerkingen in Eigenschappen selecteren

Projectie verwijst naar het uitvoeren van query's op een subset van de eigenschappen voor een entiteit of entiteiten. Dit is vergelijkbaar met het selecteren van een subset van de kolommen of eigenschappen van een tabel bij het uitvoeren van query's in LINQ. Projectie vermindert de hoeveelheid gegevens die door een query moet worden geretourneerd door op te geven dat alleen bepaalde eigenschappen in het antwoord worden geretourneerd. Projectie wordt ondersteund als onderdeel van de versie 2011-08-18 van de Azure Storage-services. Raadpleeg Query entities, Writing LINQ Queries Against the Table Service (LINQ-query'sschrijven voor de tabelservice) en OData: Select System Query Option ($select) voor meer informatie.

LINQ-queryoperators

De Tabelservice ondersteunt het gebruik van taalgeintegreerde query's (LINQ). Alleen deze LINQ-queryoperators worden ondersteund voor gebruik met de Table-service:

  • From

  • Where

  • Take

Zie Queryoperators ondersteund voor de tabelservice voor meer informatie.

LINQ-vergelijkingsoperators

De Table-service ondersteunt het gebruik van een subset van de vergelijkingsoperators van LINQ. Zie Querying Tables and Entities (Tabellen en entiteiten opvragen) en WRITING LINQ Queries Against the Table Service (LINQ-query's schrijven voor de tableservice) voor meer informatie.

Methode GetMetadataURI

De Table-service ondersteunt de GetMetadataURI-methode van de klasse DataServiceContext, maar retourneerde geen schemagegevens buiten de drie vaste schema-eigenschappen. Deze eigenschappen zijn PartitionKey RowKey , en Timestamp .

Indelingen voor nettoladingen

OData ondersteunt het verzenden van nettoladingen in JSON-indeling. De Azure Table-service ondersteunt de OData JSON-indeling vanaf API-versie 2013-08-15, met de versie van de OData-gegevensservice ingesteld op 3.0; eerdere versies bieden geen ondersteuning voor de JSON-indeling.

Atom-nettoladingen worden ondersteund in alle versies vóór 2015-12-11. Versie 2015-12-11 en hoger ondersteunen alleen JSON-nettoladingen.

Notitie

JSON is de aanbevolen nettoladingindeling en is de enige indeling die wordt ondersteund voor versies 2015-12-11 en hoger.

Zie Payload Format for Table Service Operations (Nettoladingsindeling voor Table Service-bewerkingen) en Setting the OData Data Service Version Headers (Versieheaders voor OData Data Service instellen) voor meer informatie.

Zie ook

Tabelservice REST API