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!"
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.
Are you talking about DB2? You don't seriously consider MySQL to be a competing product to DB2, do you? That's kind of like saying Land Rover competes with Boeing. They're just in different classes altogether.
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.
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
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!
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.
No, no, see, I deliberately avoided comparing two similar things, because I don't want to get into a conversation about whether MySQL is better or worse than DB2. That conversation is so fucking loaded. For instance, if you need to whip up a really quick database on your personal time to do something simple, MySQL's simplicity beats DB2's robustness hands down. So that whole conversation is pointless.
That's why I compared a car to a plane. They're both transportation machines (i.e., databases), but they're designed to do radically different jobs. They're just not comparable.
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.
"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.
(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
When it comes to web servers in mid-range companies, MySQL and DB2 are competitors.
No, they're not. Because they're not equivalent products. If you would use MySQL for a job, then you would never have chosen DB2, because it's overkill. Likewise, if you use DB2, then MySQL could never have met your needs in the first place. There's really no overlap between DB2 and MySQL at all.
Now, Oracle versus DB2, or MySQL versus Microsoft Access, those are reasonable comparisons.
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.
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."
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
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.