У меня есть контейнер больших двоичных объектов в учетной записи хранения, где каждый большой двоичный объект является изображением. Я добавил поля метаданных «w» и «h» для каждого большого двоичного объекта, содержащего ширину и высоту изображения.
Я выполнил инструкции Вот чтобы добавить службу поиска в хранилище больших двоичных объектов, за исключением того, что я добавил метаданные, а не содержимое большого двоичного объекта.
Я могу подтвердить, что метаданные есть и действительны, если я просматриваю большие двоичные объекты на портале Azure, я вижу поля с действительными данными, и если я выполняю «search = *» в проводнике поиска, я получаю это обратно для каждого большого двоичного объекта:
{
"@search.score": 1,
"w": 640,
"h": 424,
"metadata_storage_path": "......"
}
Моя проблема в том, что я хочу искать по ширине (w) и высоте (h) изображения и не могу понять, как это сделать.
Пробовал эти примеры запросов для поиска w = 640, но безуспешно, просто возвращает все капли или ошибки:
w=640
search=*&w=640
search=*&w eq 640
w eq 640
Я заметил одну вещь: при записи метаданных больших двоичных объектов (я использовал библиотеку Python хранилища Azure) вы можете записывать только строковые данные. Но когда вы указываете поля в источнике данных, вы можете установить их как int32.
Как включить поиск с возможностью фильтрации по полям метаданных больших двоичных объектов?
Редактировать: Согласно ответу SumanthMarigowda-MSFT, я посмотрел этот doc, и в моем случае вот несколько примеров запросов:
Только 640x480:
search=*&$filter=(w eq 640 and h eq 480)
Все с w между 640 и 700:
search=*&$filter=(w ge 640 and w lt 700)
На форуме MSDN есть аналогичный запрос, вы можете обратиться к предложению, упомянутому в этом ссылка на сайт.