Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

DataStax: Titan 1.0: Scalable real time and analytic graph queries

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Wird geladen in …3
×

Hier ansehen

1 von 37 Anzeige

DataStax: Titan 1.0: Scalable real time and analytic graph queries

Herunterladen, um offline zu lesen

Titan is a scalable graph database build on top of Apache Cassandra that supports both real time and analytic graph queries across distributed clusters. This talk focuses on the recently released Titan 1.0 and the new features it introduces. Titan implements the most recent version of the popular Apache Gremlin graph query language through a custom rewrite engine and query optimizer to efficiently execute deep traversal queries. Graph analytics and global breadth-first execution of Gremlin queries is executed by Apache Spark through the Cassandra-Spark connector. These features are demonstrated on a social use case to highlight how Titan can deliver relationship value with little development effort.

Titan is a scalable graph database build on top of Apache Cassandra that supports both real time and analytic graph queries across distributed clusters. This talk focuses on the recently released Titan 1.0 and the new features it introduces. Titan implements the most recent version of the popular Apache Gremlin graph query language through a custom rewrite engine and query optimizer to efficiently execute deep traversal queries. Graph analytics and global breadth-first execution of Gremlin queries is executed by Apache Spark through the Cassandra-Spark connector. These features are demonstrated on a social use case to highlight how Titan can deliver relationship value with little development effort.

Anzeige
Anzeige

Weitere Verwandte Inhalte

Andere mochten auch (19)

Ähnlich wie DataStax: Titan 1.0: Scalable real time and analytic graph queries (20)

Anzeige

Weitere von DataStax Academy (20)

Aktuellste (20)

Anzeige

DataStax: Titan 1.0: Scalable real time and analytic graph queries

  1. 1. Titan 1.0 A journey and lessons learned Matthias Broecheler @mbroecheler
  2. 2. Titan 1.0.0 titandb.io
  3. 3. June 14th 2012
  4. 4. Final Lesson It’s early days for Graph
  5. 5. Lesson 1 Don't reinvent basic database memory management
  6. 6. Lesson 2 Need for Scale-Out
  7. 7. g.V().has("user","name","Marko") .out("reviewed").values("title")
  8. 8. Lesson 3 To use graph effectively you need to “think” graph
  9. 9. June 14th 2012
  10. 10. Lesson 4 Use cases: Highly connected and heterogenous
  11. 11. g.V().hasLabel("product") .has("title",textContains("Titan")) .inE("reviewed") .has("score",5) .values("summary")
  12. 12. g.V().hasLabel("product") .has("title",textContains("Titan")) .inE("reviewed") .has("score",5) .values("summary") Graph-global retrieval Graph-local walk
  13. 13. g.V().hasLabel("product") .has("title",textContains("Titan")) .inE("reviewed") .has("score",5) .values("summary") TitanGraphStep TitanVertexStep
  14. 14. g.V().hasLabel("product") .has("title",textContains("Titan")) .inE("reviewed") .has("score",5) .values("summary")
  15. 15. Lesson 5 Flexible and adaptive query optimization
  16. 16. g.V().map(outE().count()).mean()
  17. 17. g.V().map(outE().count()).mean()
  18. 18. g.V().as("user") .filter( outE("reviewed").has("helpfulness") .count().is(gt(10))) .outE("reviewed") .has("helpfulness").as("r") .group().by(select("user")) .by(select("r").by("helpfulness")) .iterate()
  19. 19. Lesson 6 Graph OLTP and OLAP are converging
  20. 20. g.V().hasLabel("product") .has("title",textContains("Titan")) .inE("reviewed") .has("score",5) .values("summary")
  21. 21. g.V().hasLabel("product") .has("title",textContains("Titan")) .inE("reviewed") .has("score",5) .values("summary") .map{it.substring(10)}
  22. 22. g.V().has("ASIN","B000654OV0").match( __.as("p1").in("hasProduct").as("c"), __.as("p1").in("reviewed").as("u"), __.as("u").out("reviewed").as("p2"), __.as("p2").in("hasProduct").as("c") ).where("p1", neq("p2")).dedup("u") .select("u").by("userId")
  23. 23. Lesson 7 Graph needs declarative and imperative query language constructs
  24. 24. Final Lesson It's early days for Graph
  25. 25. Let’s discuss! Questions, comments, feedback? We are hiring
  26. 26. Abstract Titan is a scalable graph database build on top of Apache Cassandra that supports both real time and analytic graph queries across distributed clusters. This talk focuses on the recently released Titan 1.0 and the new features it introduces. Titan implements the most recent version of the popular Apache Gremlin graph query language through a custom rewrite engine and query optimizer to efficiently execute deep traversal queries. Graph analytics and global breadth-first execution of Gremlin queries is executed by Apache Spark through the Cassandra-Spark connector. These features are demonstrated on a social use case to highlight how Titan can deliver relationship value with little development effort.

×