1
The Titan documentation工作由()說:指數不使用順序()時,在土衛六
混合索引支持本地和有效地定購。但是,order()。by()方法中使用的屬性鍵必須先前已添加到混合索引以獲得本機結果排序支持。這在order()。by()鍵與查詢鍵不同的情況下非常重要。如果屬性鍵不是索引的一部分,則排序需要將所有結果加載到內存中。
因此,我做了prop1
財產的混合指數。當指定值時,prop1
上的混合索引效果很好。
gremlin> g.V().has('prop1', gt(1)) /* this gremlin uses the mixed index */
==>v[6017120]
==>v[4907104]
==>v[8667232]
==>v[3854400]
...
但是,當我使用prop1
order().by()
我不能把混合指數的優勢。
gremlin> g.V().order().by('prop1', incr) /* doesn't use the mixed index */
17:46:00 WARN com.thinkaurelius.titan.graphdb.transaction.StandardTitanTx - Query requires iterating over all vertices [()]. For better performance, use indexes
Could not execute query since pre-sorting requires fetching more than 1000000 elements. Consider rewriting the query to exploit sort orders
另外count()
需要這麼長時間。
gremlin> g.V().has('prop1').count()
17:44:47 WARN com.thinkaurelius.titan.graphdb.transaction.StandardTitanTx - Query requires iterating over all vertices [()]. For better performance, use indexes
如果我知道我有什麼問題,我會很高興。這裏是我的泰坦信息:
- 泰坦版本:1.0.0-hadoop1
- 存儲後端:卡桑德拉2.1.1
- 指數後端:ElasticSearch 1.7
謝謝。
非常感謝! –