Используя Titan w/Cassandra v 0.3.1, я создал индекс ключа вершины через createKeyIndex
, как описано в Titan docs.Титановый поиск по индексированному ключу невероятно медленный?
gremlin> g.createKeyIndex("my_key", Vertex.class)
==>null
теперь у меня appx 50k узлы и 186K ребер в графе, и я найти существенную разницу в производительности между использованием выборок my_key
. Этот запрос занимает около 5 секунд, чтобы запустить:
gremlin> g.V.has("my_key", "abc")
==>v[12345]
, тогда как с использованием индекса ID занимает менее 1 секунды:
gremlin> g.v(12345)
==>v[12345]
my_key
не имеет уникальное ограничение (я не хочу), но мне интересно, что вызывает такое несоответствие в производительности. Как повысить производительность при поиске для неидеального, проиндексированного вершинного ключа?
Это не точно, как Титан 0.5.0: 'gVhas (» my_key "," abc ")' теперь будет использовать доступный индекс в ключе 'my_key'. См. [Index docs] Титана (http://s3.thinkaurelius.com/docs/titan/current/indexes.html). – AliOli