Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: What so special about PostgreSQL and other RDBMS?

Re: What so special about PostgreSQL and other RDBMS?

From: Volker Hetzer <volker.hetzer_at_ieee.org>
Date: Wed, 12 May 2004 13:14:39 +0200
Message-ID: <c7t0v0$sbv$1@nntp.fujitsu-siemens.com>

"Quirk" <quirk_at_syntac.net> schrieb im Newsbeitrag news:4e20d3f.0405110058.684e5968_at_posting.google.com...
> "Volker Hetzer" <volker.hetzer_at_ieee.org> wrote in message news:<c7o8i3$3bk$1_at_nntp.fujitsu-siemens.com>...
>
> > > > > > That's not true.
> >
> > > > > Yes it is.
> >
> > > > What was the value of this reply?
> > >
> > > What was the value of yours? Or this latest one?
> > A question is not an answer.
>
> And what was your reply?

I asked first.

>
> > > Yes, you have the right to be overcharged for work that may or may not
> > > not suit your needs by only _one_ vendor, and no right to go elsewhere
> > > when they fail, ignore you outright, stop supporting your application
> > > or vanish from the face of the earth. Have you actually read your
> > > contract or software licence?
> > Of course. See the end of this posting.
>
> > > It only protects the vendor, not you.
> > I've read the licence and done even more: I've used the software and tested the contract.
>
> Realy, care to quote the part of the Contract that Gaurantees you any
> rights?

http://oracle.com/support/index.html?policies.html

> By "tested the contarct" what you mean is you agreed to pay them
> completely on their terms and where satisified with the results they
> chose to give you.

So, in what way is it different from let's say, buying a cucumber?

>
> Have you tested alternatives?

The other example was buyig gcc support from cygnus. One bug, never got resolved in one year, consequently we cancelled support.

>
> > > > > > The right to modify is a red herring.
> > > > >
> > > > > Not if your application and the permenancy of your data is important.
> >
> > > > You didn't read my posting, right?
> > >
> > > You are one funny guy. Really. I'll bet you're the first guy in usenet
> > > to ever ask this question rhetoricly.
>
> > Nice way of avoiding an answer.
>
> Are so so stupid that you actually expect a serious answer that was
> obviously a
> hostile attempt to insult by way of a rhetorical question?
Ok, so for you explicitly: That was not a rhetorical question. Your response indicated youy didn't read my posting, or at least not the relevant part, so I wanted to check whether it was worth posting any more.

>
> > > > I don't *want* to create my own development
> > > > team competing with the original one. I don't want to merge my change back
> > > > into their code with every new release! I don't want to develop code and
> > > > then have them decide whether they condescend to incorporate it or not! I
> > > > want the authors of the software to do the coding based on what I'm willing
> > > > to pay for!
> > >
> > > You are dependent on their licence
>
> > I'm dependent on the author's licence regardless of which database I use.
>
> Yes, which is why you should choose one that give you a perpetual
> right to the source code, otherwise you are locked into a dependancy
> that may prove fatal to your application.
I start to repeat myself here. The right to the source code does not mean anything useful, see the part you quoted below.

>
> > It's just that some licences give me the illusion of being able to do
> > something while mainly giving me in reality the ability to shoot myself in
> > the foot or paying someone else to shoot me in the foot.
>
> Unsubstantiated bunk, if you have the source code, it is not magic to
> fix it, or extend it, just normal progamming.
Right. So, if I do CAD programming, why should I learn database programming only to support a dead database? It's much easier to migrate to another one.

Besides, have you considered that quite a few open source projects get abandoned because they have become unmaintainable? Anyone remembers hurd? Groff? What was the last gmake improvement? And if the authors throw up their hands, what can I do? Ask my boss to form a department for the beating of dead horses?

> Simple calling something
> an illusion does not explain why you condsider it impossible to
> actually change a program. Perhaps you should consider a different
> line of work.

Oh, it's pretty easy to change a program. Working through millions of lines of code and repairing it with less time or money than it would cost to migrate to another database is the trick. Convincing the customer to install *my* database version is another, particularly if three or four developers do this.

>
> > > because you built your own
> > > application on top of a platform for which you have no source code,
>
> > Same question: Did you read what I wrote?
>
> A better question: What kind of an idiot are you that, in the face of
> good sense, the best you can do is attemp insulting, evasive
> rehetoric?

It's not a better question. You keep bringing up that stupid source code argument totally ignoring the fact that it simply doesn't work, at least not for the money a normal support contract costs. And if support doesn't work, I still won't support it on my own.

