Sto usando Titan v0.3.1 e vorrei vedere un elenco di quali chiavi ho già indicizzato tramite createKeyIndex
. Come posso fare questo?Come posso ottenere un elenco di chiavi indicizzate in Titan?
risposta
Come si è trovato da soli, è possibile utilizzare il metodo Blueprints getIndexedKeys(Vertex.class)
per questo, tuttavia il sistema di tipo Titan ha molto altro da offrire rispetto a createKeyIndex
. Più a lungo si lavora con Titan più si desidera conoscere il sistema Type Maker:
https://github.com/thinkaurelius/titan/wiki/Type-Definition-Overview
In questo caso i tipi restituiti da getIndexedKeys
potrebbe non essere sufficiente. Ecco alcuni Gremlin per ottenere maggiori dettagli:
gremlin> g = GraphOfTheGodsFactory.create('/tmp/titan')
13/08/28 16:28:23 INFO diskstorage.Backend: Configuring index [search] based on:
...
13/08/28 16:28:25 INFO cluster.metadata: [Astaroth/Asteroth] [titan] update_mapping [vertex] (dynamic)
==>titangraph[local:/tmp/titan]
gremlin> import static com.thinkaurelius.titan.graphdb.types.system.SystemKey.*
==>import com.tinkerpop.gremlin.*
==>import com.tinkerpop.gremlin.java.*
==>import com.tinkerpop.gremlin.pipes.*
==>import com.tinkerpop.gremlin.pipes.filter.*
==>import com.tinkerpop.gremlin.pipes.sideeffect.*
==>import com.tinkerpop.gremlin.pipes.transform.*
...
==>import static com.thinkaurelius.titan.graphdb.types.system.SystemKey.*
gremlin> import com.thinkaurelius.titan.graphdb.types.*
==>import com.tinkerpop.gremlin.*
==>import com.tinkerpop.gremlin.java.*
==>import com.tinkerpop.gremlin.pipes.*
==>import com.tinkerpop.gremlin.pipes.filter.*
==>import com.tinkerpop.gremlin.pipes.sideeffect.*
==>import com.tinkerpop.gremlin.pipes.transform.*
...
==>import com.thinkaurelius.titan.graphdb.types.*
gremlin> g.newTransaction().getVertices(TypeClass, TitanTypeClass.KEY).collect{[it.name,it.dataType]}
==>[reason, class java.lang.String]
==>[name, class java.lang.String]
==>[type, class java.lang.String]
==>[time, class java.lang.Integer]
==>[place, class com.thinkaurelius.titan.core.attribute.Geoshape]
==>[age, class java.lang.Integer]
Si potrebbe desiderare di guardare l'API Titan per ulteriori informazioni sul TitanKey
che viene restituito da quella chiamata a getVertices
(come tipi vengono memorizzate come vertici):
http://thinkaurelius.github.io/titan/javadoc/0.3.2/com/thinkaurelius/titan/core/TitanKey.html
Nella shell Gremlin, è possibile utilizzare Blueprints' KeyIndexableGraphgetIndexedKeys
funzione:
gremlin> g.getIndexedKeys(Vertex.class)
==>my_key_1
==>my_key_2
==>my_key_3
(my_key_1
, my_key_2
, e my_key_3
sono i tasti vertex indicizzati 3)
per afferrare gli indici di tasti bordi, utilizzare Edge.class
al posto di Vertex.class
sopra.
- 1. Come trovare chiavi esterne non indicizzate in SQL Server
- 2. Come posso ottenere l'elenco delle chiavi in un dizionario?
- 3. Come posso ottenere un elenco di file modificati in svn?
- 4. "Supernodi" in Titan
- 5. Come posso ottenere un elenco dei simboli in un'espressione sympy?
- 6. Come posso ottenere le permutazioni di un elenco?
- 7. Come posso ottenere un elenco di dispositivi webcam usando opencv?
- 8. Come posso ottenere un elenco di aggiornamenti e hotfix installati?
- 9. Come posso ottenere un elenco degli eventi di una pagina?
- 10. Come posso ottenere un elenco di bean istanziati da Spring?
- 11. Come posso interrogare memcached con php per ottenere un elenco di tutte le sue chiavi in memoria?
- 12. Elenco chiavi UIManager Java
- 13. Come ordinare OrderedDict usando un elenco ordinato di chiavi?
- 14. Come posso filtrare un array di hash per ottenere solo le chiavi in un altro array?
- 15. Come ottenere un elenco di unità logiche
- 16. Come posso valutare un elenco di stringhe come un elenco di tuple in Python?
- 17. Come si elencano tutte le viste indicizzate in SQL Server?
- 18. Come ottenere un elenco secondario in C#
- 19. pitone: come ordinare un elenco complesso su due chiavi diverse
- 20. chiavi straniere in visualizzazione elenco django amministratore
- 21. Come posso convertire un elenco di dizionari in un dizionario di liste in Python?
- 22. Come ottenere un elenco di viste MySQL?
- 23. Come ottenere un elenco distinto da un elenco personalizzato?
- 24. Dove posso ottenere un elenco di tutti gli elementi iOS?
- 25. Estrarre tutte le chiavi da un elenco di dizionari
- 26. Come posso invertire un elenco in python?
- 27. Come posso troncare un elenco in C#?
- 28. Come posso ottenere le chiavi in un hash multidimensionale in Ruby?
- 29. Come posso ottenere un elenco di utenti bloccati in un database Oracle?
- 30. Come posso ottenere un elenco di metodi disponibili in un servizio Web WebAPI?
Questo è fantastico, grazie @ stephen-mallette. Hai ragione sugli altri tipi di Titan: ho già esplorato l'integrazione di ElasticSearch con Titan per indici e ricerche più avanzati. – bcm360