2

J'ai une table Azure appelée utilisateurs dont les champs serveral liés à l'utilisateur, j'ai PartitionKey comme UserId et RowKey comme CompanyId et je veux interroger la table via le champ Email qui n'est pas un PartionKey ou RowKey , Est-il possible d'interroger la table comme ça?Demande de table azure sans partitionkey et rowkey

Si oui, alors il est bon d'interroger sans PartitionKey et RowKey

Répondre

5

Vous pouvez interroger sans utiliser PartitionKey ou RowKey et service de table ne jeter aucune erreur mais s'il vous plaît garder à l'esprit que cela va faire une analyse complète de la table à partir de la première combinaison PartitionKey/RowKey jusqu'à ce que les entités correspondantes soient trouvées.

Ceci peut ne pas être un problème si votre table est petite. Cependant, ce sera un problème si votre table devient grande. Il y aurait une chance que vous n'obtiendrez pas de données mais juste le jeton de continuation et vous auriez besoin d'interroger votre table à nouveau en utilisant ce jeton de continuation.

Si vous souhaitez effectuer une requête sur un champ Email, je vous recommande vivement de dupliquer vos données afin que le champ Email devienne le PartitionKey.

Je ne sais pas si vous avez déjà lu ceci, mais je vous recommande vivement de lire Azure Table Storage Design Guide: https://azure.microsoft.com/en-in/documentation/articles/storage-table-design-guide/.

+0

j'ai essayé de le faire, il renvoyer les données, mais son trop lent, maintenant, je pensais sauver le champ email dans 'RegisteredUser table'. –

+0

'ça retourne les données mais c'est trop lent' -> C'est ce que je voulais dire en faisant un scan de table. Si vous surveillez le trafic réseau à l'aide d'un outil tel que Fiddler, vous remarquerez que de nombreux appels sont effectués vers Azure Table Storage Service. –

+0

Merci monsieur, Maintenant, je suis final à ce sujet à faire via la table 'RegisteredUserEmail'. –

0

Performance by query

Vous pouvez, mais il sera analyse complète et il est le pire des cas de l'utilisation du stockage de la table.

Vous devez changer votre conception et vous devez utiliser au moins une des clés. Vous pouvez créer des tables de stockage pour vos sociétés et faire de votre courrier électronique une partie de la clé de partion.

Note: Image prise par ce article