Oracle Claims Dramatic MySQL Performance Improvements
New submitter simula67 writes "Oracle wins back some karma from the open source community by releasing MySQL cluster 7.2 with ambitious claims of 70x performance gains. The new release is GPL and claims to have processed over 1 billion queries per minute. Readers may remember the story about Oracle adding commercial extensions to MySQL."
If you create a query in mysql with an IN statement in the where clause and you put a sub query as the in statement current versions will run the query once for each row of the primary table you are querying. Caching result alone would probably get the 70x speed up. I am suspect that there are other performance stupidities in mysql that are worked around by people doing a simple query and then using php/perl/python/java/etc to parse the result and generate the second query.
Work bio at MMWD
I knew they would implement the Oracle storage backend into MySQL one day...
Ezekiel 23:20
MySQL Seems like it could be interesting, but I can't get over how it requires the whole thing to be hosted in memory. I'm much more interested in Percona Cluster which is also based off MySQL.
Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
Not the same thing.
The case when the data set is bigger than RAM amount has not been investigated (link here, see the comments). The hard drive I/O speed would slow it dramatically, unless it's an expensive array of SSDs.
Now can they please work on some dramatic usability improvements so i don't have to cringe every time an Oracle support question comes up at work?
This Space Intentionally Left Blank
If I read the sales pitch correctly, they just integrated Memcached as a backend storage module, so that it plays nicely wrt ACID compliance. Yeah, memory is 70x faster than disk I/O... big whoop!
Anyone running a sizeable MySQL installation already has heaps of RAM allocated to the InnoDB buffers/caches anyway. It sounds like Oracle compared a stock, distro-default MySQL to their memory-hungry tweaks. Yeah, DUH. I can get a 70x speedup too if I increase MySQL's memory usage from the default 64mb to 48 gigabytes.
-Billco, Fnarg.com
Is PostgreSQL webscale? MongoDB is.
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
was GPL as well.
dont forget that Oracle committed that MySQL server will continue to use the dual-licensing strategy long used by MySQL AB with commercial and GPL versions available until at least 2015. if other big players are any indication this is oracles attempt to avoid another apache/java landmine and preserve the trust and respect of developers until such time as the product is sufficiently 'in-housed' to divorce from the community without fear of retalliation. by 2015 the forked code, should there be yet another fork, can probably enjoy a tenth of the performance of oracles version and have to compete with ingrained lock-ins and contract conditions developed by oracle to further ostracize open source competetors.
but im not sure if its really relevant at all. databases like hypercube and couch are really giving oracle a run for their copious amounts of money. by 2015 the "paradigm" may have "shifted" as the PHB says.
Good people go to bed earlier.
Slightly off-topic, but I recently had the oppurtunity to test the speed of a MySQL in-memory database. I have some frequently queried read-only data that simply would not handle the load in MS SQL and was looking for an in-memory solution. MySQL provided the simplest implementation - simply tell the table to use memory storage and configure the server to allow the amount of data you want to host (~250MB in this case). You also have to remember to reload the data from normal InnoDB tables every time you restart the server. I used the same table structures, keys indexes and stored procedures (almost the same) to query the data and linked it through MS SQL so that my applications never new the difference. On exactly the same hardware the speed increase was at least 50X over MS SQL.
Freedom of speech doesn't come with bandwidth.
Any questions?
You can't handle the truth.
http://www.xtranormal.com/watch/6995033/mongo-db-is-web-scale
which previously were quite poorly handled.
See http://www.clusterdb.com/mysql-cluster/70x-faster-joins-with-aql-in-mysql-cluster-7-2/?utm_source=rss&utm_medium=rss&utm_campaign=70x-faster-joins-with-aql-in-mysql-cluster-7-2
k. This is slightly laughable. 33,500 rows? in 87 seconds? that seems glacial. And 1.23 seconds being the new speed? that seems as expected. aside from comparing the speed of a Lada vs a common garden slug, how does this compare against other databases?
Yes: It's strengths are reliability and price point (free), but it's pretty fast, has clustering capabilities, and has been used for large-scale web applications.
Seriously, it's hard to go wrong with PostgreSql when you need a relational database. MongoDB, of course, is a very different animal intended for very different tasks.
I am officially gone from
Developers: We've got some really good ideas for increasing performance of complex queries by...
Marketing: How much in the best conceivable case?
Developers: Oh, I dunno, maybe 70x.
Marketing: 70x? Is that good?
Developers: Yeah, I suppose, but the cool stuff is...
Marketing: Wow! 70x! That's a really big number!
Developers: Actually, please don't quote me on that. They'll make fun of me on Slashdot if you do. Promise me.
Marketing: We promise.
Developers: Thanks. Now, let me show you where the good stuff is...
Marketing (on phone): Larry? It's me. How big can you print me up a poster that says "70x"?
Versus all the other factors you can throw in there for anything involving heavy lifting for an enterprise app, raw price point of the DB engine is pretty close to the bottom of the list.
*Performance will vary and best results are only possible with an Oracle service contract.
Are you kidding? In an Oracle discussion?
We're talking very large numbers here, and potentially more money than you will make in your entire lifetime.
Some one definitely cares. They may bite their tongue and still buy Oracle but they do care. The numbers are not trivial.
A Pirate and a Puritan look the same on a balance sheet.
So if Oracle is so happy with MySQL. Give us a TPC-H benchmark. Scalefactor: 100.
Support Eachother, Copy Dutch Property!
The first 27 seconds made a good point about comparing various products and evaluating them on their merits. The remaining 5 minutes was a mix of strawmen and fallacies. Is there supposed to be a point to that?
You do not have a moral or legal right to do absolutely anything you want.
Is there a Virtualmin module for MariaDB yet?
If so, I'll switch tonight.
It's worth noting that there have been some pretty high-profile cases where Oracle was failing to deliver for scaling under heavy load, and companies like EnterpriseDB (a value-added PostgreSQL vendor) provided a PostgreSQL-based solution that saved the day. One such example that comes to mind is the FTD migration a few years back. While the EnterpriseDB deployment of PostgreSQL for FTD wasn't free, it sure as hell was cheaper than maintaining Oracle licenses, and it worked a lot better too -- a pretty big deal when considering the size of the FTD network and the fact this was a Valentine's Day season issue when everybody and his brother is getting some flowers delivered to Mom, Wife, and Mistress at the same time.
Unfetter your ideas. Copyfree your mind.
Being the one that wrote the code: I'm with you too (in a way...)
The thing is that prior to this release, applications that were using SQL joins (involving more than 2 tables) where ruled OUT:
Now a lot of more applications *can* use MySQL Cluster.
That is the new feature...but 70x is what's in the press release.
(NOTE: mysql cluster is a different prodcut from mysql server)
"If /dev/null is web-scale and fast then I will use it". I almost lost it on that one. :)
The thing is that prior to this release, applications that were using SQL joins (involving more than 2 tables) where ruled OUT:
Now a lot of more applications *can* use MySQL Cluster.
Yeah, that's a less flattering remark than a 70x increase in speed, but probably more useful :D. I'm not familiarized with MySQL Cluster, and I'm surprised it is_that_ different from the server version.
Kubuntu did a nasty on me with a surprise, non-optional upgrade to kmail 4.7.2, which is just an unfinished work, to put it mildly. As a confirm glutton for punishment, I decided to make it work no matter what the coast. Anyway, it came with a MySQL backend that was sort-of working, but one day it just fell down and couldn't get up. So I replaced it with the experimental, unsupported PostgresQL backend, and after a little bit of pain learning how to administrate the server, it came up and so far has worked considerably better than the MySQL backend. I had to tell to use less mmapped memory, which is something no user should ever have to be expected to deal with, and it is beyond me why PostgreSQL couldn't figure that one out itself. Well, I suppose if I care enough I will send a patch, but the point is: if that is the biggest issue I had with it, that is damned sweet. So color me impressed with PostgreSQL, and actually, I will stand up and thank the nutsoid KDE dev who pulled this stunt because I finally have an excuse to get to know the free database I should have used a lot more all these years. And by the way, I am kind of curious whether having a full blown relational database sitting under my email client will actually result in smarter email handling some day. So far, not visibly smarter, just slower, fails to filter my spam and sometimes has races and needs to be told how to resolve them. I'll give it a while and see if some actual power shows up.
Have you got your LWN subscription yet?
If you start to manage lots of data ( and I think some people enter into this category for their email ), it make sense to use a DB. It may not bring much in term of feature, but if this prevent people from redoing optimisation and so on that are already done by others group, that will permit to free some time to worok on others features. So in short, you will not see much directly; Performances are forgot after a week and start to become the norm, and unless you look at internal and code, you may not see the improvement in term of maintainance.
If you start to manage lots of data ( and I think some people enter into this category for their email ), it make sense to use a DB.
It makes sense on paper. It has yet to be proved that it makes sense for email, and in fact, so far kmail 7.2+ is pretty good evidence for the contrary. I am afraid you will have a difficult time finding anyone who has stayed with Kmail through its recent convulsions and has in fact forgotten about the performance issue. Just do a quick search on "kmail 7.3 slow" to convince yourself.
Have you got your LWN subscription yet?
are exactly equivalent. If your RDBMS is so crappy that it can't see that, then that's not the user's problem. SQL was supposed to be an abstraction, right?
HAND.
At least when PostgreSQL starts working it stays working but I agree the same can't be said for MySQL. A recent upgrade changed the layout of mysql.user causing none of the users to be able to login. The oracle approved fix? mysqdump and restore but that just restored the bad layout of mysql.user. The actual fix involved dumping everything one database at a time and recreating mysql.user from a script. My best guess is that whoever designed the MySQL login system ignored SQL best practices and did the C equivalent of a "select * from mysql.user" rather than explicitly ask for the fields in the needed order.
I obviously didn't get enough sleep as I read: "Obama Claims Dramatic MySQL Performance Improvements" Nonetheless it is a good thing. Why all the Oracle hate? Too much energy expended on disdain towards Oracle reduces the amount available for Microsoft, and I can't afford that.
I object to power without constructive purpose. --Spock
Tried Drizzle, yet ?
New things are always on the horizon
sub-selects are SQL, dumbass.
you didn't even get it, didn't you?
u just have to be smart, that is, now ur domain and take into account the consecuences of your design decisions. that's the hard part of any design. if u do it right u need not to care that much about your providers being dumbasess, or even full of shit (chances are they'll be). if u don't, then ur sw is crap anyway. quick! bitch optimize pleez!
i know such forward thinking is against this whole hot agile thing but at the end it is mandatory in the abc of any (serious)* developer, something not that much related to sql or optimization as to being a skilled problem solver, which is essentially the same as being a smart designer.
however, don't get me wrong: i've no problem with you wanting to buy any new problem whatsoever, no matter the price and no matter the reason. be my guest. even more: i wish you the best luck (and revenue) inventing all kinds of fancy problems to solve old problems. and, after all, you always can blame that "braindead optimizer".
ok, now get back to nintendo.