IBM, MS Critique MySQL
magellan writes "InfoWorld has an article reporting how both IBM and Microsoft are dissing MySQL. While it is understandable from Microsoft, it is interesting that IBM, who often claims to be a defender of Open Source Software, would be so negative. Sun Microsystems and Yahoo are quoted as providing positive opinions on MySQL." On the credit site for MySQL, though, Bingo Foo writes "MySQL has finally answered its detractors who complained about its lack of transactions. A press release today reveals that InnoDB is now fully integrated with the stock MySQL product, allowing ACID-compliant transactions, rollback, and crash recovery. Let the religious wars begin!"
Except for the fact that IBM has a competing product. IBM can like open source all they want, but they would be stupid to promote something that does for free, what they sell a product to do.
I can understand why IBM would bash MySQL, though. After all, they are selling DB2 -- so they have to compete with a free SQL db. Remember to keep in mind that both IBM and MS are primarily interested in keeping up revenues from their commercial DB products when reading their complaints on MySQL.
Why is this disturbing? The fact is, MySQL is a sub-par database. It lacks many of the features of commercial databases, and is blown away by many free ones such as PostgreSQL. Just because IBM and Sun support open source doesn't mean they're going to support BAD PRODUCTS. Let's use a little common sense here.
Is your browser retarded?
(P.S. Does MySQL have any support for checkpointing and hot backup, or do I have to take the whole database down during maintainance?)
I don't suppose it ever occured to the submitter of the story that IBM might have taken an objective look at MySQL and formulated it's remarks based on first-hand observations, instead of the rehearsed and oft-repeated rhetoric of open-source fanaticism.
"Ask not what your country can do for you." --John F. Kennedy
I would not fault MySQL for this, though, since after all it was designed and still mainly used as an SQL wrapper for flat file data, and this is why it's usually much faster than full-featured RDBMSes. The problem is with mindless open-source advocates who try to pump up MySQL as the be-all, end-all database solution. For a personal website or small business, MySQL is more than adequate, but its lack of higher-end SQL features make it a poor fit for large, distributed, mission-critical corporate or university data storage.
IBM and Microsoft's customers are generally in this higher end of the database spectrum, where Oracle or DB2 makes much more sense. It's no surprise that they would want to put MySQL in its place as an entry-level database system, where it belongs, and I fail to see how this story qualifies as news.
IBM and Sun are supposed to be open source allies
They are not allies they are businesses and as such are responsible to the stock holders. They are in business to make money. IBM has been cozying up to some Open Source projects as a way to bolster its other offerings and to more effectively compete with MS and their other competitors.
IBM sells DB2, while MySQL does intersect a subset of the potential customer database needs, so they are naturally critical. Nothing amazing here.
If you look at the complaints in the article
Open-source databases "don't support as many users, they don't support as much data, and you don't have as many connectivity options," said Jeff Jones, director of strategy for data management solutions at IBM. "They lack some key functionality and lack the scalability and performance, which keeps them out of the enterprise," Jones said.
All of that is absolutely true. The MySQL response was also true the missing functionality in products such as MySQL is not needed by some companies
One of the posters below made the comparisons between a landrover and 747. You don't need a 747 for all tasks and there is nothing wrong with making cars and not planes. MySQL is a really nice alternative to both flatfiles and overkill complex databases for departmental servers. Oracle and DB2 still have major features for enterprise servers that MYSQL and Postgres just don't have. Especially DB2 where the advantages of I-OS and Z-OS over Unix can be felt. In some ways Oracle probably has the most to fear because with Sun backing MySQL there is a good chance that as far as Unix systems go within 5 years it could be comparable.
In terms of ease of use for departmental level servers SQL Server beats out MySQL. An open source project like Access would do a ton to close this gap.
I laughed out loud when I saw that it featured a quotation by "head of the SQL Server project" opposing a quotation by "head technical Yahoo." Somehow I'm much more reassured having a Yahoo on our side than a stuffed shirt...
Besides the FUD (both MS and IBM are sellers of massively overpowered SQL servers), there's good reason to warn customers about MySQL. It's still a toy -- it can't scale for shit, has trouble optimizing queries and setting up multiple indexes and transactions are a huge performance hit. This is the point at which someone mentions a good DBA is already optimizing the queries. I would like to point out that a company trying to avoid paying $2-$20,000 on a SQL server license don't have the $60k+ to pay a good DBA.
Some consultants are no doubt going to tout to companies the impressiveness of MySQL and hook them on it for its value without telling them that it's not as scalable. Which would mean costly conversion in the future to one of the other database systems, which could have been avoided by just using them in the first place.
I am not a fan of MS, but SQL Server is an impressive piece of software. I've dealt with it my entire career, while running mysql and postgres at home. I would never deliver a product based on MySQL to an F500, or any company that's going to do more with their database than manage a small ebusiness server.
Postgres, on the other hand, is very full featured and a joy to work with.
This isn't to say that MySQL doesn't work for your web log, your cd database, your employee info database or your company wide contact system with SOAP front end. It's to say that I wouldn't trust it with any data I needed 100% responsive and 100% reliable.
Hey freaks: now you're ju
I'm disappointed that you were moderated as a troll. I think the way you said it was a little off the mark, but your ultimate point is correct. The major disconnect between the "free" software guys and the commercial software guys is that they're not on the same playing field.
The "free" software guys say things like, "Our software is politically and morally superior because it's free," and then they launch into a big discussion of liberty and rights.
The commercial software guys look at the bottom line. Take SGI for example. When they decided to build a big, scalable server system designed around the IA-64 chip family, they were faced with the prospect of doing a lot of work to port IRIX from the MIPS architecture. On the other hand, there was Linux, which needed a lot of work to be scalable and reliable, but was easier to use for this purpose than IRIX was. So they're running Linux. Do you think it's for political reasons? Shit, no. It's about costs and profitability.
This is, incidentally, exactly as it should be.
Don't forget that IBM recently bought out Informix and now sells InformixSQL as well as DB2.
Does the name Pavlov ring a bell?
Comment removed based on user account deletion
"it is interesting that IBM, who often claims to be a defender of Open Source Software, would be so negative. "
Just because you support Open Source, doesn't(or shouldn't) mean you blindly like something just because it is open source.
Would you really want your multi-terabyte real time database to be MySQL?
The Kruger Dunning explains most post on
Let's not forget two things here:
:-)). Now if they start dissing PostgreSQL, which I stake my job and reputation on the reliability of, then I will begin to reel off the reasons why I parted ways with IBM, and would never go back...
1) IBM sells a very capable (as in, "Runs the UPS package-tracking system, at 15TB the largest publicly disclosed OLTP database in the world") system called DB2, and they make money doing so.
2) MySQL has only recently included transactions in the base package. They still do not handle subselects or foreign keys, both of which become very useful when dealing with large databases.
Why on earth *wouldn't* IBM recommend against MySQL for their enterprise customers? IGS does not service the sorts of customers that are typically suited to using MySQL (US Census Department excluded
Hint: it's not because IGS technical people are anything less than world-class. Management is another story. But don't think IBM engineers don't know what they're doing. They're damn good.
Remember that what's inside of you doesn't matter because nobody can see it.
And they were not wrong at all. At this time, DB2/6000 was missing some exotic features Oracle was having. Anyway, some peoples decided to adopt DB2 and IBM continued to improve DB2.
I don't see the point about a lack of endorsement of OSS by IBM because they are just saying some features, they think are required by enterprises class architectures, are missing by MySQL. It's just plain truth, MySQL is missing some features. It's up to the customer to decide if these features are required or not.
In short, a storm in a glass of water...
Achille Talon
Hop!
>IBM has made a ton of money on databases
That's about right. DB2 is an integral part of IBM's solutions platforms, and they make a lot of money on that software. You'll never hear an IBM "consultant" say, "Oh yeah, to reduce cost, I recommend this free database technology over buying 250 seats for our DB2 platform." Three reasons:
1) Licensing fees for DB2 are a significant source of revenue.
2) Professional installation of DB2 on IBM hardware is a significant source of revenue.
3) Custom integration of DB2 is a significant source of revenue.
IBM can make extremely good arguments about why DB2 is technologically superior product to MySQL, but it's extremely difficult to argue its cost-effectiveness, which they never did in that article (that I could see).
Besides, when you're talking about providing solutions, open-source often fights uphill battles against the "more expensive is better" and "we must spend our entire budget" attitudes.
-AAAWalrus
Anybody who has built very large, mission-critical database systems would never think of using MySQL. MySQL is great for small, simple applications, and has been very popular for web content site because of it's quick speed or reading data, but it's lack of truly robust transaction support (until recently with the 4.x release) scares big corporate DBAs. Not to mention its lack of stored procedures, sub-queries, and many other SQL programming features and strong 3rd-party management tools make it a 2nd-tier RDBMS in my mind. But I don't mind using it for web content or for simple apps that I want to run on Linux or a low-cost ISP network that includes MySQL support.
Use it for what it's good for. If other products are better at doing other things, get over it.
Microsoft's bashing is pretty obvious. And IBM's is somewhat surprising as well, though they may use some open source RDBMS as part of their Linux product lines and push DB/2 for larger products, just ive they do with AIX vs. Linux.
Even RedHat pushes PostgreSQL over MySQL as their RDBMS product of choice. MySQL can't even get props for best RDBMS among the open-source world, though it's the most popular.
Open-source databases "don't support as many users, they don't support as much data, and you don't have as many connectivity options," said Jeff Jones, director of strategy for data management solutions at IBM. "They lack some key functionality and lack the scalability and performance, which keeps them out of the enterprise," Jones said.
No, it doesn't keep them out of enterprise. To manage some status data on some non-critical web server, out-of-the-box MySQL is perfectly adequate and much easier to use than fully-grown RDBMSs. Maybe it's a lot less scalable, but then it runs on the hardware you've already got.
But I can understand that it's quite frustrating for the big database vendors that some people do not care about online backup, transactions, stored procedures, views, replication etc. etc. and position even current stable MySQL versions against traditional RDBMSs. (Don't get me wrong, MySQL is fine if you don't need those features. You can already pick a subset of the features which are supported by MySQL in a single table type, and MySQL 5.0 will arrive one day and probably qualify as an RDBMS).
The main thing missing from MySQL is subselects, views and subselects- the TWO main things missing from MySQL are views and subselects... and triggers... Oh I'll just come in again....
Among MySQL's deficiencies are such diverse elements as subselects, views and triggers...
(Ashamed to say I've forgotten the rest...)
Back about a year ago /. experienced a major outage. Roblimo at the time noted, "By 7 a.m. it was obvious that this was not a typical, easily-fixed, reboot-the-database problem."
Can anybody imagine an SQL Server or DB/2 customer being satisfied with that solution? That's what IBM/MS is saying.
I suspect that if it weren't for slashdot running mysql, it would have long since died off, especially, amongst the free software zealot crowd.
How's my programming? Call 1-800-DEV-NULL
"we must spend our entire budget"
Where can I find such a company? I wouldn't mind overbidding a few projects to help a manager spend his budget. I'm just a helpful guy, what can I say?
Social scientists are inspired by theories; scientists are humbled by facts.
Too slow? Check TCP-C all the fastest entries are running MSSQL now granted these are share nothing clusters which isnt very realistic for the real world but slow is no longer one of MS's shortcomings. Reliability, true scalability, and a few other things I would fault them for but not speed. Actually it kind of sounds kind of like MySQL =)
There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
(JARRING CHORD)
(The door flies open and Bill Gates of Microsoft enters, flanked by two junior cardinals. Steve Ballmer has goggles pushed over his forehead. Sam Palmisano (IBM) is just an idiot.)
Gates: NOBODY expects the InfoWorld Article! The chief thing missing from MySQL is subselects...subselects and views...views and subselects.... The two things missing are views and subselects...and triggers.... The *three* things missing are views, subselects and triggers...and an almost fanatical devotion to row-level transactions.... The *four*...no... *Amongst* the things missing from MySQL
Slashdotters: I didn't expect a kind of InfoWorld article.
IBM *is* exactly right about MySQL, and for that matter most Open Source databases. It takes years to mature a major product like AIX and DB2, and the GPL competitors (which I love and use daily) do *not* have the same functionality. They are *lite* versions of the real deal. The two most important features of Open Source products is they are 1) Free, 2) come with source code. It is *not* their functionality!!!
IBM and Borland will do *allot* to improve these GPL products and all the grousing by people with little to no expereince in the *real world* won't change that.
we run mysql at the public company i work for to handle every aspect of the intranet for 500 employees.
i have a meeting at 3pm PST with the oracle DBAs to teach them how to maintain it... whatever that means.
MARIJUANA, SHROOMS, X: ONLINE?! - E
sight of the fact that MySQL was never intended as an "Enterprise" DBMS?
Look at the very top of the O'Reilly book. What does it say there?
"Databases for Moderate-Sized Organizations & Websites"
Please note that it doesn't say:
"This is a free product that kicks Oracle's ass"
It is explicitly intended to be, and I quote:
"Inexpensive, lightweight and fast."
To accomplish this they restrict themselves to a subset of the SQL language.
Why do you think that *adjustable* wrenches come in different sizes? If they're adjustable wouldn't you just get the biggest one and use it for everything? That philosophy might seem like a good idea, until you try to turn a 6mm *aluminum* nut with a 14" wrench!
It's OK for tools to come in different sizes and types. Pick (are you ready for it?) the *right tool for the right job.*
Does MySQL suck? For many particular jobs, sure, but that's the fault of the person who attempted to use it for those jobs. Conversely, there are situations and jobs for which it is everything *but* MySQL that sucks.
I just don't get the *one true DBMS* holy wars. Diversity be good. Monolithism be bad. Get with the program.
KFG
Every time I see comments about girls and marriage, I worry that Slashdot may no longer be of the geeks and for the geeks. Fortunately, then someone comes along like you and describes a database system as "a joy".
It's not often /. leaves me with a huge grin anymore but the image of you jumping up, punching the air and yelling, "Woohoo! I get to work with Postgres!" left me with one.
God bless you. God bless your pure, innocent love of databases.
And in any case, dismissing all criticisms as anti-OS propaganda is not constructive. The Open Source movement does not have a future if its adherent cop a "The Emperor Cannot Be Naked" attitude.
If MySQL wants to make serious inroads and be considered a decent database for business it needs things that other primetime databases has like:
Stored Procedures
A good gui (MyCC is a good start - not a web one)
Functions
Replication
I know most of these things are in development or are in beta but lets get moving folks. Sure MySQL is fast and all but it can't hold a candle to MS SQL Server for ease of use and features. It's free which is great but it really can't compete in business yet. From that context it deserves to get dissed. Both dissers, by the way, sell their own databases so don't be too surprised by the negative press.
Have a Happy.
A database that can only handle one subset of our customers per database instance is too amateurish to consider for much beyond managing a Christmas card list. And, come to think of it, without Unicode it couldn't even handle my Christmas card list.
I can imagine some niche uses, but I would never consider it for a general-purpose database platform for a company with international aspirations.
"Those who have never entered upon scientific pursuits know not a tithe of the poetry by which they are surrounded."
Furthermore, it's a horrible tool to expose a neophyte to precisely because it does not have the basic core features that are essential to good database design. How are you going to learn the importance of referential integrity if your database doesn't have them?
Personally, I don't see any reason to use mysql for any purpose whatsoever. If you want something really simple and really fast for small data sets, use Perl. If you are an open-source zealot and won't use anything that doesn't bear the RMS seal of approval, use Postgres. If you are a professional DBA (or want to become one), download a copy of Sybase or DB2 for linux (both of which have zero-cost licencing options for development) and learn to use it.
BTW: your car analogy is flawed. If DB2 is a cadillac, then MySQL is a soapbox derby car. Superficially they might resemble one another, but the difference becomes readily apparant one you try and do something real with it. Sure, a soapbox racer can keep up with a real car if it's coasting down a steep hill, but that doesn't mean you can take it out on the interstate.
Why is it that the proponents of "one nation under God" are so eager to get rid of "liberty and justice for all"?
Doesn't IBM realize that, by being a proponent of open source, they're obligated to say only nice things about every single open source project under the sun?
Doesn't anyone see the irony in the slashdot blurb? "It's surprising to see IBM diss MySQL; In other news, MySQL just got transactions!"
MySQL is a fine departmental database, but a lousy enterprise database. That will probably change, of course, but for the time being both Microsoft and IBM are right.
Cheers
-b
Anyone realize this?
Lotsa boosterism in the story titles themselves, but there's never, ever, ever been a Slashdot story about MySQL where 3/4ths of the population didn't basically say:
MySQL may be fast, but it's underfeatured. Postgres does rule, though!
I don't get it. Does anyone but the people doing the writeups actually think MySQL is meant for large scale terabyte databases?
One core law of computer science is that the best solution to a small problem is never the best solution to much larger problems. Actually, the physical world works in much the same way -- a human sized insect would collapse quite quickly.
It's not the law that's surprising, it's that everyone keeps repeating it as if anyone else believed otherwise...
--Dan
Can't speak for the world but our Quad Xeon 700, 4gb ram, 60gb DB works really well. Averages 300 queries per second.
We've recently ran into a problem when we hit ~420 connections. Plenty of ram but MySQL reports errno 11 (Resource unavailable) and new connections fail. This is with the MySQL-max binary release that is rated to 1,500 connections. It's bizarre, and low-level. But since we use replication, we just shifted some connections to the slave and all is good.
MySQL will last us just long enough to finish our Postgres migration.
Well.. Some databases don't lock rows or tables (unless necessary). MVCC is a superior option (Oracle / Postgresql for implementation references).
Anyway, there are a number of things that subselects can accomplish that joins cannot do as easily. Not the best example below, as it could be done in other ways and the formatting isn't so great, but anyway:
SELECT col1, max, othercol
FROM table
JOIN (SELECT max(col3) as max
, col1
FROM table3
GROUP BY col1) as ttab
USING (col1)
WHERE 2 = (select count(*)
from table2
WHERE table.col1 = table2.col1);
Rod Taylor
Fact is, BDB!=MySQL!=PostgreSQL!=DB2!=Oracle
BDB (Berkeley DataBase) is a simple, DBM-style database that only has key/value pairs. Notwithstanding this simplicity, a company (Sleepy Cat) has been making a profit with this product! It's used extensively by OpenLDAP, which is an "enterprise ready" application, capable of scaling to handle every single person or thing on the face of the earth today.
MySQL is not "under par" or "substandard", it is written to perform simple queries rapidly.
PostgreSQL is not "a toy", it's designed to be a feature-complete, modest SQL engine, with features over performance. (Though performance gains of recent have been quite staggering)
Oracle is the "nut buster" of a database. Based on code now some 20 years old, they've had the time (and the money) to make a truly upwardly scalable application. For those to whom the tens of thousands of dollars price is not a problem, Oracle is it.
For those who want high performance and database replication for simple databases for cheap, MySQL is it.
For those who need to build complex datastructures and access them on a budget, PostgreSQL is the one.
For those who want a very simple values-container, BDB is what you want.
The scale is not linear, with "bad" on one side, and "good" on the other.
I would not even consider BDB for most of my mid-tier web-based software. Nor would I consider Oracle. Postgres fits just about perfectly - I need transactions, and frequently have to perform nested outer joins and subselects in a single statement.
On the other hand, the LDAP-based network I manage runs just fine on BDB, and one of my recent projects (a large database of registration information) works best on MySQL.
Which is better - a sledgehammer or a screwdriver? They're both tools that get a job done. Don't call a screwdriver "deficient" because you wouldn't want to crush a brick wall, and don't call a sledgehammer a "Piece of Sh--" because you can't turn a screw with it!
I have no problem with your religion until you decide it's reason to deprive others of the truth.
it is interesting that IBM, who often claims to be a defender of Open Source Software, would be so negative.
I know a little (and nto much more) about databases, being more a sysadmin than DBA.
IBM's claim seem reasonable - that MySQL isn't suited for extreme high end use. This seems reasonable. Just because IBM chooses to advocate quality Open Source tools where they see fit doesn't mean that IBM must think every Open Source app is quality.
Maybe IBM just used MySQL and found it lacking.
IOW, Slashdot is not your everyday ho-hum implementation of MySQL. It is custom written and tweaked. But still, Slashdot's MySQL database dies about once a week (ever try to log on, and all you get is a cached copy of the homepage as if you're logged out?) Your OS could have an uptime of 5,432,234 days, but that means jack shit when it comes to your DB dying every 7 days. That's unacceptable.
For one, I'd love to see Slashdot run on a _real_ database -- e.g., Oracle or DB2 (I believe MS-SQL is out of the question around here). Since Sourceforge/OSDN is in bed with IBM, I don't see how Andover.Net can't snag a copy of DB2 for free, and use it as a poster-child.
Plus, Slash already comes with Oracle scheman creation scripts. It can't be that hard.
One of the things that jumped out at me at this article was that Jones's (IBM's) statement was very obviously a direct answer to very pointed, and very unpublished, question.
...then Jones response couldn't possibly be considered "bashing MySQL". He was just answering a question to the best of knowledge.
Jones did not wake up one morning and say to himself, "I'm going to call up InfoWorld and just rag on MySQL because I think its a threat to DB2!". No. InfoWorld called him, asked him a series of questions, kept what would make the best reading, and threw the rest away.
So, was Jones really being "negative" and "dissing" MySQL? We really don't know. If the questions he was answering were:
"What in your opinion is the main reason why MySQL is not beating DB2 and Oracle in the enterprise?"
and/or
"What would you consider MySQL's greatest flaws to be?"
Read the quote again to see my point:
Open-source databases "don't support as many users, they don't support as much data, and you don't have as many connectivity options," said Jeff Jones, director of strategy for data management solutions at IBM. "They lack some key functionality and lack the scalability and performance, which keeps them out of the enterprise," Jones said.
The whole article stinks of coaxing negative-sounding comments from people from "big bad companies", pasting them out of context, and calling it "Big Companies Once Again Stomp On Open Source!" Its also quite possible that he also said many wonderful things about MySQL, but that makes for boring reading and would be discarded.
It happens all the time, folx.
The
it is interesting that IBM, who often claims to be a defender of Open Source Software, would be so negative.
Perhaps the problem is that mysql, like, sucks?
autopr0n is like, down and stuff.
Open-source databases "don't support as many users, they don't support as much data, and you don't have as many connectivity options," said Jeff Jones, director of strategy for data management solutions at IBM. "They lack some key functionality and lack the scalability and performance, which keeps them out of the enterprise," Jones said. That's absolutely true: MySQL is well-suited to the needs of small and middle sized businesses (say search engines and invoice databases), but not for the biggest enterprise-level tasks out there (say for the IRS or Social Security). "So far, I still see MySQL and some of the other open-source databases as really niche players," said Sheryl Tullis, product manager for the SQL Server database at Microsoft. Now that's just wrong. The number of companies that can use a middle sized database greatly outnumber those that need big iron. Oracle, IBM, and so on are the "niche players" here. Sure they make money hand over fist, but it's for support contracts and so on for fewer (but massive) clients. Companies will pick the software that best meets their needs. Open source is cheap, easy, and supports the majority of cases. Big iron databases are powerful but expensive to buy and maintain, and only those who can afford them will use them. In this case, Microsoft is simply trying to convince people that bigger (and more expensive) is always better.
Matt Slot / Bitwise Operator / Ambrosia Software, Inc.