Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

The downsides of Mainframes is well trodden ground; expensive, legacy, dwindling community, etc.

I'm not particularly interested in the downsides, but I am curious if there are any benefits to mainframe hardware/software over the current Intel/AMD & Linux/Windows environment.

I've been told that MFs are particularly good (and better than current servers) at heavy I/O loads. Is this still true?

share|improve this question

closed as not constructive by Walter, Robert Harvey, rob, Glenn Nelson, ChrisF Apr 13 '12 at 7:58

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

3  
Very similar question on SO: stackoverflow.com/questions/57108/… –  Renan Apr 10 '12 at 17:30
    
Link to the an answer on SO: stackoverflow.com/questions/57108/… (deleted by moderators here for not giving credit where due) –  FrustratedWithFormsDesigner Apr 10 '12 at 18:34
1  
You can say you were cloud computing before it was "cool". –  brian Apr 10 '12 at 18:42
    
@brian: Hipster! –  FrustratedWithFormsDesigner Apr 10 '12 at 18:52
2  
@Doug - agree. Its about software development, it has specific concrete answers, totally compliant with the FAQ as far as I can see. –  James Anderson Apr 11 '12 at 7:45
show 4 more comments

7 Answers

Mainframe system have many interesting advantages:

  • Can be used for complete on-line and batch applications using easily scalable software configurations. You can add 100s of users with almost no change to your software. However, their native interface is limited but can be replaced with GUI front ends.

  • Can be perfect for back-end SOA based computing environment because of their huge resources and ability to process information.

  • Software is built using tested and well understood technologies. The core technology concepts have been established and well documented long time ago, developers need to focus on the end user requirements and the business rules not on learning the flavor-of-the day fads.

  • Systems can be built form simpler components that a typical non-mainframe system. The software architecture in mainframe has few components and technologies and does not involve complex component structure like your typical web applications.

  • Mainframes can handle the processing of massive data volumes processing without having to resort to parallel programming techniques (which are complex to code).

  • Mainframes are best when it comes for business continuity aspects since there can't be attacked by viruses and backups of millions of transactions can be performed in minutes. Also, you could replicate the business environment on the same machine or on a different machine and restore the system quickly.

  • Mainframe have 100s times of storage and CPU power compared to a PC-type server.

  • Hardware vendor is usually the maker of the core software elements and the software is designed specifically to take full advantage of the hardware.

share|improve this answer
add comment

To answer the I/O bandwidth part of your question.

This was definitely true up to about five years ago.

However mainframes and large server sites are now using basically the same disk technology under the covers. The mainframe still has a slight advantage with its "channel" architecture which offloads all the I/O activity onto separate processors. This is offset by a certain weirdness in that zOS stopped keeping up with disk technology twenty years ago so you allocate disks in terms of 3390 and 3330 volumes which are hardware devices made in the last century. Its analogous to UNIX still supporting vt100 protocol.

Plus it has a sort utility to die for. It sorts large files faster than most other systems can copy them.

share|improve this answer
add comment

To expand on Abhijit's point:

Support for Legacy Code: Millions of Lines of Code are running reliably for years and Business Houses find no compelling reason to rewrite it on Non-Mainframe Servers.

In my experience, this is a rather large issue for the kind of corporations who choose to run mainframes (which are typically rather large investments). One project I was involved with was an investigation to answer a question: what technologies should the client (a large bank) choose to replace mainframes with? The question was actually split into smaller parts, focusing on the OS, the DB, and the implementation language(s) and frameworks.

Even just considering the language, we ran into a fairly major problem: rewriting the existing codebase was estimated to take around 5 years (without growing the development teams greatly, which would bring its own issues). Obviously this is a major problem in terms of lost opportunity to spend that time developing other software, but beyond that, it's difficult to pick a technology with those kind of timelines in mind. Java or .Net? In a 5 year period, what is considered "good code" in either one of them is sorely outdated legacy stuff, with major versions of each coming out every couple of years.

Sitting back and thinking about this, the kind of stability that mainframes provide extends to the actual environment as well, things tend to change slowly; which is a good thing if you have a hundred million lines of code to maintain.

share|improve this answer
add comment

