我有一張保存企業雲基礎架構拓撲結構的圖表。它由稱爲對象(機器)的頂點和稱爲鏈接的邊緣組成(表示機器如何彼此鏈接,這些鏈接根據一臺機器可以連接根據需要到不同的機器)。基於Edge |屬性值的圖遍歷OrientDB
create class Object extends V
create class link extends E
對象頂點表示機器具有存儲機器配置的屬性。
create property Object.ram long
create property Object.mem long
create property Object.cpu_core long
「鏈接」邊緣鏈接機器在一起以形成topology.It是出站邊緣從一個機器到另一個。它有兩個基於時間的屬性startTime,它表示在兩臺機器之間創建此邊緣的時間,以及最初爲無窮大的endTime,如果我們需要關閉表示兩臺機器並且現在不再鏈接的Edge,則爲update。
create property link.startTime long
create property link.endTime long
create property link.l_id string
我從一個對象(頂點)到它的所有連接的對象強加鏈路(邊緣)的條件的特性,同時遍歷的時間說不想橫動,應開始時間< =噸< =結束時間。
例如Topology(請點擊鏈接) 我想從節點擺脫#21向下遍歷:使用鏈接的邊緣,其0到所有的邊緣開始時間> 1488965393和endTime < 1498965393.我很新的OrientDB而不是能夠找出相同的可能的SQL命令。
僞查詢(尋找可能的話類似的東西):
SELECT * FROM (TRAVERSE out('link') FROM #21:0 while startTime > 1488965393 and endTime < 1498965393)