0
我有一個用例來根據搜索名稱的頂點標籤進行遍歷。基於頂點標籤的遍歷
例如:我們的系統中有三種標籤Org,Asset和Class(都包含名稱作爲頂點的鍵)。 如果我們按名稱搜索並發現它是一個Org頂點,我想要執行特定的遍歷,以排除對其他頂點的額外遍歷。
所以在這個機制中,當我們必須爲該頂點找到一個標籤時,必須執行全局搜索,這不是一個解決方案。
那麼建議使用什麼機制(對於圖中的全文/部分文本搜索)?
我有一個用例來根據搜索名稱的頂點標籤進行遍歷。基於頂點標籤的遍歷
例如:我們的系統中有三種標籤Org,Asset和Class(都包含名稱作爲頂點的鍵)。 如果我們按名稱搜索並發現它是一個Org頂點,我想要執行特定的遍歷,以排除對其他頂點的額外遍歷。
所以在這個機制中,當我們必須爲該頂點找到一個標籤時,必須執行全局搜索,這不是一個解決方案。
那麼建議使用什麼機制(對於圖中的全文/部分文本搜索)?
你可以做類似
inject('Org','Asset','Class').flatMap{
g.V().has(it.get(),'name', 'theNameYouArSearchingFor')
}.
choose(label()).
option('Org', someTraversalForOrg()).
option('Asset', someTraversalForAsset()).
option('Class', someTraversalForClass())
我認爲,爲了使用索引查找,您需要使用三值的形式有() - 也就是說,你需要指定一個標籤。但是,如果您想要爲多個標籤使用索引查找,則必須執行三次單獨的查找,並將它們與flatMap結合起來,如此處所示。
您能否提供一個示例圖 - 理想情況下用Gremlin代碼生成圖 - 並解釋遍歷的預期結果? –