Polyglot Persistence in Action
Friday, August 13, 2010 at 12:00PM |
Derek Stainer We are seeing today more instances of polyglot programming, where multiple languages exist in harmony. Well we are starting to see the same approach when it come to persistence. Whenever you read posts about what NoSQL is about, one of the common answers is choice. The idea that you choose the right tool for the job. In the end that is what polyglot persistence is all about, chosing one or more persistence frameworks to solve your problems.
So with that said I turn your attention to a recent post by Todd Stavish concerning the very topic of polyglot persistence. Todd has built a sample application that uses both Cassandra and InfiniteGraph with interesting results:
A feature of the hybrid system that was particularly useful was the ability to to learn from the graph and update the original Cassandra store. For instance, learning a shorter path between friends in InfiniteGraph and then updating the columns in Cassandra. For a friend suggestion application, the shortest might be the critical one. However, InfiniteGraph can hop vertexes and edges quickly. Therefore, calculating the longer paths was possible too. Alternative longer path are useful for certain applications like tracking money laundering or other law enforcement needs. In general, I found that I could easily try multi-path analysis, update Cassandra, then run my original queries in Cassandra over the new data
Check out the post and the code Todd's provided
Read more: Polyglot Persistence: Integrating Low-Latency NoSQL Systems (Cassandra and InfiniteGraph)
Cassandra,
InfiniteGraph,
Todd Stavish 

Reader Comments