Java web application frameworks / architecture

T

Tom Anderson

Not any technical source.

Just the market.

I am not aware of any really big PostgreSQL installations.

It can be because all their CIO's are unaware of how good
PostgreSQL is or it can be because PostgreSQL is not a good
pick for the task.

I consider the last a lot more likely than the first.

How many CIOs have you met? I haven't met many, but the ones i have met
lead me strongly to consider the former a lot more likely than the latter.

tom
 
A

Arne Vajhøj

Sabine said:
Not making any claims. There's more evidence under
<http://www.postgresql.org/about/users> though.

Most of the companies are rather unknown.

And one of the users listed is so unprofessional
that it is embarrassing for them to have it on their web
site:

Open Source Projects
....
* LAMP (Linux/Apache/Middleware(Perl,PHP,Python,Ruby)/PostgreSQL)

Reality does not seem have caught on.
Yeah. And that's from where I got the impression that MySQL is not the
best open-source choice out there, in many cases.

You think that because MySQL is picked over PostgreSQL so much is an
indication that MySQL is not the best choice?

Arne
 
A

Arne Vajhøj

Lew said:
My biggest complaint with MySQL is its flouting of SQL standards. It
doesn't support SQL TIMESTAMP, for example - it has no datetime type
with subsecond resolution.

MySQL is rather bad when it comes to following SQL standard.

But for some reason people do not seem to think that it is
important when they chose Oracle DB.
While InnoDB does support foreign keys, you have to remember to use it.
I was on a project where the developers mandated InnoDB but the ops guy
mounted the production database as MyISAM. Oops.

I will not blame that on MySQL. I don't think you can find a database
that can not be fucked up by someone trying to do so.
I also don't like the confusing license scheme.

There is a GPL license with FLOSS exception. GPL is used by 100000+
open source projects.

And a commercial license which I will assume is rather similar to
other commercial licenses.

No need to be confused.
Postgres scales better for large data stores, from what I've read.

And you don't think that it surprising then that MySQL is behind
bigger sites than PostgreSQL?
I've a colleague who discovered through experiment that a well-tuned PG
installation outperformed well-tuned Oracle in one real-world
application with big-data requirements. Sure, it's a single data point,
but telling, especially in light of what I've read.

In my experience both MySQL and PostgreSQL are slower than Oracle DB.

Arne
 
A

Arne Vajhøj

Tom said:
How many CIOs have you met? I haven't met many, but the ones i have met
lead me strongly to consider the former a lot more likely than the latter.

I am sure bad CIO's exist.

But all the good ones will make a pretty good analysis before
deciding what database to use. It could be very critical for
the company.

Arne

to use
 
A

Arved Sandstrom

Arne said:
Sabine Dinis Blochberger wrote:
[ SNIP ]
You think that because MySQL is picked over PostgreSQL so much is an
indication that MySQL is not the best choice?

Arne

Considering all the other flawed software choices that people make, I
think the fact that folks prefer MySQL to PostgreSQL says absolutely
nothing about which one is better. This is no less true for developers
and other technical people than it is for the general public.

What's probably true in the case of MySQL/PostgreSQL/Oracle etc is that
the variance in the ability of developers and DBAs to write good
database access code and to tune the database completely swamps any
inherent superiority that one database may have over another in any
given situation. Except for the very best coders and DBAs.

AHS
 
L

Lew

Arved said:
What's probably true in the case of MySQL/PostgreSQL/Oracle etc is that
the variance in the ability of developers and DBAs to write good
database access code and to tune the database completely swamps any
inherent superiority that one database may have over another in any
given situation. Except for the very best coders and DBAs.

I've used all three database systems, as well as DB2, SQL Server, Red Brick,
Watcom, and a few non-relational-model systems. I have not used MySQL nor
Postgres for large-scale database work, but I have used Oracle and DB2 in such
environments.

The comparison between Oracle and Postgres (PG) to which I alluded upthread
was in an environment where experts in both tuned the heck out of both
systems, collaboratively, in the context of an actual application with quite
large tables. In that one instance, for that one usage pattern on a ~4 TB
database, PG outperformed Oracle by about 20% for queries, 30% for inserts,
60% for bulk inserts. This is not inconsistent with other anecdotes I've read
or heard. But it is only a single data point and not valid for a general
conclusion.

In my own personal experience I have found MySQL not to be as friendly or
robust as SQL Server, DB2, Oracle or PG. MySQL subselect syntax was weaker,
and its incompatibilities were harder to work around. From the many articles
I've read over the years, including many with performance statistics, PG
outperforms MySQL's InnoDB engine, and scales better to very large data sets.

