Hi Felipe,

This is kind of diverging from Tomcat, so further exchanges should probably
be offline.

I'm not sure what an FK is but I presume SP is stored procedure.  Yes it has
all of it, subqueries, views, domains, SPs, triggers, full transaction
support, SQL92 conformance, etc.  The JDBC driver does not support some
features like two-way traversing of result sets, but you can usually work
around that stuff with stored procedures if necessary.

I suspect that in a Tomcat/JDBC environment the bottleneck in speed is
rarely going to be the database.  That would seem to suggest that, unless
it's a real dog, any decent SQL database is going to work OK for you.

Search speed on a large database and other factors such as maximum DB size
will be more of a factor.

All I can say from personal experience is that I was using a Java based SQL
database and switched to Firebird to speed things up, and got about a 10X
speed increase.

As for speed and loading capability, Firebird was originally designed as a
mini-computer database supporting lots of simultaneous users.  I've heard
that MySQL is a little faster but it doesn't handle heavy loads as well, and
it's not as safe because the designers cut corners for speed.  Others
dispute that.  The MySQL web site shows MySQL killing Postgres, but that's
to be expected.  Any clever programmer can make an SQL benchmark that they
know will smoke the competition.

My databases are all small, a few thousand records at most, and searches are
instantaneous.  I don't know what Firebird's performance is for DB's with
lots of records, but because of its mini-computer roots, I suspect it is
fast.  I saw a post by one guy who was searching 50,000 records per second
with a Java app, don't know the specs on his server or DB, though.

One thing I've noticed about MySQL is that many of the administration tools
seem to be PHP based.  I'm running Tomcat so I don't have to have CGI and
PHP on the server, so they aren't attractive to me at all.

There are also tons of Perl based tools for MySQL and there is a DBI Perl
driver for Interbase/Firebird.  So Perl based tools should work on most
platforms.  Most of the non-Perl non-PHP tools for Firebird are Windows
based, but they let you connect directly to the DB over the net without an
intervening web server.

The speed results I've seen are JDBC based and are affected somewhat by
which JDBC driver you use.  But since we are talking about using these
databases with Tomcat, that's OK I guess.

On an 800 MHz Duron running Linux and using Java and a JDBC driver about
1,000 records per second could be inserted, and about 1,300 records per
second could be read.  That was with the Java program on the server machine
which is reasonable in a Tomcat environment.  Speeds were between 2/3 and
1/2 when the Java code was executed on a remote machine over the net which
would be analogous to Tomcat and the database running on different servers.
I have no idea how that compares to any other database under the same
conditions.