>
> > I don't care about the source code, I care about product and support
> > quality. And, since I am not the developer of the software, nor is anyone else,
> > apart from *the* developers,
>
> As I said, my comments where ment *FOR DEVELOPERS* that is those who
> are developing *NEW* appliciations, and my advice is simple enough,
> despite your contortions: If your application is important to you, do
> not engineer a dependency on code you do not have access to.'
Do you develop for platforms other than linux?

>
> > anyone else is going to make a worse job than
> > them. So, I get the best support when I'm paying them and no one else.
>
> More unsubstantiated bunk, first of all, in many cases you can hire
> the original developers,

Yeah, exactly. A man year here costs about USD200000,-. A support contract with oracle costs me about a tenth of that. And even if I buy some incident based support contract, there is still no difference from an incident based support contract with oracle. As long as that guy exists and I can sue him into doing his job I don't need the source code (he needs) and otherwise I have no one to replace him.
But thanks for acknowleding that reliable support costs money.

> regardless of your right to the source code,
> secondly, by hiring the "Copyright Holders" you *ARE NOT NECESSARLIY
> HIRING THE DEVELEORS*, who may not even be with the company anymore,
> in fact you are often hiring some peon who they scooped of the
> consulting market 5 minutes before sending him to your office as an
> certified solutions prodiver or whatever idiotic buzzword whey have
> for their unskilled labour.

Try it. Besides, remember, the company has an interest in providing support because they live off it.

>
> And finaly, it is a falalcy to say that someone will do a worse job
> simply because they are not the original developer.
So, if I pick some average application programmer off the street, how long do you think it takes before he can start smoothing out bugs in the postgres optimizer?

>
> > > and no right to modify, you then also have no leverage with the vendor
> > > of the orginal software.
> > >
> > > You have no rights at all, wether or not you are willing to pay.
> > Read oracles licence some time. There it says very clearly what
> > you get if you enter a support agreement.
>
> But it stops short of guaranting that your apllication will actualy
> work,

Of course they don't offer that. But they offer to put effort in it. And they are dependent from me for my money.

> or that your existing version of the software will be supported.
They provide upgrades and desupport dates. Ok, they do what I pay for.

>
> In anycase, I am not arguing agianst using Oracle, as I said, if
> Oracle suits your needs and you think it's worth the money, use it,
> however, my advice is that if you do develop an application, write
> your code in such a way that you do not depend on Oracle, but can
> easily switch it over the the greatest extent possible.
Why "the greatest extent"? That costs me more time and money and customers that it's worth. Just look at informix to see how it goes when a db disappears from the market: They had a big market share, market share dwindled, they got weak and sold themselves to ibm because that's better than going bancrupt. Now IBM handles the migration to db2 and supports me as application developer in porting my app to db2. This is much better than handing me the source code and telling me that from now on I have to develop all the new features and fix bugs on my own or simply buy a new db and do the migration on my own.

>
> I have no idea why you are insisting on jumping up and down like this
> is crazy talk, the only plausible theory is that you get some kind of
> thrill out of embarassing yourself.

Where do I jump up and down?

>
> > > I dunno, because you're culturaly issolated and have a poor
> > > imagination?
>
> > No, it's because the phrase "elegant coding" is just as empty.
> > Or as the phrase "the one true god" uttered by people of
> > different religions.
>
> This is just stupid, elegnt coding is hardly as unatainable an ideal
> as you seem to be conviced, in fact in this specific case it's a
> simply matter of using a standard wrapper function throughtout your
> aplication to access your data rather than using proprietary bindings
> throughout your application, if your application is sufficently
> complicated, perhaps a data abstaction object might be usefull for
> this function, perhaps not, if you use any non standard features of
> your database server, then write some additional functions as wrappers
> for these. It is anything but rocket science.
So you have defined "elegant" as "abstraction" and expect the rest of the programmers to agree that that's it? Thanks for solving that problem for the rest of the world.

>
> > > > For db computing, reducing server load is the important thing.
> > >
> > > No, it is not, in most cases CPU is not the most limited resource.
> > >
> > > > Interoperability
> > > > typically means primitive, network/db intensive sql.
> > Yup. Which, in a well configured db is CPU load because
> > caching, indexing and db specific sql takes care of the i/o load.
>
> What about the human and financial load? As in the load on the DBA,
> inhouse developers, consulting budgets and application support staff?
The load on the DBA depends on the problems the application makes. That typical increases if the application ignores load reducing features for the sake of being generic. This creates an excessive amoung of simple queries and lots of network traffic. Right now we have huge problems getting an application to work properly that claims to support mysql and oracle. They could have done half the app in PL/SQL and saved 90% of the network and client load.
Also, if the database is not the standard one (because you have fixed/improved it) I have, at the worst, maintain two independent installations, at best, two independent update cycles. Developers are constrained by (among other things) the load they are allowed to put on the db. That's a business decision. As for consulting, we pay a flatrate for db support, so we unload as much of our problems on the oracle people. Works fine. Ditto for support staff. Our users have oracle, so the more we make the db do the less problems we have in our own code.

