Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Zerograph is an alternative server
container for one or more Neo4j graph
databases that uses ZeroMQ for fast and
reliable ...
Basic Architecture
Python client
application
Java server
(embedded)
ZeroMQ
transport
JSON
YAML
Multi-tenancy
PATCH Graph {"host":"localhost","port":47471}
!Graph {"host":"localhost","port":47471}
from zerograph import...
Working with Entities
a, b = graph.create(Node(name="Alice"),
Node(name="Bob"))
ab, = graph.create(Path(a, "KNOWS", b))
a....
Performance (rough)
● Desktop Linux PC (quad-core AMD
Phenom™ II X4 965 with 4GB RAM)
● Fast YAML loader (C, not Python)
C...
Resilience
ZeroMQ
Sockets
Can I use it?
● Built in a limited environment
● Not mature
● Not (yet) a production replacement
Can I use it?
● Built in a limited environment
● Not mature
● Not (yet) a production replacement
● Test and give feedback
...
nigelsmall.com/zerograph
@neonige
Zerograph
Upcoming SlideShare
Loading in …5
×

Zerograph

635 views

Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Zerograph

  1. 1. Zerograph is an alternative server container for one or more Neo4j graph databases that uses ZeroMQ for fast and reliable communication and comes bundled with a Python client.
  2. 2. Basic Architecture Python client application Java server (embedded) ZeroMQ transport JSON YAML
  3. 3. Multi-tenancy PATCH Graph {"host":"localhost","port":47471} !Graph {"host":"localhost","port":47471} from zerograph import * graph = Graph.open(port=47471) Graph.drop(port=47471)
  4. 4. Working with Entities a, b = graph.create(Node(name="Alice"), Node(name="Bob")) ab, = graph.create(Path(a, "KNOWS", b)) a.labels.add("Person") a.properties["age"] = 33 a.push() A B A B create delete push pull ab.properties["since"] = 1999 ab.push()
  5. 5. Performance (rough) ● Desktop Linux PC (quad-core AMD Phenom™ II X4 965 with 4GB RAM) ● Fast YAML loader (C, not Python) Creation test: ~0.25s/1000 nodes ~0.50s/1000 relationships
  6. 6. Resilience ZeroMQ Sockets
  7. 7. Can I use it? ● Built in a limited environment ● Not mature ● Not (yet) a production replacement
  8. 8. Can I use it? ● Built in a limited environment ● Not mature ● Not (yet) a production replacement ● Test and give feedback ● Try it, build on it, improve it ● Other languages ● Other operating systems
  9. 9. nigelsmall.com/zerograph @neonige

×