As I understand the saga, Interbase (Firebird's origin) started life as a
mini-computer version of DBase II.  Ashton-Tate (DBase owners) liked it and
bought the company.  Borland liked Ashton-Tate and bought the company.
Borland used (and still uses)  Interbase as the database engine behind
Delphi.  Borland sold (and still sells) Interbase as a standalone product
too, but during one of their down swings, they decided that they didn't want
to be in the database business.  So what the heck, they open sourced it and
the programmers went out on their own and started IBPhoenix (InterBase
rising from the ashes, get it?).

Then Borland decided that they didn't want to let Interbase go after all,
but the horse was already out of the barn.  So they could only make new
stuff proprietary.  Voila- Interbase 6.5.  Since Borland owned the Interbase
brand name, IBPhoenix changed their database's name to Firebird.  They have
released Firebird versions 0.9.4 and 1.0 and are close to releasing 1.5.

 Here are a few links you might find helpful.

Simple Firebird docs:

http://www.xlprueba.com.ar/ib/firebirddoco.pdf

Features and benefits (Interbase 6.0, essentially the same as Firebird 1.0):
http://www.borland.com/interbase/pdf/ib6_feaben.pdf

IBPhoenix page:

www.ibphoenix.com

Rick


----- Original Message -----

>   I'm using postgresql and I'm happy with it. Feature-wise, how firebird
> stands? Got FKs, SPs, subqueries, all of it? It's fast? I'm pretty
> curious about it :-)
>
> On Tue, 2002-09-24 at 19:35, Rick Fincher wrote:
> > Hi Keith,
> >
> > I've been using Firebird and the JayBird JCA-JDBC driver and JSP.
Firebird
> > is open source and a complete SQL 92 DB.  It was spawned from Borland's
> > Interbase 6.0 when it went open source, so it's commercial quality.
> > Interbase has been around for nearly 20 years as a commercial product,
so it
> > is rock solid.
> >
> > Firebird is on SourceForge.  The web site for the outfit that does most
of
> > the Firebird development is: www.ibphoenix.com.  They have a list of
Fortune
> > 500 companies using it on the web site and a list of sites you can
browse to
> > see it powering web sites.
> >
> > Support contracts are available if that's important to you or your
> > management.
> >
> > There are a number of commercial sites listed offering hosting if you
want
> > somebody else to run your web apps and Firebird database for you.
> >
> > It's very stable.  I've been running it for a couple of years on a Sun
> > server without a crash or lockup.  I've never had the database become
> > corrupted even  when some bonehead forgot to shut down the database
before
> > killing the machine.
> >
> > Firebird comes with a nice watchdog process that monitors the DB.  If
the DB
> > process dies for any reason other than a normal shutdown the watchdog
> > restarts it.  I've intentionally killed the DB process multiple times to
> > simulate a failure and the watchdog always restarted it with no loss of
> > data.
> >
> > A Tomcat session doesn't like that very much because it links to the
> > database for user authorization and Tomcat doesn't recover when the DB
> > restarts.  I've been meaning to write a script that monitors the
Firebird
> > process ID for a change, then restarts Tomcat but I've never bothered
> > because Firebird never dies.  Mind you, this is on a Solaris server so
you
> > may not be so lucky on other OS's.
> >
> > You can also shadow the database, i.e. run two copies of the database
file
> > simultaneously on two different disk drives.  If one drive dies, the DB
> > continues to run on the remaining drive.
> >
> > It supports stored procedures, blobs, clobs, auto-incrementing keys,
> > security roles, etc., etc.
> >
> > Borland subsequently decided to make Interbase 6.5 un-open source, so
> > Firebird and Interbase have begun to diverge, but most tools still work
for
> > both.  There are 5 or 6 decent database creation/administration apps
> > available.  Most are freebies, a few commercial.
> >
> > You can run the backup/restore utilities in these programs to migrate
the DB
> > files between OS's.  For example, you can run a backup utility on
Windows to
> > read a DB file over the net on a Sun Solaris server, then restore to a
> > Windows server and subsequently run the database file on a Windows
system.
> >
> > The JCA-JDBC driver (JayBird) features internal connection pooling,
which is
> > nice for standalone apps, or if you can't figure out DBCP :-).
> >
> > It can be used with JBoss or other J2EE containers if you use the
JCA-JDBC
> > driver.
> >
> > The DB is written in C++, so it's fast.  It's available precompiled for
most
> > platforms including: Linux, Windows, Solaris (sparc and X86), FreeBSD,
Mac
> > OS X, HP/UX 10 and 11, and now WinCE.
> >
> > Installation is a snap compared to Oracle.
> >
> > There are 64 bit versions for Solaris and Linux in case you nead REALLY
big
> > databases.
> >
> > I've used Firebird and the JCA-JDBC driver with DreamWeaver UltraDev to
> > knock out quickie web apps with SQL database access in a few hours
without
> > writing a line of code.  The driver works with most tools that accept
> > external JDBC drivers.
> >
> > There are active newsgroups to support the DB and the JCA-JDBC driver.
The
> > developers monitor these so the info is very good.
> >
> >
> > Rick
> >
> > > > -----Original Message-----
> > > > From: Keith Pemberton [mailto:[EMAIL PROTECTED]]
> > > > Sent: Tuesday, September 24, 2002 4:39 AM
> > > > To: [EMAIL PROTECTED]
> > > > Subject: So what database and script language do you use?
> > > >
> > > >
> > > > Hi everyone...
> > > >
> > > >      I have been trying to use MySQL and JSP,Servlets to interact
with
> > > > my tomcat server.  So far I have had a lot of frustration and little
> > > > luck.  Anyway, I was just wonder what the majority of ppl are using
as a
> > > > database and scripting language.  Your input is much appreciated!
> > > >
> > > > Keith
> Felipe Schnack
> Analista de Sistemas
> [EMAIL PROTECTED]
> Cel.: (51)91287530
> Linux Counter #281893
>
> Faculdade Ritter dos Reis
> www.ritterdosreis.br
> [EMAIL PROTECTED]
> Fone/Fax.: (51)32303328



--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to