Introducing Bazaarvoice datastore (EmoDB)
EmoDB is a RESTful HTTP server used by Bazaarvoice for storing JSON objects and for watching for changes to those events. It also supports a blob store, a queueing service, and a data bus to track events.
It is designed to span multiple data centers, using eventual consistency (AP) and multi-master conflict resolution. It relies on Apache Cassandra for persistence and cross-data center replication.
About Bazaarvoice
Bazaarvoice is based on a simple truth - when people talk to each other, people buy stuff they are happy about because they trust the opinions of others. We see a day when all voices are connected and, together, help the marketplace function better. We’ve built a network that connects businesses together to amplify the authentic voices of people wherever they shop – online, in-store and mobile. Our mission, just like our name, is to be the "voice of the marketplace", one authentic conversation at a time.
Each month, more than 450 million people view and share opinions, questions and experiences on more than 20 million products in the Bazaarvoice network. Our technology platform channels these voices into places that help consumers make purchasing decisions. Our engineers have the opportunities to work on many areas of computer science, including distributed computing, natural language processing, big data analytics, larget-scale system design, and user interface design just to name a few. We use the latest and greatest technologies in Cloud, NoSQL, advanced client side JavaScript etc to solve problems at a scale that few companies can offer.
About Fahd Siddiqui:
Fahd Siddiqui is a Senior Software Engineer at Bazaarvoice in the data infrastructure team. His interests include highly scalable, and distributed data systems. He holds a Master's degree in Computer Engineering from the University of Texas at Austin.