New-age Transactional Systems - Not Your Grandpa's OLTP
John Hugg discusses high volume transaction processing applications with high and low frequency profiles, and how VoltDB can be used for that purpose.
The content has been bookmarked!
There was an error bookmarking this content! Please retry.
Posted by Arnon Rotem-Gal-Oz on Jul 10, 2007
David is not alone in the claim that EDA and SOA should work together. For instance Jack Van Hoof has a whole blog dedicated to the subject, Brenda Michelson blogged about it more than a year ago and Oracle has been trying to dub this SOA 2.0 etc.(1) the fusion of SOA and EDA into ED-SOA (event-driven, service oriented architecture) is the way of the future,(2) building processes is greatly facilitated by ED-SOAs,(3) conversely ED-SOAs can be constructed as layered architectures using BPM systems.(4) CEP principles must become an integral component of both ED-SOAs and business processes because of the ever increasing quest for control of our business processes, real time autonomous operation, and the need to gather business intelligence from the events flowing through our IT systems.
One essential element in such an architecture is where the business data is saved. Optimally one would like to have the data shared across an in memory data grid (for better performance). Then it becomes a matter of having the events trigger business operations that use the data within the data grid to perform their respective operations.
The next evolutionary step would be to have the data stored in the data grid generate events. Events can be triggered just by a certain object existing in the data grid, or the object state changes. As an example: An order written to the data grid, causing a business process to kick in and validate the order. Once the order is validated (changes its state to valid) another business process will kick in to process the Order.
This type of platform, supporting natively both data grid requirements and event grid requirements with a single coherent system is what I refer to as next generation application server. No need for several moving parts as we currently have with JMS for events, DB (with different data access methods) for data, and different entities for business processes.
We can see vendors starting to move to this direction. GigaSpaces certainly is, especially with its latest 6.0 release and Open Spaces.
Cheers,
Shay Banon
Compass founder and lead developer
System Architect at GigaSpaces
One essential element in such an architecture is where the business data is saved. Optimally one would like to have the data shared across an in memory data grid (for better performance). Then it becomes a matter of having the events trigger business operations that use the data within the data grid to perform their respective operations.
The next evolutionary step would be to have the data stored in the data grid generate events. Events can be triggered just by a certain object existing in the data grid, or the object state changes. As an example: An order written to the data grid, causing a business process to kick in and validate the order. Once the order is validated (changes its state to valid) another business process will kick in to process the Order.
This type of platform, supporting natively both data grid requirements and event grid requirements with a single coherent system is what I refer to as next generation application server.
Sounds like a Coherence data grid ;-)
Seriously, events are a natural part of a data grid. I can't imagine one without them ..
Peace,
Cameron Purdy
Oracle Coherence: The Java Data Grid
John Hugg discusses high volume transaction processing applications with high and low frequency profiles, and how VoltDB can be used for that purpose.
Kevlin Henney examines code samples to see what can be learned from them starting from the premise that one won’t write great code unless he knows how to read it.
Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.
Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).
Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.
Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.
One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.
InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.
2 comments
Watch Thread Reply