I've not had near as much trouble with the incompatibilities of Oracle, SQL
Server or DB2 with the SQL standard. However, I find the maintenance aspects
of Oracle and DB2 more difficult than those of PG. For solo work, without
having a full-time fully expert DBA at hand, PG is much easier to deal with.

This is just my personal take on it. I would have no compunction recommending
PostgreSQL for any major database need. However, I would still research the
alternatives again, refresh my information, to ensure that the evidence is solid.
 
A

Arved Sandstrom

Arne Vajhøj wrote:
[ SNIP ]
I am sure bad CIO's exist.

But all the good ones will make a pretty good analysis before
deciding what database to use. It could be very critical for
the company.

Picking a database will be one of the easiest decisions a CIO ever has
to make - for 90% plus of the larger companies out there you can't go
wrong picking either Oracle, DB2 or SQL Server, and almost all the time
other characteristics of what the company does will make one of those
three a no-brainer choice. By no-brainer I mean that the CIO will have
no problems justifying his decision. Like they say in the industry,
nobody ever got fired for picking Oracle.

I'm going by share of revenue here. Money talks.

If CIOs were actually all that analytical or courageous I do believe
we'd see much more adoption of open-source RDBMS. A lot of CIOs believe,
without justification, that their applications are enterprise-scale and
rate the gold-standard in commercial databases, when in fact a single
instance of an open-source database would handle the application load
with ease. But I reiterate, no CIO ever got fired for picking Oracle.

Perhaps you and I have worked in different segments of the industry.
Because I haven't encountered too many CIOs that have a technical
background, so I question how the hell they are capable of making a good
analysis of what database to use. Perhaps you meant, they commission a
technical person to do the analysis for them.

AHS
 
A

Arved Sandstrom

Lew said:
I've used all three database systems, as well as DB2, SQL Server, Red
Brick, Watcom, and a few non-relational-model systems. I have not used
MySQL nor Postgres for large-scale database work, but I have used Oracle
and DB2 in such environments.

The comparison between Oracle and Postgres (PG) to which I alluded
upthread was in an environment where experts in both tuned the heck out
of both systems, collaboratively, in the context of an actual
application with quite large tables. In that one instance, for that one
usage pattern on a ~4 TB database, PG outperformed Oracle by about 20%
for queries, 30% for inserts, 60% for bulk inserts. This is not
inconsistent with other anecdotes I've read or heard. But it is only a
single data point and not valid for a general conclusion.

In my own personal experience I have found MySQL not to be as friendly
or robust as SQL Server, DB2, Oracle or PG. MySQL subselect syntax was
weaker, and its incompatibilities were harder to work around. From the
many articles I've read over the years, including many with performance
statistics, PG outperforms MySQL's InnoDB engine, and scales better to
very large data sets.

I've not had near as much trouble with the incompatibilities of Oracle,
SQL Server or DB2 with the SQL standard. However, I find the
maintenance aspects of Oracle and DB2 more difficult than those of PG.
For solo work, without having a full-time fully expert DBA at hand, PG
is much easier to deal with.

This is just my personal take on it. I would have no compunction
recommending PostgreSQL for any major database need. However, I would
still research the alternatives again, refresh my information, to ensure
that the evidence is solid.
My personal experience, also what I have read, and what I would
recommend, is largely in accordance with what you describe and state
above. In fact, at the consulting firm I work for, my colleagues and I,
when faced with the problem of recommending a software stack for a
client, usually start with the assumption of PostgreSQL as the RDBMS,
and then look for concrete reasons why that won't be suitable for the
specific scenario. Indeed, why it wouldn't be the best solution. Most of
the time we go with PostgreSQL.

AHS
 
A

Arne Vajhøj

Arved said:
Considering all the other flawed software choices that people make, I
think the fact that folks prefer MySQL to PostgreSQL says absolutely
nothing about which one is better. This is no less true for developers
and other technical people than it is for the general public.

This is the exact point of view that I don't believe in.

In general I believe that people make the choices that are
best for them.

And those products that does not deliver what the customers
want sit in the corner and think people don't know what is
best.
What's probably true in the case of MySQL/PostgreSQL/Oracle etc is that
the variance in the ability of developers and DBAs to write good
database access code and to tune the database completely swamps any
inherent superiority that one database may have over another in any
given situation.

True.

Arne
 
A

Arne Vajhøj

Lew said:
In my own personal experience I have found MySQL not to be as friendly
or robust as SQL Server, DB2, Oracle or PG. MySQL subselect syntax was
weaker, and its incompatibilities were harder to work around.

It is very difficult to evaluate claims as "not as robust",
"weaker sub select syntax" and "harder to work around incompatibilities".
From the
many articles I've read over the years, including many with performance
statistics, PG outperforms MySQL's InnoDB engine, and scales better to
very large data sets.

