Может ли запрос таблицы хранения Microsoft Azure фильтровать результаты по значению свойства

В настоящее время я изучаю таблицу хранения Azure. Я кое-что узнал от http://azure.microsoft.com/en-us/documentation/articles/storage-dotnet-how-to-use-table-storage-20/

Кажется, хранилище пары ключ / значение. Он имеет ключ раздела, ключ строки и включает до 252 свойств.

По приведенной выше ссылке он может фильтровать только результаты запроса по ключу строки. Можем ли мы запросить результат путем фильтрации одного из свойств.

Мой проект - перенести нашу текущую базу данных sql в таблицу хранения Azure.

Текущая база данных SQL имеет три столбца

Столбец А, Столбец В, Столбец С

В настоящее время наша функция должна поддерживать запросы как путем фильтрации столбца a, так и столбца b. При переходе на таблицу хранения Azure нам необходимо сохранить функцию

Я думаю, что мы можем установить только один из двух столбцов в качестве ключа строки, а остальные должны быть в свойствах таблицы Azure. Кроме того, я не думаю, что столбец b может быть ключом строки, поскольку он не может однозначно идентифицировать строку в нашей предыдущей таблице sql (мое понимание верно?)

Поэтому я могу запрашивать по столбцам a и b, если я задаю только столбец a в качестве ключа строки и столбец b в качестве свойства при переносе таблицы в хранилище Azure. Если нет, есть ли предложения по ее решению?

Спасибо

1 ответ

Да, вы можете фильтровать по любому атрибуту. Однако имейте в виду, что индексируются только PartitionKey и RowKey, поэтому любая операция запроса, которая не включает хотя бы PartitionKey, приведет к полному сканированию таблицы. Это станет проблемой, если ваша таблица содержит много объектов.

Другие вопросы по тегам