>
> > Nevertheless, I concede, it *is* possible to have such a
> > horribly configured system that i/o load becomes an issue. It's also
> > possible to have a database that permits so few actions
> > that the dba can't do anything about a badly written app.
> > fortunately, oracle is different.
>
> > > No, interoperability means abilty to integrate applications in a
> > > heterogeneus environment. It means standards and flexibilty.
> > So? What's more "standardised" about mysql's socket interface than
> > about oracles OCI or ESQL?
>
> Are you having a nightmare in which we are dicussing the various
> merits of MySQL versus Oracle? Please follow your own advice and read
> this thread again so that you might figure out what is it we are
> actually taking about.

We are talking about open source versus commercial databases. I picked those two as examples because I have worked with both of them.

>
> > > > > > If it's important it must not matter whether one tries to
> > > > > > access the data from a local or remote machine.
> >
> > > > > Interesting that you believe that this can not be accomblished with
> > > > > network security.
> >
> > > > Yes. Now you figure out why.
> > >
> > > Because you don't know what you are doing maybe?
>
> > Wrong. Try again.
>
> The more you talk, the clearer it is how right I was.
>
> > > Oh wait, you don't
> > > need to, after all, you have decided to pay a vendor to know for you,
> > > I remember now.
> > Right. The alternative is not paying anyone and trying to figuring out the
> > source code on my own, right? Or paying someone else who starts
> > from scratch too?
>
> More straw men and red herrings. If you are a Developer, which is who
> my comments are addressed to, it is your responsiblilty to your users
> and clients to know how your application works and to be able to
> support it without allowing some third party to hold them hostage.
No one holds anyone hostage. I let people do what they are good at. I'm ok with application programming in the CAD world. Oracle (or IBM, or microsoft) are good at programming databases. So, I profit from their expertise by being able to provide a better application than if I had to do db development (or fixing) as well. So far no one has complained.

> > Care to elaborate? An insecure network does not mean that someone can
> > log on to the database server from anywhere but the console screwed onto
> > it. And securing the listener (in case of oracle) is part of the database
> > configuration.
>
> If the above is true, that someone can only access any of the devices
> on your Database server via the local console, then your network *IS*
> secure

one can of course log on to the database. Via the listener and all the stuff. In theory from an unsecure network. So, db security is not network security, because all the stuff of protecting data from different users needs the cooperation of the database.

> This is what I'm trying to say, that network security comes first,
You can have a secure database within an insecure network.

> because Database security can only depend on it, not being able to
> actualy protect devices, which is the burden on the OS and networking
> environment.

The os protects devices, not the network. Or, daring to think the unthinkable, do you mean that you consider it ok to have database data on nfs mounts?

>
> Once again, It must be assumed that your consternations to contend
> this point are some weird form of self-flagilation.
>
> > > > Right. You show me how do convert VENUS chip designs into Synopsys
> > > > without going into a museom for the original hardware and getting all
> > > > the versions in between.
> > >
> > > What does this have to do with "Self Contained, Self Describing, Human
> > > Readable" files that can be read on any system past or present?
>
> > It has to do with permanency. Try to read what you quote.
>
> What does reading text files have to do with Chip design?
Because some tool will have to parse the text and create the chip out of it. This tool typically costs in the range of USD100000-200000 for a synopsys ASIC compiler. You need the same tool because any other tool creates totally different designs, ignores the original constraints and rules and uses a different library which may even force a complete redisign. Compared to that, a database migration is truly a breeze.

