Azure
無法讓搜尋查詢適用於 Azure blob 元數據欄位
我在儲存帳戶中有一個 blob 容器,其中每個 blob 都是一個圖像。我已將“w”和“h”元數據欄位添加到每個包含圖像寬度和高度的 blob。
我已按照此處的說明將搜尋服務添加到 blob 儲存,但我添加了元數據而不是 blob 內容。
我可以確認元數據存在且有效,如果我瀏覽 Azure 門戶中的 blob,我可以看到包含有效數據的欄位,如果我在搜尋資源管理器中執行“search=*”,我會為每個 blob 獲取此資訊:
{ "@search.score": 1, "w": 640, "h": 424, "metadata_storage_path": "......" }
我的問題是我想按圖像寬度(w)和高度(h)搜尋並且無法鍛煉。
嘗試了這些範例查詢以搜尋 w=640,但沒有成功,只返回所有 blob 或錯誤:
w=640 search=*&w=640 search=*&w eq 640 w eq 640
我注意到的一件事是,在編寫 blob 元數據時(我使用了 Azure 儲存 Python 庫),您只能編寫字元串數據。但是當您指定數據源中的欄位時,可以將它們設置為 int32。
如何啟用對 blob 元數據欄位的可過濾搜尋?
編輯: 根據 SumanthMarigowda-MSFT 的回答,我查看了這個文件,在我的情況下,這裡有一些範例查詢:
僅 640x480:
search=*&$filter=(w eq 640 and h eq 480)
所有 w 介於 640 和 700 之間:
search=*&$filter=(w ge 640 and w lt 700)
MSDN 論壇上有類似的查詢討論,您可以參考此連結中提到的建議。