Subject: FW: Open Source Database Programming Recommendation.

From: "Tzahi Fadida" <[email-masked]>
Date: Sun, 31 Oct 2004 23:28:50 +0200

Because of the lack of good answers, I am sending this here(the mail below).
(even though most of the hackers-il list is also on linux-il)
maybe a hacker perspective will help.
I was recommended by someone who messed with optimizers
to use postgreSql.
However, seeing all the fuss about mysql I am tempted to use it.
Mysql is the new rising star since SAP and other large companies
are spreading their wings around this and the algoritms needs all
the publicity it can get.

Something I didn't mention earlier is that everything will probably be done
as part of my thesis (so I don't get paid :), but I want to do a good job.
10x.

Regards,
	tzahi.

-----Original Message-----
From: [email-masked] [mailto:[email-masked]]
On Behalf Of Tzahi Fadida
Sent: Saturday, October 30, 2004 3:18 AM
To: [email-masked]
Subject: Open Source Database Programming Recommendation.

Hi all,
I need to implement some new algorithms for JOIN operations
, Ranking, etc...
I was wondering if anyone can recommend an Open Source Relational Database 
that would be the easier to work with Programming wise. 
A widely used DB is preferable so the algorithms will get more publicity. 
By easier I mean, for a one person to understand the jungle of code that 
must be there and also it would be nice to get design plans that would 
allow more orientation. 
Another nice advantage would be success stories and examples.

I would have to touch the query processing engine and 
the optimizer component to make better query execution plans for 
the algorithms and even the size of blocks the DB uses for the relations. 
I would also have to touch the run-time engine since the DB still doesn't 
know some of the operators in the new algorithms and I need to break 
away from the traditional n-way to diactic way plans.

I don't care about transaction considerations at this time since the
algorithms 
are all read only from the data.

Regards,
	tzahi.

WARNING TO SPAMMERS:  see at
http://members.lycos.co.uk/my2nis/spamwarning.html

=================================================================
To unsubscribe, send mail to [email-masked] with the word
"unsubscribe" in the message body, e.g., run the command echo unsubscribe |
mail [email-masked]

---

From: Tzafrir Cohen <[email-masked]>
Date: Mon, 01 Nov 2004 10:24:08 +0200

> as part of my thesis (so I don't get paid :), but I want to do a good job.

SapDB/MaxDB and MySQL are two different programs. MaxDB doesn't seem to
be used by so many people. MySQL is more useful in the lower ends, where
there shouldn't be many JOINs in the first place.

If visibility is what you're after, PostgreSQL is probably the first choice. 

Someone else also recommended Firebird.

Have you reviewed smaller database engines, BTW?
SQLite, picosql, and others.

For a more comprehensive list:
http://freshmeat.net/browse/67/

-- 
Tzafrir Cohen                       +---------------------------+
http://www.technion.ac.il/~tzafrir/ |vim is a mutt's best friend|
mailto:[email-masked]       +---------------------------+

---

From: HANANE SBAI <[email-masked]>
Date: Mon, 1 Nov 2004 11:04:17 +0100 (CET)

thaks for message i dont use your programme beaucose i
not endresstent english  "tkhnk you"
--- Tzafrir Cohen <[email-masked]> a écrit : 

---------------------------------
On Sun, Oct 31, 2004 at 11:28:50PM +0200, Tzahi Fadida
> as part of my thesis (so I don't get paid :), but I
want to do a good job.

SapDB/MaxDB and MySQL are two different programs.
MaxDB doesn't seem to
be used by so many people. MySQL is more useful in the
lower ends, where
there shouldn't be many JOINs in the first place.

If visibility is what you're after, PostgreSQL is
probably the first choice. 

-- 
Tzafrir Cohen                      
+---------------------------+
http://www.technion.ac.il/~tzafrir/ |vim is a mutt's
best friend|
mailto:[email-masked]      
+---------------------------+

Yahoo! Groups Sponsor  
Get unlimited calls to
 	
U.S./Canada

---------------------------------
Yahoo! Groups Links

   To visit your group on the web, go to:
http://groups.yahoo.com/group/hackers-il/
 
   To unsubscribe from this group, send an email to:
[email-masked]
 
   Your use of Yahoo! Groups is subject to the Yahoo!
Terms of Service.

		
Vous manquez d’espace pour stocker vos mails ? 
Yahoo! Mail vous offre GRATUITEMENT 100 Mo !
Créez votre Yahoo! Mail sur http://fr.benefits.yahoo.com/

Le nouveau Yahoo! Messenger est arrivé ! Découvrez toutes les nouveautés pour dialoguer instantanément avec vos amis. A télécharger gratuitement sur http://fr.messenger.yahoo.com

---

From: "Tzahi Fadida" <[email-masked]>
Date: Mon, 1 Nov 2004 22:04:58 +0200

> > Because of the lack of good answers, I am sending this 
> here(the mail 
> > below). (even though most of the hackers-il list is also on 
> linux-il) 
> > maybe a hacker perspective will help. I was recommended by 
> someone who 
> > messed with optimizers to use postgreSql.
> > Something I didn't mention earlier is that everything will 
> probably be 
> > done as part of my thesis (so I don't get paid :), but I 
> want to do a 
> > good job. 10x.
> 
> SapDB/MaxDB and MySQL are two different programs. MaxDB 
> doesn't seem to be used by so many people. MySQL is more 
> useful in the lower ends, where there shouldn't be many JOINs 
> in the first place.

hmm... that seems to be true but they say in their site that the new
versions
can handle enterprise data which seems to imply to me, dealing with many
tables. 
btw, I need to handle joins of many many tables at one query.

> If visibility is what you're after, PostgreSQL is probably 

I don't understand something there, they talk about something called genetic
query
optimization. this doesn't sound like the traditional optimizers and I am
not sure
it will do for me. i.e. research is needed to check that. it seems from just
lightly
reading the material that it doesn't realy matter but you can never tell.

> Someone else also recommended Firebird.

well, firebird is in transition to version 2 so I am not comforatble to work
with them.

> SQLite, picosql, and others.

the smaller ones are not what I aim for because of the visibility issues.
also, I need good optimizers because I work with joins which could take
exponential
time to finish (the main problem with joins).

> ------------------------ Yahoo! Groups Sponsor 
> --------------------~--> 
> $9.95 domain names from Yahoo!. Register anything. 
> http://us.click.yahoo.com/J8kdrA/y20IAA/yQLSAA/saFolB/TM
> --------------------------------------------------------------
> ------~-> 
> 
>  
> Yahoo! Groups Links
> 
> 
> 
>  
> 
> 
> 
>

---

From: Arik Baratz <[email-masked]>
Date: Tue, 2 Nov 2004 03:18:08 +0200

> time to finish (the main problem with joins).

Tsahi,

Can you give an example of Join that takes exponential time? I can't
think of one, all the joins I ever wrote finish in polynomial time.

-- Arik

---

From: "Tzahi Fadida" <[email-masked]>
Date: Tue, 2 Nov 2004 19:23:59 +0200

they maybe finish in polynomial time but scientifically the O complexity is
exponential. for example. if I have N relations with 2 tuples each and they
all connect
with a JOIN, you get 2^N in the output.
btw, many time you will see in papers a polynomial time joins. it can happen
if they measure the output as is, I.e. polynomial in the input-output. so
even
if the output is exponential the measure is polynomial. i.e. the algorithm
itself
runs in exponential time.

However I myself am concerned with a series of outer joins which are even
worse.

Regards,
	tzahi.

> From: Arik Baratz [mailto:[email-masked]] 
> Sent: Tuesday, November 02, 2004 3:18 AM
> To: [email-masked]
> Subject: Re: [hackers-il] FW: Open Source Database 
> Programming Recommendation.
> 
> 
> 
> > the smaller ones are not what I aim for because of the visibility 
> > issues. also, I need good optimizers because I work with 
> joins which 
> > could take exponential time to finish (the main problem with joins).
> 
> Tsahi,
> 
> Can you give an example of Join that takes exponential time? 
> I can't think of one, all the joins I ever wrote finish in 
> polynomial time.
> 
> -- Arik
> 
>

---

From: Shlomi Fish <[email-masked]>
Date: Fri, 12 Nov 2004 11:26:54 +0200

On Sunday 31 October 2004 23:28, Tzahi Fadida wrote:
> Because of the lack of good answers, I am sending this here(the mail
> below). (even though most of the hackers-il list is also on linux-il)

One reason you may not be able to contribute to MySQL is because the core 
developers are using BitKeeper as a version control system. They don't 
release snapshots during the pre-Alpha stage where most of the feature-adding 
takes place so you have to use BitKeeper for that. And I strongly recommend 
against using the gratis version of BitKeeper:

http://better-scm.berlios.de/comparison/bk-license.html
http://better-scm.berlios.de/bk/bk_suitability.html

You can try using something like openbkweb to access it, but I don't know if 
it'll work.

Regards,

	Shlomi Fish

---------------------------------------------------------------------
Shlomi Fish      [email-masked]
Homepage:        http://www.shlomifish.org/

Knuth is not God! It took him two days to build the Roman Empire.

---

From: "Tzahi Fadida" <[email-masked]>
Date: Sun, 14 Nov 2004 11:09:54 +0200

We have decided to go with PostgreSQL.
it's the closest Open Source RDBMS to a real RDBMS. The other choice was
FireBird
but as I was going thru their documentation and interviews with the
maintainers and
authors I saw that one of the major reasons they went to version 2 is that
the code was
a mess. Obviously I am trying to avoid this kind of thing.
Regards,
	tzahi.

> From: Shlomi Fish [mailto:[email-masked]] 
> Sent: Friday, November 12, 2004 11:27 AM