Slashdot Mirror


MySQL Founder Starts Open Database Alliance, Plans Refactoring

Gary Pendergast writes "Monty Widenius, the 'father' of MySQL, has created the the Open Database Alliance, with the aim of becoming the industry hub for the MySQL open source database. He wants to unify all MySQL-related development and services, providing a potential solution to the fragmentation and uncertainty facing the communities, businesses and technical experts involved with MySQL, following the news of the Oracle acquisition of Sun." Related to this, an anonymous reader writes that "MySQL has announced a project to refactor MySQL to be a more Drizzle-like database." Update: 05/14 20:50 GMT by T : Original headline implied that this was a project of Sun, but (thanks to the open source nature of MySQL) it's actually Monty Widenius — no longer with Sun — leading this effort.

27 of 153 comments (clear)

  1. PostgreSQL by Anonymous Coward · · Score: 4, Insightful

    Just bite the bullet and port to it. In the process, you may have to learn a bit about how databases are actually supposed to work, but that's probably good for you.

    1. Re:PostgreSQL by |DeN|niS · · Score: 3, Interesting

      Slony-I is asynchronous. Read postgres' excellent documentation for some other possibilities.

      You also get more flexibility; want to replicate your "current" tables but keep your "history" tables only on the master? Want to chain slaves to slaves instead of all slaves to one master? Want a special search database (you can have transactions and fulltext search at the same time) that only contains the ts_vector (fulltext search index) tables? Slony lets you do all of those.

    2. Re:PostgreSQL by Slashdot+Parent · · Score: 3, Informative

      Slony-I is a dreadful hack that misuses triggers, and doesn't scale past a few nodes.

      I'm sorry, but Slony-I is not a serious replication solution.

      --
      They don't grade fathers, but if your daughter's a stripper, you fucked up. --Chris Rock
  2. Fo Shizzle by 0100010001010011 · · Score: 3, Funny

    Myizzle SQL be-izzle lizzleke Drizzle.

  3. why? by Lord+Ender · · Score: 4, Insightful

    For apps that need basic SQL functionality and aren't particularly-high load, I use SQLite. For app that need advanced SQL or high load, I use Postgres. I can't imagine a scenario when I would chose to use MySQL (or MS SQL, for that matter).

    --
    A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    1. Re:why? by Lord+Ender · · Score: 4, Funny

      WHY use MySQL? Gee, because it's well documented,

      That's certainly a good thing, i'll give you that.

      it plays nicely with Perl and PHP,

      I just threw up. As my keyboard shorted in its vomit bath, it outputted a random string of characters and symbols, which just happen to execute without warnings when piped to perl.

      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    2. Re:why? by Lord+Ender · · Score: 5, Informative

      MySQL works for many of us.

      I didn't ask if it worked. I asked in what scenario it would be a superior option (to the well-informed application architect, of course). The only real reason you gave is that you don't know much about Postgres. That means you're not really qualified to answer the question.

      Does it scale better? Does it have better security? Is it easier to manage in some way? Is there a killer feature its two closest competitors lack? Those might be actual answers to the question. "I don't know much about it" is not an answer.

      It's certainly commonly perceived that Postgres will scale better, and that it has a rather complete featureset. If this is indeed the case, I can't see a reason to select MySQL for a new project. Why limit yourself?

      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    3. Re:why? by rho · · Score: 5, Funny

      MySQL is well documented so that all the bugs are turned into features:

      Mein Broder: So, in MySQL, when you exceed the maximum size of a TEXT column, does it throw an exception, or does it just truncate the data to fit?

      Me: Well, it being MySQL, it will probably do something differently on Tuesdays than it does on the vernal equinox... but it probably will throw an exception and bitch about how you suck at data planning. Which is the proper thing to do, because who would want their database silently truncating data?

      Mein Broder: In this case, I'd actually prefer it, 'cause otherwise I'd have to programmatically truncate it myself. These data aren't really that important, and truncating would be acceptable. It would be nice if I could be a lazy programmer.

      Me: I think you're out of luck. But let's take a look:

      MySQL Manual -- If you assign a value to a BLOB or TEXT column that exceeds the column type's maximum length, the value is truncated to fit.

      Me: Astounding. Your desire to be a lazy, shiftless programmer has been facilitated by other lazy, shiftless programmers who have built the world's most rickety database management system.

      --
      Potato chips are a by-yourself food.
    4. Re:why? by Eponymous+Coward · · Score: 5, Informative

      MySQL is better because I know how to use it and it works well enough. If I were to switch to Postgres, then I would have to spend time learning it.

      My manager would rather me move some other feature forward rather than replace database A with database B.

      When we hire somebody new, it is easier to find candidates who already know MySQL. That matters too.

      -ec

    5. Re:why? by drinkypoo · · Score: 5, Funny

      I just threw up. As my keyboard shorted in its vomit bath, it outputted a random string of characters and symbols, which just happen to execute without warnings when piped to perl.

      Is the new slashcode out already?

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    6. Re:why? by bmartin · · Score: 3, Informative

      I can't imagine a scenario when I would chose to use MySQL (or MS SQL, for that matter).

      I work for a Fortune 500 company. We use MySQL with J2EE and Hibernate in a production environment. Postgres would be our fall-back option if MySQL ever stopped doing the trick for us, but it scales well to thousands of users.

      MySQL can easily be configured for use as a production-quality database. We also use Oracle and DB2 on an i5 for certain purposes, but our biggest app (in terms of company scope and $$) employs MySQL in the back-end.

      That's why :-P

      --
      "You could almost look at defense of Microsoft as a form of the Stockholm syndrome." -neapolitan
    7. Re:why? by asdf7890 · · Score: 4, Informative

      For instance if you never delete from a table there's no need to bother trying to vacuum it.

      Not quite. Because of the way postgres operates (MVCC) UPDATEs will result in space appearing in table structures too. With an MVCC based DB nothing is updated in-place (actually, in any good DB nothing is updated in-place, but with MVCC this is more obviously implied by any good description of how things work with multiple distinct transactions present). When a row is updated new version is added and the old version is removed when the transaction is complete and no other transactions might refer to the old copy. This has significant advantages for some use cases and loads, and some disadvantages in other

      The wikipedia page (http://en.wikipedia.org/wiki/Multiversion_concurrency_control) isn't a great description though there is a bit more relevant information in http://en.wikipedia.org/wiki/Snapshot_isolation.

      I've not used postgres much in anger, so I'm no expert, but personally I thought that being able to manually schedule cleanup was a good idea performance wise.

    8. Re:why? by DiegoBravo · · Score: 3, Funny

      > I asked in what scenario it would be a superior option (to the well-informed application architect, of course).

      Of course because MySQL's root password comes empty so the Agile developers avoid losing their costly time waiting for the local database nerd configuring the permissions and bothering the team with more passwords to remember....

    9. Re:why? by Splab · · Score: 4, Insightful

      People like you are undermining the industry. You straddle around claiming to be a database developer with x years under the belt, but you are in fact putting your clients data in grave danger and when shit finally hits the fan on your mysql installation you are going to wish you listened to the people who knew better.

    10. Re:why? by Crayon+Kid · · Score: 3, Informative

      Many of us MySQL users see your Postgres question the same way: why use Postgres?

      Because MyISAM, which is what most MySQL users use, is not fucking ACID compliant.

      Take a look at the potential problems. Take a look at recommended use cases: "Tables which contain read-only data, throw-away data, data which can be quickly re-generated." Are you bloody kidding me!?

      I can't believe my eyes when I read questions (or posts) such as the above. Because it betrays your huge ignorance. Every man and his dog has heard of MySQL and is probably using it, true. But it's also true that most of them have no bloody idea of what ACID is or why it's desirable, or that MySQL with its MyISAM tables goes completely happy-go-lucky on the whole concept. These are the same people who probably don't bother using foreign keys, or have never even heard of transactions, or can't think why they'd need them.

      Sure, MySQL offers InnoDB, which is supposed to rectify those issues. But how does it go about it, may I ask? Why, take a looksy. It's an entire bloody SECTION of the manual, which goes to great lengths to explain all kinds of issues and exceptions to the rules and whatnot. Summary: "It locks rows like this, except if it's a full moon then you have to blink your left eye every five seconds, and if you're doing a particular SELECT you need to stand on one leg, except on Fridays when it's the right leg."

      Now compare with the Postgres manual page describing their ACID implementation. It's a couple of pages, keeping things clear and simple, so that anybody can understand them.

      Not to forget that if you want InnoDB you give up full text search capabilities. And you ask why we should use Postgres? Really?

      MySQL has lowered the bar for complexity of use. But in doing so it has facilitated DB access to a whole bunch of people who don't have any idea what they're doing, or don't really care about data integrity. It's fast and it works most of the time so it's alright, yes? Yes, granted, nobody will care much if your personal blog goes tits up because of MySQL. But I expect people will care if a database in which data actually counts for something has problems. And in such cases I expect people will want a real database.

      --
      i ate crayons when i was a kid and now i have two braincells and the blue ones taste nicer
  4. Re:Yes, but.... by Ilgaz · · Score: 4, Insightful

    I don't get why they treat Oracle like AOL acquiring Netscape. It is a database development company which has no solution to fill MySQL'es place if I haven't mistaken.

    I think after these incidents, large companies will think 1 billion times when they got the idea of acquiring an open source project. They treat Oracle like AOL for God's sake.

  5. Who? by fm6 · · Score: 4, Insightful

    HEADLINE: MySQL Creates Open Database Alliance, Plans Refactoring

    MySQL the database application? It created a new alliance? It plans to refactor itself? Astonishing, if true.

    MySQL the software company? Uh, not, because Monty no longer has any connection with them.

    You mean Monty did these things. Not "MySQL". His identification with MySQL is pretty strong, but I don't think they'll merge any time soon!

  6. Re:YAY!!!! by Ilgaz · · Score: 4, Interesting

    If they don't come up with a pure technical reason, a proof for forking the project rather than "big company hate" or conspiracy theories, they are already taking this decision politically.

    If they think Oracle purchased Sun just to kill their project for 7.2 billion dollars in such state of Global economy, they are bordering megalomania.

  7. I'm confused by Stone316 · · Score: 3, Interesting

    I'll admit, I haven't followed MySQL that much but i'm confused as to the state its in now. With the original founders going off and doing related stuff it seems pretty fragmented.

    Can someone piece it all together?

    --
    "Thanks to the remote control I have the attention span of a gerbil."
  8. Re:Yes, but.... by DragonWriter · · Score: 3, Informative

    It is a database development company which has no solution to fill MySQL'es place if I haven't mistaken.

    Oracle has a number of lighter DB products, including Oracle Express Edition (XE) which is free (as in beer). They don't have anything (that I know of) that does the same kind of multi-backend thing that MySQL does, but certainly they have a number of products whose market niches at least overlap with that of MySQL.

    (Also, Oracle is a lot more than a database development company and has certainly been more aggressively pushing into other areas; I suspect that their acquisition of Sun was more focussed on the non-MySQL parts of Sun than on MySQL.)

  9. MySQL AB ver. 2? by Stan+Vassilev · · Score: 5, Insightful

    It was during MySQL AB's time that MySQL began a stange play with the community by first dropping official community binary builds, and then severely delaying source code releases as well (while supplying commercial clients with more stable and up to date releases).

    It was again during MySQL AB's time when the announcement came that MySQL's source code base will start to "close down", by releasing many new features only commercially, and with no open source code. When Sun bought MySQL AB, they reversed those policies and stood behind MySQL being open, without exceptions.

    Now Mr. Monty Widenius has taken the money Sun paid for MySQL AB, and used it to open a new company and an "Open" alliance which is "designed to become the industry hub for the MySQL open source database, including MySQL and derivative code, binaries, training, support, and other".

    If even Mr. Widenius has noble intentions regarding MySQL, his past in MySQL AB and his current interaction with Sun/Oracle seem to leave another impression.

  10. facebook uses it by Toreo+asesino · · Score: 5, Informative

    ...I saw in one presentation their chief architect did. They had no complaints about it; apparently it scales brilliantly as long as the db schema is very simple.

    For heavy-weight databases though, I gather it's not so good.

    --
    throw new NoSignatureException();
  11. what did Sun buy? lessons in OSS acquisitions by cowdung · · Score: 3, Interesting

    A lesson in Open Source acquisitions:

    1. Monty starts db called MySQL, trademarks and has copyright
    2. Monty sells trademarks and copyrights to Sun (presumably for a ton of cash)
    3. Monty leaves Sun
    4. Monty forks MySQL calls it MariaDB

    So in the end.

    Sun has:
    1. A trademark
    2. Rights to the code
    3. Right to sell MySQl under any license

    Monty has:
    1. GPL'd code he does not own
    2. Credibility as the guy who knows about this
    3. The ability to continue selling support services

    So in OSS when you buy a product you don't really get too much do you? (At least if you can't hang onto the developers)

    1. Re:what did Sun buy? lessons in OSS acquisitions by zuperduperman · · Score: 3, Interesting

      > So in OSS when you buy a product you don't really get too much do you?

      I think they got a lot from it: Monty is completely hamstrung because he doesn't own a line of the code in his new "Open" database. Unless he rewrites from scratch he is stuck with GPL even if he wants to give his code to his own wife. And that also means that no serious commercial company can use it because even the drivers are GPL (*not* LGPL) which means as soon as you touch it even to open a connection your own product turns to GPL (unless you buy a license from Oracle).

      IMHO, the first thing that needs to happen (and which should have happened years ago) is that the MySQL GPL drivers need to be clean-room rewritten so at least you can link non-GPL code with it. Until then I've got no interest in it and it loses to PostgreSQL before I even get to thinking about a technical comparison (and please note: I've got nothing against GPL in general, I just don't want it forced inside my own processes by my database).

  12. Monty Widenius by StikyPad · · Score: 4, Funny

    *Opens the envelope*

    What do you call a game show host in a goatse pose?

  13. Re:Yes, but.... by Dragonslicer · · Score: 4, Insightful

    I thought Oracle was a database? Is it different enough from MySQL to bother keeping both?

    If you have to ask that question, just believe us when we answer "Yes."

  14. Re:Yes, but.... by spauldo · · Score: 3, Insightful

    Freightliners and Vespas are both vehicles.

    Oracle is what you use if you have hundreds of millions of dollars, a team of DBAs, and your need for data storage is such that downtime is measured in thousands of dollars lost per minute.

    MySQL is what you use if you've got ten employees (one of which knows a bit of PHP) and sell motorcycle parts over the internet and you don't feel like an ebay store would quite meet your need.

    They're both great products (I assume, I'm not a DBA and haven't messed with oracle). They're both RDBMS's. They both run on just about any modern platform. They're not used for the same stuff.

    --
    Those who can't do, teach. Those who can't teach either, do tech support.