Nice demonstration of a side effect!
/peter
Sent from my phone.
Instead of using Gremlin to do batch queries where you issue a query and update a map or group counter and wait for the results, you can create a user-defined Gremlin step that updates and interacts with Redis in real time.
+ 1 on that!
/peter
Sent from my phone.
Ah. Within a "services architecture," yes, that is pretty sweet. A way for the results of a Gremlin traversal to be exposed to services. Classy.
Huh... thats actually pretty crazy as it sorta bypasses the need for Rexster's REST interface in some situations. For example, trigger a Gremlin query through Rexster which is updating a Redis server. Then, when complete, don't get the results streamed back as JSON through Rexster, simply ping Redis for data... Also, have multiple different services having access to those side effect results :/ .. hmmm.. . . . . . . . . . perhaps too spaghetti ?...
What else are you thinking?
Marko.
Something else to consider. Multiple users all can push data from
gremlin queries to Redis (or any cache for that matter). Could make
targeted mashups. Given blueredis, in theory you could then query the
results again using Gremlin. Feels too computer science theory?
Daniel
Russell Jurney
twitter.com/rjurney
russell...@gmail.com
datasyndrome.com
On another note, a memory pipe is a great idea Marko. Quick
question... lets say you run a traversal, and as you traverse you
modify or add nodes to the graph. How would you make sure that the
MemoizationPipe's map is in sync? Or is the objective to not be in
sync but instead hold the state of the DB at the time of the previous
traversal?
-Daniel
On another note, a memory pipe is a great idea Marko. Quick
question... lets say you run a traversal, and as you traverse you
modify or add nodes to the graph. How would you make sure that the
MemoizationPipe's map is in sync? Or is the objective to not be in
sync but instead hold the state of the DB at the time of the previous
traversal?
-Daniel