> I can read
> text files I created on my Apple ][, and no, I do not have the orginal
> hardware (well maybe my mom does somewhere in her basement).
Not all textfiles are notices for you to read.

>
> Try to avoid making an ass of yourself with further pretentions.
>
> > > tell me, how much do you know about my
> > > experience,
>
> > What your arguments tell me.
>
> Which ones? That abstracting access to suspect dependencies is a good
> idea?

That elegance is abstraction.
> That database security is secondary to network security?
Yes.
> That
> one should keep archives in a format that is likely to be readable
> forever?

Yes.
Those are the tree main reasons. The fourth one is your persistent belief that the right to the source code is of value.

>
> All these things come from experience,
So, what migrations have you done so far? Right now I'm in the process of doing two, one boing our board design toolchain, with plenty of data translation and the other a business flow app. So far we've spent at least four man years on the CAD flow and it's far from over. As for the other, try to imagine having a small busines flow tool and then introducing SAP companywide. And we get migration support from the new vendor. Believe me, a database migration is *EASY* compared to that. Even if I hardwire OCI calls into my c-code and then switch to ODBC or something.

> your attempt to question my
> experience, only show that you are unable to formalute an actual
> argument, so you try and discredit the arguer instead of the argument.
I did. You just didn't understand it.

>
> > > and why do you feel that talking about _me_ is a response
> > > to my argument?
>
> > Because your argument isn't backed by anything. Give me some
> > substance and we can talk about it.
>
> Oh please, my argument has been presented well enough, attacking me
> just shows you can not defend your own, that is if you actually had
> one.

You might have noticed that you got responses from different people whereas you are the only one who thinks my arguments are rubbish. Now, statistics is not fact, but it's evidence and should get you thinking.

>
> If my argument was not backed up by anything it would easy enough to
> refute it without attempting to insult me,
I don't insult you I'm trying to get through to you. Reasonable arguments didn't work.

> > All I've hear so far is the
> > usual open source rethoric about me or someone else being able
> > to magically support a product in a few days or weeks after the
> > original developers have abandoned it, or me.
>
> These must be voices in your head that you are hearing. Since my
> argument have been quite clear and even sumerized several times.
Yes. The right to source code balances nonexisting support and buying support for a open source software (instead of trying to fix things oneself) is somehow better than doing the same with commercial software. Did I leave out anything important?

>
> Your arguments amount to the metaphysical belief that only the
> copyright holders of your favourite proporiety software know how to
> program,

No, that they are the only ones that should be allowed because they are the only ones that can take responsibility.

> that the very concept of good programming is an illussion,
No, it's just that so far no one has found out what it is, because despite all the attempts software still is not substantially more stable than software written 30 years ago.

> and therfore the only way forward is to make yourself both tehnicaly
> and legaly dependent on them as much as possible.
You forget that they depend on me. Namely, on my money.

>
> > > > > If you have the source code, you are the developer,
> >
> > > > Wrong. I am the user, t.
> > >
> > > Oh, well then I guess we have nothing further to discuss, my comments
> > > here where meant for actual developers.
>
> > So, oracle people should further develop oracle and mysql people
> > mysql. Did I get this right?
>
> No, that's not right, that's not even wrong.
So, what is it?

>
> (with applogies to Wolfgang Pauli)
>
> Application developers should avoid locking themselves in to external
> dependencies, either by not using products to which they have no right
> to the source code, or abstracting access when they do use such
> products. Simple.

There it is again, this source code right thingie. And you complain about me getting rude.
Again: The source code is no guarantee of fixed bugs, much less improvements. It's not even what I want. I also can go and tinker with the airbag of my car if I think it's broken, I don't do that either but go to a repair shop. And if you are worrying about expiring licences, for many products (purify and our oracle installation spring to mind) you get permanent licences and pay yearly for support, so I can still use the app when the vendor goes bust. And before you come again about the source code I can fix and improve, or pay someone to do it, I won't because that would be wasting company money and that would be because a migration is cheaper than tinkering with the old software and it wouldn't lose us customers either because customers don't like dead software.
When we figured out that our new CAD tool doesn't support oracle 9.2 we gave them a ding behind the ear and, see, the next release, out in two months supports it and til then we got a workaround.

>
> And having right to the source code does not mean that the program is
> 'open source,' as you can purchace such a right for propretary code,
> as is common for libraries.

And still, if something goes wrong, I file a service request. And if the company does ceases to offer the product I change company.

>
> Of course, when the program _is_ open source, you are guaranteed that
> right.
>
> > > You have no such right, ever, the only right you _can_ have is the
> > > right to modify it yourself or contract someone to do it. Please read
> > > your licence.
>
> > "Assistance with my SRs 24 hours per day, 7days a week". Practically I
> > usually get two or three guys working on a typical SR of mine, depending on
> > how log it takes. Without a contract I'd get a 'buzz off, I'm doing my exams > this month'.
>
> "Assitance" only means that they will provide someone whose time they
> can bill you for,

As I said, we pay a flatrate.

> not that anything will be accomplished.
Then they lose money if they don't accomplish anything.

> Many large companies, and profesional develpoers provide source
> licences and/or support open source products, including the largest
> computer company in the world, IBM.

Yep, so I can buy support, mess up the code I've access to and let IBM sort it out, is this what I get by using a IBM supported mysql? If not, what's the difference to buying db2 support? (One thing more: No, if IBM abandons mysql I'm still not taking on the support task, ok?)

Greetings!
Volker Received on Wed May 12 2004 - 06:14:39 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US