Résumé des fonctionnalités de stockage table
L’API REST Stockage Table Azure est conforme à la spécification du protocole OData, avec quelques différences, comme décrit dans les sections suivantes.
Extensions de stockage table
Le stockage table étend les fonctionnalités de OData
de la manière suivante.
Clé partagée, Clé partagée Lite et autorisation Microsoft Entra
Le stockage table nécessite que chaque requête soit autorisée. La clé partagée, la clé partagée Lite et l’autorisation Microsoft Entra ID sont prises en charge. Microsoft Entra ID autorisation est plus sécurisée, et elle est recommandée pour les demandes effectuées sur le stockage Table à l’aide de l’API REST.
Pour plus d’informations sur l’autorisation des demandes, consultez Autoriser les demandes dans stockage Azure.
Jetons de continuation pour la pagination des requêtes
Une requête sur le stockage table peut retourner un maximum de 1 000 éléments à la fois et peut s’exécuter pendant cinq secondes maximum. Si le jeu de résultats contient plus de 1 000 éléments, ou si la requête ne s’est pas terminée dans les cinq secondes, la réponse inclut des en-têtes. Ces en-têtes fournissent au développeur des jetons de continuation à utiliser, afin de reprendre la requête à l’élément suivant du jeu de résultats. Les en-têtes de jeton de continuation peuvent être retournés pour une opération Tables de requête ou une opération d’entités de requête .
Notez que la durée totale allouée à la demande pour planifier et gérer la requête est de 30 secondes, y compris les cinq secondes pour l'exécution de la requête.
Pour plus d’informations sur les jetons de continuation, consultez Délai d’expiration et pagination des requêtes.
Propriétés système de la clé primaire
Chaque entité du stockage Table a deux propriétés clés : la PartitionKey
propriété et la RowKey
propriété . Ces propriétés forment la clé primaire de la table et identifient de manière unique chaque entité de la table.
Ces deux propriétés requièrent des valeurs de chaîne. Il incombe au développeur de fournir des valeurs pour ces propriétés lorsqu’une nouvelle entité est insérée et de les inclure dans toute opération de mise à jour ou de suppression sur une entité.
Pour plus d’informations sur ces propriétés de clé requises, consultez Présentation du modèle de données Stockage Table.
Propriété système Timestamp
Chaque entité du stockage Table a une Timestamp
propriété système. La Timestamp
propriété est une DateTime
valeur, conservée côté serveur, pour enregistrer l’heure de la dernière modification d’une entité. Le stockage table utilise la Timestamp
propriété en interne pour fournir une concurrence optimiste. La valeur Timestamp
est une valeur à croissance monotone, ce qui signifie que chaque fois que l'entité est modifiée, la valeur Timestamp
augmente de cette entité. Cette propriété ne doit pas être utilisée pour les opérations d'insertion ou de mise à jour (la valeur sera ignorée).
Pour plus d’informations sur la Timestamp
propriété, consultez Présentation du modèle de données Stockage Table.
Opérations de traitement par lots
Le stockage table prend en charge les transactions par lots sur des entités qui se trouvent dans la même table et appartiennent au même groupe de partitions, ce qui signifie qu’elles ont la même PartitionKey
valeur. Cela permet la prise en charge de plusieurs opérations d'insertion, de mise à jour, de fusion et de suppression dans une seule transaction atomique. Le stockage table prend en charge un sous-ensemble des fonctionnalités fournies par le protocole OData.
Pour plus d’informations sur les opérations par lots, consultez Exécution de transactions de groupe d’entités.
Restrictions de stockage table
Le stockage table a les restrictions suivantes sur les fonctionnalités fournies par OData
.
Credentials, propriété
Le stockage Table ne prend pas en charge l’utilisation de la propriété Credentials de la classe DataServiceContext pour autoriser une demande. Au lieu de cela, vous devez autoriser une demande auprès du stockage Table en ajoutant un Authorization
en-tête à la demande. Pour plus d’informations, consultez Autoriser les requêtes auprès du Stockage Azure.
Types de propriété
Tous les types de propriétés pris en charge par OData
ne sont pas pris en charge. Pour obtenir la liste des types de propriétés pris en charge, consultez Présentation du modèle de données Stockage Table.
Opérations sur les liens
Le stockage table ne prend actuellement pas en charge les liens entre les tables. Les liens sont des relations associatives entre les données.
Opérations sur les propriétés de sélection
La projection fait référence à l’interrogation d’un sous-ensemble des propriétés d’une ou plusieurs entités. Cela s’apparente à la sélection d’un sous-ensemble des colonnes ou propriétés d’une table lorsque vous interrogez dans des requêtes intégrées au langage (LINQ).
La projection réduit la quantité de données devant être retournées par une requête en indiquant que seules certaines propriétés doivent être retournées dans la réponse. La projection est prise en charge dans le cadre de la version 2011-08-18 de Stockage Azure. Pour plus d’informations, consultez Entités de requête, Écriture de requêtes LINQ sur le stockage table et OData : Sélectionner l’option de requête système ($select) .
Opérateurs de requête LINQ
Le stockage table prend en charge les opérateurs de requête LINQ suivants :
From
Where
Take
Pour plus d’informations, consultez Opérateurs de requête pris en charge pour le stockage Table.
Opérateurs de comparaison LINQ
Vous pouvez utiliser un sous-ensemble des opérateurs de comparaison fournis par LINQ. Pour plus d’informations, consultez Interrogation de tables et d’entités etÉcriture de requêtes LINQ sur le stockage table.
Méthode GetMetadataURI
Vous pouvez utiliser la méthode GetMetadataURI de la classe DataServiceContext , mais elle ne retourne aucune information de schéma au-delà des trois propriétés de schéma fixes. Ces propriétés sont PartitionKey
, RowKey
et Timestamp
.
Formats de charge utile
OData
prend en charge l’envoi de charges utiles au format JSON. Le stockage Table prend en charge le OData
format JSON à partir de la version d’API 2013-08-15, avec la version du OData
service de données définie sur 3.0. Les versions antérieures ne prennent pas en charge le format JSON.
Les charges utiles Atom sont prises en charge dans toutes les versions antérieures à 2015-12-11. Les versions 2015-12-11 et ultérieures prennent uniquement en charge les charges utiles JSON.
Notes
JSON est le format de charge utile recommandé, et il s’agit du seul format pris en charge pour la version 2015-12-11 et ultérieure.
Pour plus d’informations, consultez Format de charge utile pour les opérations de stockage table et Définition des en-têtes de version du service de données OData.