There are lots of such claims.

But it seems as if more big sites chose MySQL than PostgreSQL.

Arne
 
A

Arne Vajhøj

Arved said:
Picking a database will be one of the easiest decisions a CIO ever has
to make - for 90% plus of the larger companies out there you can't go
wrong picking either Oracle, DB2 or SQL Server, and almost all the time
other characteristics of what the company does will make one of those
three a no-brainer choice. By no-brainer I mean that the CIO will have
no problems justifying his decision. Like they say in the industry,
nobody ever got fired for picking Oracle.

I'm going by share of revenue here. Money talks.

If CIOs were actually all that analytical or courageous I do believe
we'd see much more adoption of open-source RDBMS. A lot of CIOs believe,
without justification, that their applications are enterprise-scale and
rate the gold-standard in commercial databases, when in fact a single
instance of an open-source database would handle the application load
with ease. But I reiterate, no CIO ever got fired for picking Oracle.

If company A picks Oracle and company B picks a free alternative and
both Oracle and the free alternative does the job, then B will
eventually force A out of the market due to lower cost. Either the CIO
get kicked out because the cost level is too high or he is out when
the company goes bankrupt.

No CIO ever get fired for picking IBM/Oracle/MS/whatever is one
of those myths that flourish among those that don't have to
fight the budget battles.
Perhaps you and I have worked in different segments of the industry.
Because I haven't encountered too many CIOs that have a technical
background, so I question how the hell they are capable of making a good
analysis of what database to use. Perhaps you meant, they commission a
technical person to do the analysis for them.

If it is a small org the CIO does personally. If it is a medium org
the CIO hire someone to do it. If it is a large org the CIO hire
someone that hire someone to do it. And so on.

It does not change that it is his/her responsibility and that
he/she will get the matter analyzed.

Arne
 
T

Tom Anderson

There are lots of such claims. But it seems as if more big sites chose
MySQL than PostgreSQL.

It seesm that way to me.

Most people choose Linux over FreeBSD. Is Linux better?

My theory is that MySQL became popular back when it was a simple,
lightweight database that you could install on your own computer and hack
against if you were a budding PHP lone wolf. PostgreSQL was seen as a big
beast, too complicated for a developer to run alone. Plus, maybe at that
time there was a performance advantage for MySQL in the simple, join-free
queries that dominate web apps ("fetch the row with this ID", "find all
the rows with dates in this range", "find all rows with titles matching
this pattern" - still the meat and drink of web apps today). Maybe there
still is. MySQL wasn't properly transactional, or manageable at the large
scale, didn't have serious integrity, couldn't do joins, and didn't handle
complex queries well. But for what those people were doing, that didn't
matter. It was simple, cheap, and fast enough.

So, MySQL blew up and became the standard database for that kind of web
app. Now, years later, maybe PostgreSQL is faster and easier and MySQL is
more capable and harder, but those dudes are now senior dudes, and have
raised a second generation of dudes, and MySQL is firmly ensconced as the
database of choice for FOSS-stack web apps.

tom
 
A

Arved Sandstrom

Arne said:
If company A picks Oracle and company B picks a free alternative and
both Oracle and the free alternative does the job, then B will
eventually force A out of the market due to lower cost. Either the CIO
get kicked out because the cost level is too high or he is out when
the company goes bankrupt.
[ SNIP ]

Sure, there's a midrange of company size and hence IT budgets where
something like Oracle can be acquired but it's not without pain.
Although depending on what priced version (and addons) of Oracle you
get, it's not so brutally expensive that you have to be a very large (or
even a large) company to afford it. The price lists are freely
available. To put it another way, if you're not going for the whole hog,
the TCO of your Oracle products may run you the cost of 1 or 2
developers, say, and if you have a developer staff of 25 or more then
that's not necessarily a huge deal. Probably not enough to put you at a
disadvantage wrt a company of roughly the same size that decided to go
with MySQL or PostgreSQL.

AHS
 
L

Lew

Arved said:
Sure, there's a midrange of company size and hence IT budgets where
something like Oracle can be acquired but it's not without pain.
Although depending on what priced version (and addons) of Oracle you
get, it's not so brutally expensive that you have to be a very large (or
even a large) company to afford it. The price lists are freely
available. To put it another way, if you're not going for the whole hog,
the TCO of your Oracle products may run you the cost of 1 or 2
developers, say, and if you have a developer staff of 25 or more then
that's not necessarily a huge deal. Probably not enough to put you at a
disadvantage wrt a company of roughly the same size that decided to go
with MySQL or PostgreSQL.

Well, trivially at no disadvantage wrt the company that chose MySQL.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,982
Messages
2,570,190
Members
46,740
Latest member
AdolphBig6

Latest Threads

Top