Slashdot Mirror


.org TLD Now Runs on PostgreSQL

johnnyb writes "The .org domain, which has long run on Oracle systems, is now being transferred to a PostgreSQL system. I guess we can now dispel the "untested in mission-critical applications" myth."

94 of 379 comments (clear)

  1. not that impressive by LinuxCumShot · · Score: 5, Funny

    .ca runs on MS-DOS running some home brew DB that is just a bunch of batch files

    --
    -- OMFG = Oh My Floatse Goatse
    1. Re:not that impressive by JonWan · · Score: 2, Funny

      Wow what do you know... they let Canadians moderate.

      +2 Funny to -1 Troll in 30 sec.

    2. Re:not that impressive by Anonymous Coward · · Score: 2, Insightful

      Parent is a joke, not a troll. /. moderators are TeH sUx0r

    3. Re:not that impressive by liquidsin · · Score: 3, Funny

      Are you sure it's a joke? I was thinking it was 'informative'.

      --
      do not read this line twice.
    4. Re:not that impressive by rtaylor · · Score: 2, Interesting

      Considering the .ca system is regularly overloaded -- to the point where OpenSRS implemented a special 'delayed transaction' system for it -- it's not that good.

      The Affilias .org (and .info) systems get the domain up and running in under 2 minutes -- which is really good considering a good chunk of that time is DNS propogation related (between masters for the domain).

      --
      Rod Taylor
  2. Oracle... by killthiskid · · Score: 5, Funny
    "No one ever got fired for selecting Oracle, so we asked ourselves, Do we take that option?" he said.

    Not true! I know someone who got fired for choosing oracle, then being unable to properly implement it.

    1. Re:Oracle... by sakeneko · · Score: 4, Informative
      "No one ever got fired for selecting Oracle, so we asked ourselves, Do we take that option?" he said.
      Not true! I know someone who got fired for choosing oracle, then being unable to properly implement it.

      Someone who worked for the State of California, perhaps? There were a bunch of people who lost their jobs over that debacle.... See here for more info.<wry grin>

    2. Re:Oracle... by jcr · · Score: 3, Funny

      I know someone who got fired for choosing oracle, then being unable to properly implement it.

      My standard rebuttal now when someone says "nobody every got fired for choosing (insert standard expensive mediocrity vendor here)" is: "No, they didn't get fired, they lost their job when their company folded."

      -jcr

      --
      The only title of honor that a tyrant can grant is "Enemy of the State."
  3. This is a great performance test by TerryAtWork · · Score: 4, Funny

    Now we get to see how PostgreSQL handles those 98 % of wasted inquiries from DNS servers that don't know .elvis is not a TLD.

    --
    It's Christmas everyday with BitTorrent.
    1. Re:This is a great performance test by bob@dB.org · · Score: 5, Informative
      Now we get to see how PostgreSQL handles those 98 % of wasted inquiries from DNS servers that don't know .elvis is not a TLD.

      org. is tld (top level domain).

      . (dot) is the root.

      the story on the wasted 98% was about the . (dot) root servers, not about a tld server. you (and sadly, too many others) should read rfc 1035.

      --
      Acts@core.mailboks.com Acrux@core.mailboks.com Adam@core.mailboks.com Adar@core.mailboks.com Ada@core.mailboks.com
    2. Re:This is a great performance test by mcoko · · Score: 2, Funny

      I just wasted 98% of my brain cells trying to figure out what your parentathese and acromyns mean. Then the last 2% trying to sift through the RFC to confirm your statement.

      I have just crashed with 0% brain matter left.

      --
      www.fotoforay.com
    3. Re:This is a great performance test by micromoog · · Score: 4, Funny
      you (and sadly, too many others) should read rfc 1035.

      Well, I would read it . . . except that it's SO completely useless and uninteresting to me.

  4. Well, what are/aren't they using it for? by etcshadow · · Score: 5, Insightful

    Because they don't take context or purpose into account at all. There are things that Postress may be better for and things that Oracle certainly shines at. I mean, hell, I love MySQL, too, but I wouldn't want to use it as the backend for _my_ system. Not that the others are hollisticaly "bad", it's just that Oracle is the most appropriate for this situation.

    What's a TLD doing with a database? Making ridiculous numbers of extremely lightweight queries, and managing redundancy. That's not necessarily the same thing that everybody wants an "enterprise class" "tested" database to do for "mission critical" tasks.

    --
    :Wq
    Not an editor command: Wq
    1. Re:Well, what are/aren't they using it for? by someguyintoronto · · Score: 3, Interesting

      Actually, this is a good question. What is the database used for? Profile information for WHOIS searches? That would make the most sense, and isn't *that* big a deal. A database to handle name resolution is a bit of overkill I think.

      And not to distract that yes it's good to see PostgreSQL getting some mainstream fame.

    2. Re:Well, what are/aren't they using it for? by Daniel+Dvorkin · · Score: 2, Informative

      Short answer: MySQL simply doesn't have the feature set of either Oracle or PostgreSQL. Subselects, views, etc. ... (It does have transaction support now, fortunately.) These are features which have been on the "coming soon" list for a while, and which a lot of developers regard as essential.

      Having worked pretty extensively with both MySQL and PostgreSQL, I'll say that what keeps me going back to MySQL is speed, speed, speed. Yeah, having to implement stuff in interface code (PHP or Perl) that I really ought to be able to do in SQL is a bummer, but the queries are so much faster that it makes up for it. But it's really a matter of personal preference. PostgreSQL is a very good DBMS.

      Hoping to head off the apparently inevitable MySQL-PostgreSQL flamewar ...

      --
      The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
    3. Re:Well, what are/aren't they using it for? by Zeinfeld · · Score: 4, Informative
      Actually, this is a good question. What is the database used for?

      The database is a buffer between the requests comming in from the registrars and the DNS resolvers. So you get a bunch of requests comming in once a day saying stuff like 'change asm.org DNS to 10.2.3.243' and the registry has to decide what to do with them. To do that they need to have a bunch of info stating what registrar owns the account at the time and so on. And yes it is not unknown for registrars to attempt to do things they should not.

      The DNS infrastructure that is queried by you DNS server is completely separate. Every hour or so the SQL database will do a dump which will then be checked and if it passes will be sent to the production DNS infrastructure which is essentially a read only affair.

      So no, this does not mean that every DNS lookup in .org is going to result in a mySQL transaction. Nor can you say anything about whether this deployment proves mySQL is ready for primetime, at least not yet you can't. You probably want to wait to see how the zone holds up over the next few months before drawing any judgements.

      BTW the technical name for Oracle features is 'complications'.

      --
      Looking for an Information Security student project suggestion?
      Try http://dotcrimeManifesto.com/
    4. Re:Well, what are/aren't they using it for? by neuroticia · · Score: 2, Insightful

      Of course it won't result in a mySQL transaction. It's running on postgreSQL. =]

      -Sara

  5. slashdotted by gokubi · · Score: 4, Funny

    I hope computerworld isn't running on PostgreSQL!

    --
    I'm much funnier now that I'm a subscriber.
  6. Overkill. by grub · · Score: 5, Funny


    All they need is netcat, shell scripts and grep.

    --
    Trolling is a art,
    1. Re:Overkill. by rycamor · · Score: 2, Insightful

      ...and all the bank needs to manage your account is a paper ledger with holes punched for a nice ring-binder.

      Data *management* is every bit as important as data storage and retrieval. And don't even get me started on statistics and reporting.

  7. Wasn't Oracle, actually by kschendel · · Score: 5, Informative

    Verisign runs the shared registry with Oracle, but the registrar-specific data was and still is stored using Ingres.

  8. Um by TekReggard · · Score: 5, Insightful
    "Mohan said the decision to award the contract to a vendor deploying PostgreSQL vindicates the database as a reliable, stable management system."

    No, it simply means that its going to be tested in a larger environment and if it does well then they get to party and say "woohoo it worked!" and if it flops they're all gonna feel really stupid. It doesnt mean its stable at all. The common practice of paraphrasing "LOOK!! Someone is using our product so it MUST work perfectly." is actually quite disturbing.

  9. Nice. But who is supporting it? by Kenneth+Stephen · · Score: 2, Interesting

    Please, please, please tell me that there is some commercial entity that they have contracted to for support. I really dont want my domain to be unreachable because they do their own support and are debating about which fix is the "right thing to do" so that upstream accepts it.

    --

    There is no such thing as luck. Luck is nothing but an absence of bad luck.

    1. Re:Nice. But who is supporting it? by mph · · Score: 2, Insightful
      Why do you assume that an outside, commercial entity would be more competent than somebody on their own staff? If they need a PostgreSQL expert, why would it be better to pay a "commercial entity" to provide them with an expert, rather than just hire the expert?

      I'm not saying that's what they did; of course it would depend on whether they have enough work to hire the expert, for example. But I don't understand the reasoning that says "there's no way that we can hire competent staff, but surely if we pay another company enough, they'll have competent staff."

    2. Re:Nice. But who is supporting it? by questionlp · · Score: 2, Informative

      Well, Red Hat is using PostgreSQL for their Red Hat Database package and presumably would provide support for it. You can also find support partners for PGSQL at http://www.pgsql.com/partnerlinks/.

    3. Re:Nice. But who is supporting it? by Kenneth+Stephen · · Score: 4, Insightful

      Competency isnt the issue here. I am assuming that whoever the actual developer of the fix is, that they will be extremely competent in fixing the problem. With an external entity, contractual terms of delivery will twist their arms into fixing severity 1 problems with the urgency that they deserve regardless of whether the fix is the best possible coding / architectural solution for the overall Postgres project. With an internal entity, the pressure will be less on them because if management threatens to "chop the head off" because of trying to do the "right thing" instead of just fixing the problem, they will have to stop and consider that they are damaging their own organization. It is always easier for management to be brutal with external entities rather than one of their own.

      --

      There is no such thing as luck. Luck is nothing but an absence of bad luck.

    4. Re:Nice. But who is supporting it? by wfrp01 · · Score: 2, Insightful

      So you can "chop the head off" the consultant, because they're less important than internal employees. Therefore they are more valuable. Yeah, whatever.

      I have to say, I'm pretty suspicious of any management theory which is predicated on the notion that your best option is the one that allows you treat people the shittiest. And god forbid anyone would do the "right thing".

      Just exactly why do you think an internal employees idea of what constitutes the "right thing" would be inconsistent with managment's anyway? If indeed you find yourself dealing with employees who let the world collapse around them while they fritter away their time on trivia, they should, in fact, have their heads chopped off. But personally, I know precious few people who would behave in such a manner.

      --

      --Lawrence Lessig for Congress!
  10. How fitting... by exhilaration · · Score: 2, Redundant
    That the .org TLD, where one will find the vast majority of open source projects, is using open source software for mission-critical tasks.

    Today is a good day for open source and free software!

  11. Not a surprise... by frodo+from+middle+ea · · Score: 4, Interesting

    I had the misfortune of dealing with oracle tech support team once and I can say I am not surprised the ".org" domain has shifted to PG.

    The DB was locking up when trying to retrieve data from a large table (>10 M rows) using a very complex query.The oracle guys kept suggesting that reduce the size of the table.

    Now seriously is that a valid option ? Hey man , I have a million bucks in my acct. and i can't withdraw from the ATM ??
    Just delete some of it and then try again ?
    Or the most common answer from Oracle tech team is "we know its a problem but we will not fix it in this release. Just buy the next version if you want it fixed ?

    --
    for the last time people, I am "frodo from middle eaRTH", not "middle eaST".
    1. Re:Not a surprise... by BigGerman · · Score: 2, Informative

      Just did another Oracle TAR (telephone assistance request) via their Metalink site.
      In 5 minutes, there was real person working on it.
      In 20 minutes, he explained the behaviour(oracle bug) and suggested the workaround.

      Disclaimer: I do not work for them, do not rely on income from DBA work and do prefer Postgres for my own projects

    2. Re:Not a surprise... by tzanger · · Score: 2, Funny

      Just did another Oracle TAR (telephone assistance request) via their Metalink site.

      Ya know, PostgreSQL has multiple levels of support as well... I believe you would have as good response times with them, especially at their Platinum level of support.

    3. Re:Not a surprise... by eric2hill · · Score: 2, Interesting

      This isn't an excuse, just an explanation:

      Oracle will use the index Table(A,B) to locate all A where A=Y, then scan through those rows for B=X. It will not use the full index like you've said. If you want to use the full index, you either need to specify A=Y before B=X, or use two separate indexes Table(A) and Table(B) which can be bitmap-joined to produce the given result set.

      You're right, Oracle should optimize the where clause to use composite indexes, but Oracle usually recommends not using ANY composite indexes in favor of bitmap-joined indexes. Oracle will not use multiple composite indexes on a single table.

      --
      LOAD "SIG",8,1
      LOADING...
      READY.
      RUN
    4. Re:Not a surprise... by Chazmyrr · · Score: 4, Insightful

      You are retrieving data from a 10 million row table using a very complex query and you are having performance problems? Who would have thought that?

      Normally I get paid a lot of money to solve problems like this but I'll give you a little guidance for free since you didn't like Oracle's answer.

      1) Maybe you should think about optimizing your query a bit. Running complex queries against 10+ rows can be problematic even when the RDMS has a good optimizer. Is there a less complex way to accomplish the same thing? If not, you may have to give the optimizer hints. Can you use an index to pull a smaller dataset into a working table where you do your complex operations?

      2) Profile your system to determine where the bottleneck is to be found. Is it CPU bound or IO bound. If it's IO bound, would more memory help? Can your tablespace be spread across more disks? Would a beefier system be appropriate? Cost Effective?

      This is why you hire qualified developers and administrators. I'm not surprised the tech team gave you that answer. You call the tech team when there is a real problem with the software. If you were paying Oracle to develop the database for you, you might have a case. But then, if that were true, you wouldn't have called tech support, would you?

    5. Re:Not a surprise... by Sxooter · · Score: 2, Insightful

      But you'll notice he said the database was "locking up". No matter how inefficient your query, or whatnot, you shouldn't be able to lock up a database with a select query. Period. And reducing the amount of data is never the answer.

      --

      --- It is not the things we do which we regret the most, but the things which we don't do.
    6. Re:Not a surprise... by MmmmAqua · · Score: 3, Informative

      Or the most common answer from Oracle tech team is "we know its a problem but we will not fix it in this release. Just buy the next version if you want it fixed ?

      Actually, they suggest you upgrade to the newest version, not that you buy anything new. Licenses purchased from Oracle are for a product family for a length of time determined by the license. For example: if you bought a four-year single cpu Enterprise Edition license two years ago when 8i was the current release, you have the right to use 9i, and 10i when it appears, until the end of your license term.

      ...according to my Oracle sales rep.

      --
      Arr! The laws of physics be a harsh mistress!
    7. Re:Not a surprise... by OrenWolf · · Score: 2, Informative

      My god.

      Go crawl up your database and hide in a cell.

      Firstly, reducing the amount of data is crap. What if you have 10 million records? Should the answer from *tech support* be "well, don't!"?? That's what you advocate.

      Oracle dropped the ball here. First, because the database *crashed* on the query. If you're telling me that *any* query I run should be able to outright *crash* the database then go work for Microsoft on MS-SQL. Worst case, the database should thrash incessantly (and accept a kill) or consume too much RAM and kill itself off, but certainly not HANG. I can't believe you suggest that's the fault of the person running the query and not the developer.

      But secondly, and most importantly, Oracle should definately offer tips on what to do. I mean, regardless of the situation, the thing ran, and *died*. Not slow. Not exceeding resources. Died. If it's a bug, fine. Then you offer a bloody workaround, *especially* if you have no intention of fixing the bug!

      I mean since when is *crashing* an app not a reason to call tech support? Is it because you run Windows and are *used* to the tech support response of "Reboot, try again"??

      Geez.

  12. I hope this isn't the reason for this email by f00l · · Score: 2, Interesting

    I hope this isn't the reason why they sent me an email yesterday morning with a list of over 86,000 valid contact email addresses. Here's an article about it

  13. The point by Synn · · Score: 4, Insightful

    I don't think the issue is that PostgreSQL will crunch data as well as Oracle. It's just that PostgreSQL has always had an undeserved reputation as "the database to use when you can't afford a REAL database", when actually it's a very robust and secure system that can compete quite well with commercial systems.

    I'd really like to see some serious tests done with PostgreSQL. Database systems, especially Oracle, can be an expensive part of a datacenter. Considering that with Linux/PostgreSQL your only cost is hardware/support, it may very well scale more cost effectively than Oracle.

    There's currently way too much marketing and FUD to get a real idea how these systems compare though.

    1. Re:The point by etcshadow · · Score: 2, Interesting

      Well, that's exactly my point. I'm not saying "I don't trust PostgresSQL", I'm just saying that this doesn't really prove anything on its own.

      Good for them. Hell, great for them. I'll admit that I really like Oracle, but it's not the one and only universal hammer.

      The truth is that it is very difficult to really express what any particular DBMS is good at / bad at /worth in $$$. Too much of the time, the people who actually make purchasing and deployment decisions on database platforms don't really understand the issues. I think that is a large part of why such comparisons aren't very prevelant: that is, the people who could understand them are not the ones who would be using them, so why bother? Just publish FUD, and claim that you either innovate or are Unbreakable. :-)

      --
      :Wq
      Not an editor command: Wq
    2. Re:The point by ortholattice · · Score: 4, Interesting
      I'd really like to see some serious tests done with PostgreSQL.

      I love PostgreSQL, have used it in a small (million-record) transactional application with great success, and am pleased to see the implied advocacy of having .org run on it. Nonetheless 2.4 million records is hardly enterprise-level stress. I would really like to see some serious benchmarks against Oracle. My tests on a small PC-based Linux server last year showed that pg beat Oracle mainly because the bloat of Oracle caused excessive thrashing, but on a large mainframe-type application - billion-record type stuff - I simply have no idea. A couple of years ago some benchmarks were published on the web but got quickly taken down by Oracle under threat of lawsuit - their license doesn't allow publication of benchmarks - and I never got to see them. I think this is wrong. Perhaps the recent ruling against EDA benchmark restrictions will open a door towards Oracle benchmarks?

  14. Great idea... by Kenja · · Score: 4, Funny

    If it breaks they can just go to postgresql.org to get updates and.... oh wait.

    --

    "Have you ever thought about just turning off the TV, sitting down with your kids, and hitting them?"
    1. Re:Great idea... by sharkey · · Score: 5, Funny

      You'll note Slashdot uses MySQL and is very happy.

      You misspelled "real fucking slow".

      --

      --
      "Outlook not so good." That magic 8-ball knows everything! I'll ask about Exchange Server next.
    2. Re:Great idea... by sharkey · · Score: 3, Funny

      erm.. which slashdot are you using?

      Try reading during the day. When Slashdot takes 5-10 minutes to respond to a connection request, I'd say that's pretty damn slow. It's quite a bit faster at night. The daily slow-down is more an indictment of Taco's implementation than anything else, I suppose. Since Taco implemented this new interation of Slashdot Math (20+30+30=100), the site's been nearly unreadable during the US day.

      --

      --
      "Outlook not so good." That magic 8-ball knows everything! I'll ask about Exchange Server next.
    3. Re:Great idea... by tshak · · Score: 3, Informative

      I'll second that. I'm not proud of it but I hit /. at least 3 times a day. The response can be horrible sometimes. Many times, I get "server not found" errors or MySql errors (aka, "static page only whole MySql DB server is getting rebuilt/rebooted"). Of all the sites I frequent (FiringSquad, Tomshardware, Anandtech, etc.) this site as the worst performance. True, it does have the least amount of static comment (a huge threading system, but the other sites have small but active forums too). Still, Anandtech runs fricken Cold Fusion on Windows of all things and it runs better!

      --

      There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
  15. Ummmm.... by Grip3n · · Score: 2, Funny

    ...for some reason I can't resolve postgresql.org anymore...

    --
    To make a pun demonstrates the highest understanding of a language
  16. Postgres in mission critical apps by j_kenpo · · Score: 3, Informative

    Well, we ran Postgres as our primary database for a Managed Network System Security,a nd the postgres database stored all alerts coming in from all our sensors, which included a .EDU that had qutie a bit of traffic going through it (our own implemented honeypot). The only issue we ran into was with disk space with packet logging, which was unrelated to the Postgres Database. We would get any number of hits per data into the database (sometimes over a million in a weeks time). Ive come to prefer Postgres over MySQL, although Id still take Oracle over each if I could afford the license.

  17. .nz also runs on PostgreSQL by Karora · · Score: 4, Interesting

    I was a designer of the system that runs .nz (New Zealand), which is also based around PostgreSQL, running on three replicated back-end application servers.

    The system was developed in mod Perl and went live on October 14th 2002.

    The plan is to release this (including client software) under the GPL after a stabilisation period.

    --

    ...heellpppp! I've been captured by little green penguins!
    1. Re:.nz also runs on PostgreSQL by Karora · · Score: 2, Informative

      Firstly, we were able to make some substantial assumptions about our database updating.

      • Because the system is not directly interacting with registrants, we were able to define a limited set of messages in XML.
      • we ensured that the processing of those messages that effect change includes all change as a component of the response.
      • we ensured that the record ordering in all responses is controlled.
      • we ensured that the content of the response returned from any back-end application server will be identical to any other back-end application server (except for the cryptographic signature).

      Finally, we put a layer on the front-end webserver, which feeds transactions to all of the backends in parallel. For transactions effecting change it waits for answers to be in agreement before passing the response on to the client. For enquiry transactions it just feeds the first response back as soon as it gets it.

      Basically, we worked around the fact that there is no two-phase commit in PostgreSQL. There are a few gotchas in there that we had to workaround, (e.g. updates to any given domain are serialised) but the above was the plan, and it has worked out just fine in practice.

      There is also a backend process to catch up the replication on any server that has to be taken out of the loop for a period of time. Since the backend servers are geographically distributed (with a VPN holding it all together) it is fairly easy for one to drop out of action for a short period.

      All in all, the replication model we used took around 4 weeks effort to implement, which was probably a reasonable price to pay. Even with support for two-phase commit we would still have had a significant amount of effort to use it, and to do the automatic catch-up processing.

      There's more information (a full technical architecture and prototype findings document) at the NZ Domain Name Commissioner's website

      Andrew McMillan.

      --

      ...heellpppp! I've been captured by little green penguins!
  18. TCO by oliverthered · · Score: 3, Informative

    from the artical it didn't look like TCO was a factor.

    1: they liked versioning in postgress.
    2: they liked the open source comunity.
    3: Oracle didn't have anything over postgress[that wsa usefull]

    Maybe 2 relates to TCO, the amount you'd have to pay to get the same level of developer support on oracle would be huge.

    --
    thank God the internet isn't a human right.
  19. vs. MySQL by dracocat · · Score: 2, Interesting

    Besides the MySQL rulez comments. How DOES MySQL compare with PostgreSQL. I must admit I was turned off of MySQL a long time ago as soon as I realized it didn't support transactions.

    However, I have never been happy with Microsoft's SQLServer and have heard rumors that MySQL has come along way since I looked at it 3 years ago.

    But what I don't know is where PostgreSQL fits into all of this. I mean, if it IS the better system, why do I only hear mySQL when someone is talking about open source databases?

    1. Re:vs. MySQL by Styx · · Score: 3, Informative

      MySQL performed better than Postgres, especially on select-only queries, until not too long ago. I did some profiling on a web-based app at work where MySQL outperforms Postgres, and it turns out, that only approx. 0.02% of queries are INSERTs or UPDATEs, so it seems MySQL still has an edge in some applications.

      Postgres also seems to have an (unfair, IMHO), reputation for being hard to set up.

      And yes, MySQL has come a long way in the last 3 years, and does support transactions now.

      --
      /Styx
    2. Re:vs. MySQL by PizzaFace · · Score: 2, Interesting

      MySQL is faster for simple reads, and therefore a better match for the read-mostly databases that back most websites. PostgreSQL uses versioning for concurrency control, so it scales better with write-often databases. PostgreSQL also has more programming features (triggers, stored procedures, etc.).

      But if you're looking for something to replace Microsoft SQL Server on Windows servers, PostgreSQL is probably not your best bet, because it's really a Unix database and still runs on Windows through a Unix-emulation layer.

    3. Re:vs. MySQL by glwtta · · Score: 3, Insightful
      Postgres also seems to have an (unfair, IMHO), reputation for being hard to set up.

      Oh yeah, Oracle just shines there. In any case, postgres 7.3 took me about 20 minutes to set up, don't know what everyone's bitching about.

      --
      sic transit gloria mundi
    4. Re:vs. MySQL by Admiral+Burrito · · Score: 4, Informative
      But what I don't know is where PostgreSQL fits into all of this. I mean, if it IS the better system, why do I only hear mySQL when someone is talking about open source databases?

      Because...

      • MySQL has a commercial entity backing it, that actually makes money selling commercial MySQL licences (the MySQL licence terms are kind of weird, "fully-viral GPL unless you pay us $$$"). This seems to have resulted in some marketoid-speak, which is unusual in the context of an open-source project. For example, "MySQL now supports transactions!" and various other "features", ignoring how fundamental such things are to a real RDBMS and should have always been a part of the design.
      • There are lots of people who don't understand why you would need "subselects" or "outer joins", and didn't know about "transactions" until they read about it in the mysql change log. And MySQL will be a real RDBMS Real Soon Now (tm) so there's no need to switch to anything else and besides you don't really need a real RDBMS anyway.
      • MySQL has a nice Windows installer.
      • PostgreSQL used to suck, once upon a time.
    5. Re:vs. MySQL by Jadrano · · Score: 2, Informative

      PostgreSQL is particularly good when you don't just store and retrieve data, but want to use complex queries, do a lot of calculations with the data, write your own functions etc. Not only is support for standard SQL more complete with PostgreSQL than with MySQL, PostgreSQL has many extensions that can be very useful. Using these extensions can, of course, mean that moving to another DB system will be difficult, but there are manuals how to port between Oracle and PostgreSQL (e.g. plpgsql and oracle pl/sql). Migrating applications that use extensions of the Microsoft SQL server would certainly be harder because there are fewer similarities than with Oracle.
      I don't have very much experience with MySQL, when I saw some time ago how few in-built functions it has and and didn't see an easy way for programming own functions, I moved to PostgreSQL. It's possible that MySQL has become better in that respect in the meantime.
      I mainly use PostgreSQL and Microsoft SQL server, and I'd say that from a programming perspective PostgreSQL is better for extensions. I'm not sure if newer versions of Microsoft SQL server now support writing your own aggregate functions and have got rid of the maximum nesting level in stored procedures, in any case none of this has been a problem with PostgreSQL for a long time.

      As has been mentioned, an important reason why PostgreSQL isn't mentioned as often as MySQL probably is that it doesn't run natively on windows.

    6. Re:vs. MySQL by jsong · · Score: 2, Insightful
      Postgres also seems to have an (unfair, IMHO), reputation for being hard to set up.

      Agreed. Whoever thinks that PostgreSQL is hard to set up has never set up Oracle!

      In the recent past, I have set up PostgreSQL on Linux, Mac OS X, and Win32/Cygwin. Setting it up on Linux and Mac OS X is an incredible breeze, it doesn't matter if you are installing from source or a package. It is only difficult to set up on Win32, and only because the user accounts and permissions are (sort of) separately managed across Win32 and Cygwin.

      And thank goodness PostgreSQL doesn't have that ridiculous TNS layer. If TCP/IP and DNS were good enough for Grandpa, they are good enough for me!

  20. isn't it cool... by ubiquitin · · Score: 4, Informative

    ...that the entire O'Reilly Practical PostgreSQL book was put online?

    I've spent so much time lately in the (relatively) flat-table world of MySQL that I had forgotten about inherited tables, subselects, constraints in table definitions, and oh yes, vacuuming. ;) Looks like it is time to revisit postgres, especially for some db-agnostic PEAR apps I'm building. For me, it's the subselects that really make it worth the effort.

    --
    http://tinyurl.com/4ny52
  21. Re:pfffttt.. by Graelin · · Score: 2, Funny

    Posts like this remind me of WHY my skills in database and application design are in such high demand....

    So what, it's still slow as hell.

    MySQL rulez!


    Yes yes, please keep thinking that Troll. I'm paid very well to clean up your messes.

  22. .. You are, but the real problem is... by Anonymous Coward · · Score: 5, Informative
    You can vacuum any time without shutting things down. You don't even lock a table thanks to the wonderful MVCC. But..

    The real problem with Postgresql, however, is that if you are doing lots of updates where the keys increase forever, the index files grow forever. You can, of course, drop and recreate them (which we do in a cron job), but in a real 24/7 environment you've got a real problem when your queries all turn into table-scans because the indexes aren't built yet.

    Here is some more information (seeIndex Maintenance? )

    The only option I know if is to have two sets of tables and swap between them.

    -- ac at work

  23. I guess Oracle didn't help in the transition by mangu · · Score: 2, Interesting

    Oracle, as most commercial DBMSs, doesn't let you export the database in SQL format. Of course, you can write scripts to do that, but it shows how the commercial companies are always trying to find ways to lock you in.

    1. Re:I guess Oracle didn't help in the transition by justins · · Score: 2, Interesting
      Oracle, as most commercial DBMSs, doesn't let you export the database in SQL format. Of course, you can write scripts to do that, but it shows how the commercial companies are always trying to find ways to lock you in.

      Who modded this up?

      There is no "SQL format" for "exporting databases." You'll need to write scripts in any case.
      --
      Now before I get modded down, I be to remind whoever might read this that what I am saying is FACT. - bogaboga
    2. Re:I guess Oracle didn't help in the transition by MadAhab · · Score: 2, Insightful
      sorry, but the guy's got a point. the most common open source databases have ways to export the data in the form of sql that can be used to re-create the database. that's not the same as a dump of, say, an oracle database. if you could do this from oracle, or sqlserver, it would be easier to convert from one type of database to another. they make this harder just to show you what a punk-ass bitch you are (and you are). of course you can write scripts to accomplish the same. they just make it a little more difficult to create friction; and that friction is called vendor lock-in.

      stop being such a ig-nant spinning motha focka.

      --
      Expanding a vast wasteland since 1996.
    3. Re:I guess Oracle didn't help in the transition by zjbs14 · · Score: 2, Interesting
      I don't think they're trying to lock anyone in, I just think they realize that generating thousands or millions of INSERT statements is a really crappy way to move a database. Using a specialized bulk extract/import tool is usually a lot easier and a lot faster.

      All of the major database have utilities to import/export data in user-defined formats, so I can't see that Oracle not providing an instant "generate sql script" command is keeping anyone from moving anything off of Oracle. Besides if you really want to do it, you can get free Toad. Works great.

      --
      No sig, sorry.
  24. Non-commercial? by mcoko · · Score: 2, Interesting

    Known mostly as the domain for non-commercial organisations, .org is the Internet's fifth largest top-level domain, with more than 2.4 million registered domain names worldwide.

    So Slashdot is Non-Commercial? I don't know. Is non-commercial the same as non-profit, is /. non-profit?

    How strict are they about that. You would think that they would be but I have not heard. Slashdot used to be free/non-ads (except for the one at the top) but now there is an add on every comment page unless you pay. Is that non-commercial?

    --
    www.fotoforay.com
    1. Re:Non-commercial? by stevel · · Score: 3, Informative

      As far as I know, there has never been any regulation as to who can and can't register a .org domain. The association with not-for-profits is a convention, not a rule. Same with .net, which initially was for ISPs and other network service providers.

      Nowadays, .org and .net are largely used by registrants who couldn't get the .com they wanted. (On the other hand, I have two .org domains registered for legitimate non-profits, a town band and a cat shelter.)

    2. Re:Non-commercial? by aardvarkjoe · · Score: 2, Funny

      ...is /. non-profit?

      Non-profit, no. No-profit, you bet.

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
  25. PIR transition details by shessel · · Score: 4, Informative

    The transition details can be found on the Public Interest Registry's Homepage. In short, they'll close the registry at 14:00 UTC tomorrow, transfer to Afilias's systems, and reopen the registrations on Sunday at 23:00 UTC.

  26. Re:I could be wrong, but... by DontPanicMMH · · Score: 2, Informative

    I was wondering the same thing myself.

    Over the past two years, I've spent a great deal of time working with postgresql with relation to an online game I've been helping to develop (Open Merchant Empires).

    We've been able to get good performance out of postgresql as long as we don't expect 24/7/365 availability. They've made great progress in making the VACUUMs less intrusive, but we've always ran into trouble if we don't impose on the database availability with a regular maintenance schedule (very regular partial vacuums which slow the database down considerably, semi-regular full vacuums which lock up the database, and occasional full rebuilds).

    I'd love to learn how they achieve the high availability I'd expect you'd need for a TLD database server.

  27. dispel which myth? by dan_bethe · · Score: 2, Insightful
    I guess we can now dispel the "untested in mission-critical applications" myth."

    Yeah. Or we could do that in regard to all the other mission-critical applications it's been in all this time! :)

  28. How to pronounce? by FireBreathingDog · · Score: 3, Interesting
    Will someone please tell me how the hell to pronounce PostgreSQL?

    Or are we supposed to pronounce it POST-GRE-SEE-KWEL? Or POST-GRES-CUE-ELL? Or POST-GRES-QUERY LANGUAGE?

    And where the hell did that name come from? Did they take "Ingres", and increment it (like how C became C++), thereby making it "Postgres"? Then "PostgreSQL" means "the better-than-Ingres query language"?

    I hate it when techies come up with names. It always ends up being something that's either stupid and meaningless, like C#, or self-referential and too-cute-by-half, like GNU. Recursive acronym my ass.

    1. Re:How to pronounce? by mangu · · Score: 2, Funny

      I agree, the name IS stupid. I just say POST-GRES. Well, anyhow, maybe it's a better name than "Edsel"...

    2. Re:How to pronounce? by loteck · · Score: 2, Informative
      as usual..

      everything has your answer.

      Along with the answer to, you betcha, everything else!

    3. Re:How to pronounce? by h3 · · Score: 2, Informative

      POST-GRES-CUE-ELL.

      They have an mp3 on their web site.

      I usually just call it "postgrez" or "pee-gee".

      -h3

    4. Re:How to pronounce? by phallstrom · · Score: 2, Informative

      First question of the faq...

      http://www.us.postgresql.org/docs/faq-english.ht ml #1.1

  29. Smoking crack... by NerveGas · · Score: 3, Interesting

    "untested in mission-critical applications"?

    You'd have to be a completely ignorant moron to believe that. A good number of large companies have been running PostgreSQL succesfully in mission-critical situation for *years*.

    It's been used in network-monitoring apps for deployment in military vehicles, $30 million POS systems, medical systems, ticketmaster, a good number of heavy-traffic web sites, and just about everything else you can think of.

    Anybody who told you it hadn't been tested was living long in the past.

    steve

    --
    Oh, you're not stuck, you're just unable to let go of the onion rings.
  30. Right tool, Right job by Anonymous Coward · · Score: 5, Insightful

    If I here those words again, I think my head will explode. I don't remember anyone saying to use a wrench for a hammer if you have both. When people argue these things, they are argueing that a tool is the right tool for a job. PostgreSQL is being argued to be a tool that can be used for enterprise jobs. Either confront that or not, don't just state the obvious. No one said PostgreSQL is the only database to use.

    I here this everytime a programming language is mentioned too. Either say Java can't do what perl can, or Java is slower than perl and back those up. Don't say Java is good and Perl is good because everyone knows that.

    I don't mean to take my frustrations out on you poor poster, it's just high time people realize that this is like argueing philips or flat-head. It should be a poll option because it's preference, not because there ever is a right or wrong database for a job. It's a choice. After this has been going for a while without problems, we can then proceed to choose PostgreSQL to save money or because we like it better than Oracle or DB2.

    It's as annoying as:
    1: In soviet russia, Vi>Emacs
    2: ?
    3: goatse.cx, "MOD PARENT UP"

  31. Re:Another victory for open source by glwtta · · Score: 2, Interesting
    but are you saying that Postgres is a better quality database than Oracle?

    "Quality" is a very nebulous term. There are things that postgres does better than Oracle. Often it's when Oracly is just overkill (usually by a long shot) and postgres is just easier to set up and manage. Also has neat features like regular expressions.

    The only reason I prefer Oracle to postgres (as a developer) for large(er) projects is that pgAdminII is just no SQL Navigator.

    --
    sic transit gloria mundi
  32. Re:I could be wrong, but... by JohanV · · Score: 4, Informative

    Yes, you are wrong, as of PostgreSQL 7.2 VACUUM can run without locking the table completely.

    Garbage collection is a problem every database faces. Due to ACID requirements it is pretty much (absolutely?) impossible to run a database that updates rows without having multiple versions of the same row on disk at some time during the operation. So at some point in time you have to get rid of that duplicate. You can choose to do that after commit of a transaction (or the last transaction for which the row is still visible), but that would potentially make every transaction slower. So in PostgreSQL the choice was made to do this at an administrator determined moment (and I presume that choice also was the easy one).
    In older versions of PostgreSQL VACUUM would lock the entire table and physically force all the valid rows to be rewritten consecutively and then reclaim the space at the end. This mode is still available as VACUUM FULL, but nowadays there is a new mode (sometimes called lazy vacuum) that only marks space safe to be overwritten. Subsequent updates/inserts will overwrite it eventually.
    Regular running of this command will eventually lead to some steady state where there is some x% of bloat in the table, but there is no significant amount of locking required.

  33. Recent benchmarks comparing PostgreSQL to MySQL? by Dan+Ost · · Score: 2, Interesting

    When I google looking for benchmarks comparing
    PostgreSQL to MySQL, I can't find anything more
    recent that June, 2001.

    I know that PostgreSQL has come a long way in
    the last 2 years, so I'm unwilling to form any
    opinions on benchmark information that is out
    of date.

    --

    *sigh* back to work...
  34. We put the ---- in dot-ORG by penguin_punk · · Score: 4, Funny

    Ok. I think I figured it out.

    Microsoft puts the "." in .CA

    Sun puts the "." in .COM

    PostgreSQL puts the "E_fatalError - Database error" in .ORG?

    I have a test on this tomorrow, so I just wanted to make sure.

    laugh.

    --
    HURD - Hurd's Under Research & Development
  35. Re:I could be wrong, but... by axxackall · · Score: 2, Informative
    You don't stop PostgreSQL server to run vacuum in 7.x versions - you can do it in background.

    What you'll really missed in PostgreSQL for 24/7 is a good replication. But they are working on it.

    By the way, are you sure you want 24/7/365? I think 24/7/52 will be more correct, no? I don't think that 7 years of uptime is a good idea when you want to upgrade your software (usually you stop/restart the service for it) about ever year.

    --

    Less is more !
  36. Re:Nice. But who is supporting? - PostgreSQL, Inc. by Anonymous Coward · · Score: 2, Informative

    PostgreSQL Inc. offers excellent support contract options, enterprise software additions (replication!), and traning, etc. for PostgreSQL. Check them out at:
    http://www.pgsql.com/

  37. As A Person Who Might Have Smoked Crack... by Petersko · · Score: 2, Funny

    ...I can tell you without question that none of the effects associated with crack include the forming of erroneous conclusions regarding the current state of database field testing.

    Marijuana, on the other hand, allowed me to accept such conclusions as valid, mostly because I was too lazy to doublecheck.

  38. Re:Fifth largest? by Jadrano · · Score: 4, Informative

    Unfortunately, I haven't found new data, but here is a list of January 2001.
    The top ranks are:
    1. .com: 21,174,751
    2. .net: 2,806,721
    3. .uk: 2,078,474
    4. .de: 1,732,994
    5. .org: 1,614,740
    6. .nl: 416,842
    7. .kr: 325,203
    ...
    The numbers have certainly changed since then, but perhaps the ranks are still similar. Maybe someone has found new data?

  39. Re:Recent benchmarks comparing PostgreSQL to MySQL by Sxooter · · Score: 2, Interesting

    The problem is it's hard to find a fair benchmark. Most SQL bencharks won't run on MySQL because it's missing so many features.

    Postgresql can be tested by the OSDB suite found on source forge. It does well. But the most important benchmark is how well it runs YOUR query load. And no one other than you can benchmark that.

    The real issue is how a database behaves under changing load conditions. How do both databases perform when you write once per second? What about 5 writes a second, 10 writes a second? Some database have serious contention issues between writes and reads.

    Postgresql uses MVCC to reduce the contention to about zero on things like content management systems and what not. Which means it behaves well as write frequency increases. Try it and benchmark it for your load, it's the only way you can actually know.

    --

    --- It is not the things we do which we regret the most, but the things which we don't do.
  40. Re:guess backups are not a concern by Sxooter · · Score: 2, Informative

    That is a bold faced lie. You sir, are a liar.

    pg_dump not only runs WHILE the database is up, it does so in such a way as to ensure completely transactionally pure backups (i.e. snapshots) with virtually no impact on performance.

    And they do so in SQL.

    If you don't know anything about a subject you should keep you mouth shut. You only convince people you're ill informed and ignorant when you post lies.

    --

    --- It is not the things we do which we regret the most, but the things which we don't do.
  41. Re:Why SQL for DNS? by kobaz · · Score: 2, Insightful

    Do you know many thousands of .org domains are out there? With /etc/hosts, when you go to look up a domain name, it loads up /etc/hosts, and checks, line by line if the domain is in there.

    Imagine that your /etc/hosts file has 50,000 hosts in it (which is NOT ALOT, considering the amount of existing domains out there). Now imagine the 2 billion people that are on the internet are hitting your /etc/hosts based nameserver to look up aolsucks.org.
    SQL servers, good ones, do table indexing and cacheing enableing lightning fast lookups even when there are hundreds of thousands of people accessing database (assumeing a fast enough server).

    DNS does ALOT more then just mapping names to numbers. If you are interested head over to the dns rfc over here

    --

    The goal of computer science is to build something that will last at least until we've finished building it.
  42. On competing SQLs and performance by The+Gline · · Score: 3, Insightful

    I run a text-chat site that is -- please don't lynch me -- based on Win2K and MS SQL Server. The site does about 10-12 DB transactions a second on a slow day and about 100-150/sec on a fast day. At peak hours we have something like 30% CPU usage on the average (it's a 700 Mhz box, not bleeding-edge).

    A friend of mine put someone in touch with me who was trying to build a vaguely similar system and was having no end of problems. Transactions were timing out left and right, and his machine was more than twice as fast as mine. From his experiences -- and from what I've seen in a lot of parallel setups -- there is a difference between being able to code something functional and being able to code something that functions intelligently. I'd learned a lot of ways to cut down massively on system overhead -- use stored procedures, turn off locks when they're not required, don't use transactions unless they're absolutely needed, etc., etc. -- and all of them add up and pay off.

    As far as PostgreSQL goes, it's probably going to depend on how good a job they do coding it into their system. If they do it well, I'd imagine PostgreSQL is gonna be quite solid. If they do it like idiots, not even the best database solution in the world -- not Oracle, nothing -- is going to save them.

    Heck, even Oracle is going to break if you try to fetch a billion rows at once; the trick is to find smarter ways to partition and subdivide the data, to cut down the amount of time needed for every little step on the way. (I found out that adding ONE index in my system sped things up by about 30% alone, an index I would not have realized I needed until I ran a performance profile.)

    Let's see how well they do before we sling tomatoes, OK?

    --
    Honorary Member of Jackie Chan's Kung Fu Process Servers
  43. Re:No shit. by mangu · · Score: 2, Informative

    I didn't say the data was locked into Oracle. What I said was that you cannot create an SQL file containing the data using just a *simple* *Oracle* command. I can write a one-line command that will dump the database into a proprietary Oracle binary file, but I cannot do that to dump the data to an SQL file. I *can* dump a postgres database to an SQL file using an one-line postgres command. That SQL file could be used (maybe a few small modifications would be needed) to import all my data into a MySQL database, for instance.

  44. Re:Speaking of .ORG... by quantum+bit · · Score: 2, Informative

    Check out DirectNIC.

    I don't work for them or know anybody who does, but I've had all my domains on there for a couple years (after getting fed up with Networ... uh I mean Verisi... uh I mean Network Solutions) and have been very happy with the price and performance. Quick and clean management interface.

  45. Re:hmm... by tealover · · Score: 4, Funny

    ...amusing when someone mispells...

    Is this real irony or Alanis irony?

    --
    -- You see, there would be these conclusions that you could jump to
  46. Overpricedacle by digitaltraveller · · Score: 3, Interesting

    One of the PostgreSQL developers is at Linux.conf.au right now. During his talk on Wednesday he mentioned this and that Oracle accused the .org registry guys of "criminial negligence" if they switched to PostgreSQL over Oracle. All I can say is: "HAH!" Feeling the pressure...

  47. benchmarks by Anonymous Coward · · Score: 2, Informative
    OK, I'll share some very vague and general benchmark results...

    I did an informal benchmark on "enterprise level" queries when PostGreSQL 7.2 came out, and found that PostGreSQL came within a third of Oracle's speed on hash joins and within half of Oracle's speed on sorts, both on DSS type queries. Not bad at all for free, but not a cost-effective replacement for Oracle either.

    From what I understand, Oracle stores numeric data in such a way that a straight byte-compare will return the proper order, and it looked to me like PostGreSQL was doing conversions for every compare. Oracle's hash joins are just mind-blowingly fast. Other operations are mind-numbingly slow.

    Note however this is meaningless; Oracle performs differently on different hardware (this was Tru64/Alpha stuff) and different versions (8,8i,9i) can perform very differently on the same hardware.

    There are lies, damn lies, and benchmarks.

  48. Re:Fifth largest? by farnsworth · · Score: 4, Funny
    here are the latest numbers of various tld registrations:

    1) .com ORA-00936: missing expression
    2) .net mySQL:Cannot Connect to Local mysql server
    3) .de Filemaker Pro: 813, Record Synchronization error on network
    4) .org jdbc:postgresql:postgres Exception caught 101, error: Network is unreachable
    5) .nl "errr, I think I have that number scribbled on that big wooden shoe..."
    6) .kr "ENLARGE YOUR PENIS!!!!"

    --

    There aint no pancake so thin it doesn't have two sides.