Mainframe had been in business since the days people used to use punch cards for data entry, line printer's for output. PC Have evolved a lot in these few decades and in the current decade we are seeing some breakthrough hardware and software evolution which are trying to make Distributed Server's more secure, stable and robust. Underline, all these technologies are slowly adopting the technologies from Mainframe. But even after all these evolutions today's Intel/AMD Server's running Linux/Windows cannot match the scalability, performance, work-balancing, robustness and stability what mainframe provided. And nevertheless Mainframe is also evolving. So what makes Mainframe stand out of the Crowd?

  1. Huge data processing capabilities. Mainframe historically was capable and designed to handle huge data via batch processing. Hardware and Software capabilities data to be spread across multiple volumes of DASD to be processed diligently and reliably. Today we hear about BigData and the use of Hadoop and the Hive using MapReduce functionality to process unstructured data. But the technology is still at its infancy which Mainframe has been providing since ages. EasyTrieve and DFSORT/ICETOOL provided wonderful reporting and data processing capabilities which is still a challenge to be matched.

  2. As a transaction Processor: Consider a system that authorized millions of Credit/Debit card in 11 sec TAT? I believe no system can match such a timeline what the Authorization System running on TPF system can do.

  3. Reliability: Mainframe is stable and is known to run for months without any downtime. Hot swapping of Disk, Memory and CPU enables seamless operation even when a part fails.

  4. Distributed vs Centralized: Though this is a long standing debate, but proponent of a Centralized system would tell you that it makes it easy to manage, control and is more secured.

  5. Support for Legacy Code: Millions of Lines of Code are running reliably for years and Business Houses find no compelling reason to rewrite it on Non-Mainframe Servers.

share|improve this answer
add comment

Upsides:

  • Control: it's a unique machine and you can control who, when,for much time the programs run and how much resources it spend.
  • Administration: since you have one machine, you don't need remote multi-administration software to operate it.
  • Built-in audit trail: most MF OSes implement audit trails and I've heard of hardwares implement it too (many moons ago, don't remember details).
  • Security: related to the control item, this means stricter and fine grained security.
  • Infrastructure: since you have one piece of hardware, you can confine the infra costs in a determined room.
  • Real-time hardware: in addition with a RT OS, an MF can operate fast in situations where response time delays is not tolerated.
  • Throughput: MF vs desktops (or grids) is a comparison similar to a car with a 750hp engine (mainframe) vs 10 cars each one with 75hp engines (working together they are a grid, working stand alone they are desktops).
share|improve this answer
    
+1, There was an excellent podcast about mainframes (focused on system Z) recently on SE Radio that covers some of those points as well as how orgs can run 25 year old mainframe software without modification on "modern" mainframes. I was impressed with the virtualization capabilities of the system-Z stuff. See se-radio.net/2012/03/episode-184-the-mainframe-with-jeff-frey –  Angelo Apr 10 '12 at 19:21
add comment

Mainframes have a huge business advantage in that they hardware and software are paid for. This is a big deal, because software development is universally viewed as a cost center. The cost factor often offsets the many well-known disadvantages of mainframes during the cost-benefit analysis.

share|improve this answer
    
I was under the impression that MF required annual support contracts –  Scott Weinstein Apr 10 '12 at 17:28
    
@ScottWeinstein: I don't know that any of them require such contracts, but they're probably a good idea. And possibly cheaper than leasing/paying off new equipment (which would also probably have some sort of support contract). –  FrustratedWithFormsDesigner Apr 10 '12 at 17:30
2  
@ScottWeinstein This is waaaaaaaaaay cheaper than building a replacement, though. I worked for a company with the "mainframe killer" mentality some ten years ago, and I heard several horror stories of companies trying and failing to get off mainframes, often paying tens of millions in the process. Our company contributed to that horror list, too, although we managed to get one very large insurance company off mainframes for a very big line of business. In my conservative estimate, this development has cost them 100M in software alone. –  dasblinkenlight Apr 10 '12 at 17:33
    
@dasblinkenlight, software licensing is a major cost of running a mainframe site, also, most shops have a 3 to 4 year hardware upgrade cycle. Its expensive but usually the improvements over even a short period more than justify the costs. –  James Anderson Apr 11 '12 at 7:52
add comment

Honestly nowadays, I'd rather just use Grid software and get all the benefits of mainframes without having to worry about paying the cost. I can increase my grid size easily, adding to a mainframe is mucho $$$.

Data Synapse is good, IBM makes Grid software as well that's pretty pricey. Honestly I think it's the future, and gives you all the benefits without the huge upfront cost.

share|improve this answer
3  
Give all your data to a stranger on the web -- good plan. –  James Anderson Apr 11 '12 at 7:53
    
though I might agree, it's not on topic for the question –  Scott Weinstein Apr 11 '12 at 14:32
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.