[英]Is it possible to index nested attributes with ArangoSearch Views?
我想在以下文檔中創建一個ArangoSearch視圖:
"Title": [
{
"lang": "en",
"value": "Game of thrones"
},
{
"lang": "fr",
"value": "Throne de fer"
}
]
}
我試圖像這樣鏈接視圖:
{"links": {
"SearchTest": {
"analyzers": [
"identity",
"text_en",
"text_fr"
],
"fields": {
"Title[0].value": {
"analyzers": [
"text_en"
]
},
"Title[1].value": {
"analyzers": [
"text_fr"
]
}
},
"includeAllFields": true,
"storeValues": "id",
"trackListPositions": false
}
}}
但我似乎沒有工作
這是查詢
FOR d IN SearchTestVW SEARCH PHRASE(d.Title[0].value,'Game','text_en') RETURN d
它不會返回任何結果。 甚至可以這樣做嗎? 我嘗試過root屬性,它運行正常。 但我們的文件結構如下。
可以使用以下fields: { "objectName": fields: "fieldName"}
嵌套fields: { "objectName": fields: "fieldName"}
。 如果在“根”級別定義所有分析器並將includeAllFields
設置為true
,則甚至不需要單獨指定字段。
您可以在對象級別使用分析器,只需定義搜索索引應涵蓋的屬性。 這會減小索引的大小,您可以排除可能只是為結果添加“噪音”的字段。
"links": {
"SearchTest": {
"analyzers": [
"identity"
],
"fields": {
"Title": {
"analyzers": [
"text_en"
],
"fields": {
"value": {},
"lang": {}
}
}
},
"includeAllFields": false,
"storeValues": "none",
"trackListPositions": false
現在這應該工作:
FOR d IN SearchTestVW SEARCH PHRASE(d.Title.value,'Game','text_en') RETURN d
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.