Особенности моделирования данных в хранилище таблиц Azure - PullRequest
0 голосов
/ 04 марта 2019

У меня есть список пользователей.Пользователь может войти в систему, используя имя пользователя или адрес электронной почты.

Как новичок в хранении таблиц Azure, это то, что я делаю для модели данных для быстрого сканирования индекса.

PartitionKey    RowKey                        Property
users:email     jacky@email.com               nickname:jack123
users:username  jack123                       email:jacky@email.com

Поэтому, когда пользователь входит в систему по электронной почте, я бы поставил PartitionKey eq users:email в запросе таблицы Azure.Если это username, Partition eq users:username.

Поскольку кажется невозможным смоделировать contains или like в запросе таблицы Azure, мне интересно, является ли это обычной практикой для хранениянесколько строк данных для 1 пользователя?

1 Ответ

0 голосов
/ 04 марта 2019

Поскольку кажется невозможным смоделировать содержимое или как в запросе к таблице Azure, мне интересно, является ли это обычной практикой для хранения нескольких строк данных для одного пользователя? Так как это кажется невозможнымдля имитации содержит или как в запросе таблицы Azure, мне интересно, если это обычная практика для хранения нескольких строк данных для 1 пользователя?

Это совершенно допустимая практика и на самом деле этоРекомендуемая практика.По сути, вам нужно будет определить атрибуты, по которым вы могли бы потенциально запросить хранилище таблиц, и каким-то образом использовать их как комбинацию PartitionKey и RowKey.

. См. Guidelines for table designдля дополнительной информации.По этой ссылке:

Рассмотрите возможность хранения дубликатов копий сущностей .Хранение таблиц обходится дешево, поэтому рассмотрите возможность хранения одного и того же объекта несколько раз (с разными ключами) для обеспечения более эффективных запросов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...