ORDER BY hate



  • <FONT face="Courier New">SELECT name
    FROM databases
    WHERE hate < </FONT><FONT face="Courier New">(
       SELECT hate
    </FONT><FONT face="Courier New">   FROM databases
       WHERE name = 'oracle'
    )
    ORDER BY hate ASC</FONT><FONT face="Courier New">;</FONT>

    For the DB noobs out there, like me. Marketing would have you believe that Oracle is the industrial strength database out there. Oracle is the shit your government uses to keep track of taxes and such. Of course, at school you don't get to toy around with Oracle, because of the $$$, so apart from this site, we don't learn much about its hateability. We did however play with

    Borland InterBase - lacks every other thing you expect of SQL, ships with Delphi but has an annoying interface
    MySQL - when using InnoDB, mostly tolerable, but real DBA's sneer at it; no VIEWs
    PostgreSQL - sort of weird here and there, mostly O.K., but real DBA's sneer at it, for some reason
    Microsoft Access - not a real database, of course, or you wouldn't get it for free with Office
    (Prolog) - yes, you can use Prolog as a database through DDE. Much fun, not very useful.
    (XML/XPath) - for mostly non-relational data it's OK (as in: glorified .ini file); it's easier to ship an XML parser than a real DB; XPath is even more hateable than SQL
    (INI) - I once accidentally wanted to store a list of things in an .ini..... that was... painful.... and embarassing.

    These are all the databases I actually have experience with, writing web sites, administration programs, assignments and other such non-nuclear applications. Personally, I think MySQL is pretty good. But people look down on it. I sometimes worry when I see it using 130 M(i)B of virtual memory for a non-nuclear application, but then I figure: do as the OOM killer and don't worry.

    However, if you go here[1], Oracle does seem to be the most full-featured RDBMS out there. But, according to you lot, an intolerable RDBMS. Is storing data a lost cause then?

    [1] http://en.wikipedia.org/wiki/Comparison_of_SQL_database_management_systems



  • @Joost_ said:

    However, if you go here[1], Oracle does seem to be the most full-featured RDBMS out there. But, according to you lot, an intolerable RDBMS. Is storing data a lost cause then?

    I think most people, even the IHOC members, do agree that Oracle is the most full-featured DBMS out there, this is not the main gripe people have with it.

    The main issues are, as far as I've seen:

    • The installer, it's a damn blasted piece of shit and it has dependencies
    • The ease of administration. It's nonexistant, that's why SQLServer (among others) is gaining ground extremely fast. Not having to pay for 10 DBAs and regularly shell out big bucks for Oracle consultats is usually see as "Fuck Win".
    • The overhead. Oracle is kind of like a full J2EE stack (but worse), it's nice for frigging huge applications/DBs with monstrous hardware to run it if you have the staff to manage it, but it can't scale down, neither data-wise (lightweight doesn't exist in oracle-speak), nor human-wise (no, you can't get rid of your DBA army), nor hardware-wise (don't even try).

    The issue most people have with Oracle is that, compared to other DBMS, it's kind of like using ASM versus using Java or Python. Sure, you've god much more punch in it, you can do more, with (sometimes) better perfs, but it's a pain to work with and it cripples down your productity as a human being.



  • @masklinn said:

    • The installer, it's a damn blasted piece of shit and it has dependencies




    I've heard it got better in 10g, but well, it's hard to imagine how it could get worse.



    • The ease of administration. It's nonexistant, that's why SQLServer (among others) is gaining ground extremely fast. Not having to pay for 10 DBAs and regularly shell out big bucks for Oracle consultats is usually see as "Fuck Win".


    If you do the setup right (get some real good consultants for that job), it's relatively carefree.
    None of my oracle-using customers has a "DBA army", some even have no Oracle know-how at all in-house.


    • The overhead. Oracle is kind of like a full J2EE stack (but worse), it's nice for frigging huge applications/DBs with monstrous hardware to run it if you have the staff to manage it, but it can't scale down, neither data-wise (lightweight doesn't exist in oracle-speak), nor human-wise (no, you can't get rid of your DBA army), nor hardware-wise (don't even try).

    Definitely. To borrow an old joke from the vi vs. emacs wars: Oracle is a nice operating system, the only thing missing is a decent database.
    It's quite possible to put large parts of an application into the Oracle database instead of using a separate middleware. I've done that for 4 years or so, it works better than one would expect.


  • Hello joost, may I jump in
    here? (btw, you're avatar... They Live?). Ora works well when the row
    counts get up in the tens of millions and you have an oltp system with
    many concurrent users doing granular updates and lots of little queries
    that need an almost-instantaneous response. But, yes, ora is insanely
    difficult to manage. It does recover well from a  system crash, so
    if you're a bank or something like that you probably need to guarantee
    transactions, etc.



    Writing a database engine for a fixed-width row format is easier, and
    it is easier to get faster performance. I love the dbf format. Too bad
    MS sat on FoxPro. Break the 2GB limit and you've got a great dbms.



    Don't know Paradox too well, but I remember when it was the only engine
    that offered a library you could link into your C programs for a
    reasonable price, but at the time I couldn't even afford that. :).
    Great dbms, though, gave you long field names.



    MS Access? What a buggy piece of cr*p. We had so many problems with
    Access 95 running on Novell... but serves us right for not having a
    100% MS solution, right?



    Oh well, I could go on, but I've filled up the editor pane with my ramblings, so, enough is enough.






  • I, myself, actually like PostegreSQL. I'm the DB admin for a university, and it's great for that. It's a small place, so it's great.



  • @henkychif said:

    Hello joost, may I jump in here? (btw, you're avatar... They Live?). Ora works well when the row counts get up in the tens of millions and you have an oltp system with many concurrent users doing granular updates and lots of little queries that need an almost-instantaneous response. But, yes, ora is insanely difficult to manage. It does recover well from a  system crash, so if you're a bank or something like that you probably need to guarantee transactions, etc.

    (Yeah, They Live)

    So basically Oracly is _the_ db for banks, government agencies, etc. And all the people who whine about difficult administration just need to go back to their MySQL web sites. Kind of like C++, it may not be perfect but does the job & does it well.

    lgeekery, I read somewhere that NASA uses Postgres, so you may be in good company[1] , although these organizations won't necessarily have the 10s of millions of rows that henkychif talks about.

    Some of the users including Sony Music, Intel, Kodak, FedEx, KPMG Consulting, Ericsson,
    Siemens AG, Yahoo!, NTT DoCoMo (Japan), Hitachi (Japan), Imation, Lexmark, Cisco Systems, RSA Security, Avis (Europe), U.S. Department of Energy, UPS, Disney, Oxford University, Harvard University, NASA Space Flight Center, MIT, Michigan State University, University of Michigan

    [1] http://www.sharewareriver.com/product.php?id=20156



  • @Joost_ said:

    So basically Oracly is the db for banks, government agencies, etc.



    Dunno about that - most of the big financials I worked for use Sybase, and won't let Oracle in the door. 

    Not that I'm slamming Oracle, I used and liked it.

    Simon



  • APEX / Oracle

    Now rest in Peace, Microsoft



  • @Joost_ said:

    Borland InterBase - lacks every other thing you expect of SQL, ships with Delphi but has an annoying interface
    MySQL - when using InnoDB, mostly tolerable, but real DBA's sneer at it; no VIEWs
    PostgreSQL - sort of weird here and there, mostly O.K., but real DBA's sneer at it, for some reason
    Microsoft Access - not a real database, of course, or you wouldn't get it for free with Office
    (Prolog) - yes, you can use Prolog as a database through DDE. Much fun, not very useful.
    (XML/XPath) - for mostly non-relational data it's OK (as in: glorified .ini file); it's easier to ship an XML parser than a real DB; XPath is even more hateable than SQL
    (INI) - I once accidentally wanted to store a list of things in an .ini..... that was... painful.... and embarassing.

    These are all the databases I actually have experience with...


    I wish people wouldn't use terms like "database" and "DBMS" interchangeably - it muddies the waters. None of the apps on the list are databases (the Windows registry might be, but not ini files). Some of the apps are DBMSes, some are file managers, some are... files?!

    DBMS people themselves have gradations of definition. For example, some people would call anything with support for latency and concurrency a DBMS, but to many, it has to be ACID compliant:
    http://en.wikipedia.org/wiki/ACID
    By the latter definition, Sybase and SQL Server do not qualify as DBMSes, but Oracle and PostgreSQL do qualify. That should give some clue as to Oracle's popularity.

    Actually, a lot of DBAs love PostgreSQL. It is easy to pick up, since its architecture is similar to Oracle's, and it has fewer technical drawbacks compared to the other cheap DBMSes. The real problem with it, in common with the other Open Source DBMSes, is that hardly anybody has paid experience administering it, which tends to scare off management. Sooner or later that problem will go away.

     


Log in to reply
 

Looks like your connection to What the Daily WTF? was lost, please wait while we try to reconnect.