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 Jean-Jacques Dubray on Oct 09, 2008
Earlier this month, Chris Preimesberger and Bob Waldie wrote an article detailing 6 red flags to Data Center Virtualization. Chris explains that :
The logic of server virtualization in data centers is very compelling. Businesses are empowered to consolidate all their underutilized Windows, Linux and Solaris systems sprawled throughout their data centers and remote locations, and in doing so they save on precious floor space and electrical draw. Over time, these efficiencies can add up to substantial savings on a company's bottom line.
Bob Waldie, CEO of OpenGear, adds:
Because the hardware and software are now ready for prime time, server virtualization in the data center is growing. However, a virtualization layer adds complexity, and the consolidation brings intensity. These two unavoidable attributes have a swag of hidden costs and substantive downsides and risks
Bob defined a set of "red flags" for IT managers and CTO before committing to virtualization.
- Red Flag No. 1: Are you sure that virtualizing will, in reality, deliver you a positive ROI?
- Red Flag No. 2: Do you have the IT staff to deal with increased complexity?
- Red Flag No. 3: Are you resourced to manage the likely increase in demand?
- Red Flag No. 4: Are your data center layout and power and cooling facilities/management sophisticated enough to manage consolidation?
- Red Flag No. 5: What impact will virtualization have on your level of service?
- Red Flag No. 6: Do you have the tools to be able to monitor/ manage your new sensitive complex environment (rack-side and remotely)?
Patrick Kerpan, CTO of CohesiveFT, tempers the claims of this article. Patrick sees important mitigation factors that can limit the additional cost of virtualization compared to the hardware and energy savings. He suggests using "P2V" (physical-to-virtual) technologies, or "Z2V" technologies (Zero-foot-print-to-virtual server).
Patrick continues by arguing that IT is complex already. Virtualization does not add skills requirements that can't be dealt with. He actually evens the contrary:
If done right - virtualization can be a driving factor in dramatically reduced IT complexity. The opportunity now exists to assemble your software servers from parts not unlike how hardware servers are assembled from parts.
When it comes to #3, Patrick suggest that "having the Amazon Datacenter at your disposal" can help.
Take the same server template that you assembled in VMware format, now select Amazon format with your EC2 credentials. Done. Server ready in minutes.
For #4, Patrick also sees the "cloud" as a potential solution
Take non mission critical systems and move them to the cloud providers. (Frankly, I am comfortable moving mission critical systems to the cloud.) For sure, I am comfortable with Amazon, IBM, BT, Flexiscale, etc. dealing with the power and cooling "hot spots"
How successful have you been with your virtualization strategy? Have you encountered any of these red flags? Do you see a need to leverage a "cloud" to extend the benefits your virtualization (possibly used a private cloud)?
Agile Practices to Improve Project Management Organization (PMO) Effectiveness
SOA All-In-One Guide: KPIs & Best Practices, ESB Report
Most ROI calculation are based on the factor of application consolidation ratio. I.e. instead of running X application on dedicated HW you can save cost by running those same application on a single more powerful box.
This often doesn't take into account that:
1. Most often you would need to buy expensive HW machine to be able to host those applications. I could easily see how such an approach would brings us back to he mainframe days.
2. The HW that is left after the consolidation remains un utilized.
In addition to that if you want to capture the value of on-demand computing and cloud then you would soon realize that virtualization of Operating-System is not enough as most of the existing applications where not really designed to run in such a virtualized environment. From this reason they wouldn't be able to capture any of the real values related to on-demand scaling, self healing etc.
I wrote about that missing piece in the virtualization stack in earlier post: The Missing Piece in Cloud Computing: Middleware Virtualiztion
The main challenge that remains open IMO is how do we enable migration of existing applications to this virtualized world with minimal changes to code. The following post discuss how GigaSpaces can handle relatively seamless virtualization of web application: Scaling-Out Web Application with GigaSpaces XAP. Part I
Without that i think that the arguments are fairly weak.
Nati S.
GigaSpaces
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.
1 comment
Watch Thread Reply