The Community for Technology Leaders
RSS Icon
Issue No.05 - September/October (2010 vol.27)
pp: 57-60
Debasish Ghosh , Anshin Software
Most of today's enterprise applications use a relational database management system as the underlying data store. This often creates an impedance mismatch between the application layer and the data layer, because most applications use object-oriented or functional languages. Storing data the same way it's used in the application would simplify the programming model, making it easier to decentralize data processing and, in turn, enable horizontal scaling. Emerging NoSQL data-storage engines support this strategy. Just like the application layer, the data-storage layer can use multiple paradigms and store data in a way that's semantically closer to the corresponding domain models. This article discusses a strategy for using multiparadigm data storage within a single application. It includes an architecture for keeping multiple data stores in sync by using a messaging system that asynchronously pushes updates between data stores, achieving eventual consistency.
data management, database, messaging, software engineering
Debasish Ghosh, "Multiparadigm Data Storage for Enterprise Applications", IEEE Software, vol.27, no. 5, pp. 57-60, September/October 2010, doi:10.1109/MS.2010.87
1. T. Neward, "The Vietnam of Computer Science," blog, June 2006, .
2. F. Chang et al., "BigTable: A Distributed Storage System for Structured Data," Proc. 7th Symp. Operating System Design and Implementation (OSDI 06), Usenix Assoc., 2006; .
3. G. De Candia et al., "Dynamo: Amazon's Highly Available Key-value Store," ACM SIGOPS Operating Systems Rev., vol. 41, no. 6, 2007, pp. 205–220; sospamazon-dynamo-sosp2007.pdf.
4. A. Lakshman, P. Malik, and K. Ranganathan, "Cassandra: A Structured Storage System on a P2P Network," slide presentation at ACM SIGMOD Int'l Conf. Management of Data (SIGMOD 08), 2008; .
5. J. Adams, "Billions of Hits: Scaling Twitter," slide presentation presented at the Chirp 2010 Official Twitter Developer Conf., 2010; .
6. N. Kallen, "Big Data in Real-Time at Twitter," slide presentation, 2010;
7. I. Eure, "Looking to the Future with Cassandra," blog, 9 Sept. 2009, .
8. C. Hewitt, P. Bishop, and R. Steiger, "A Universal Modular ACTOR Formalism for Artificial Intelligence," Proc. 3rd Int'l Joint Conf. Artificial Intelligence, Morgan Kaufmann, 1973, pp. 235–245.
9. S. Helmberger, "Introduction to CouchDB Views,"2 Apr. 2010; .
12 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool