[Typo3-dev] RfC: Making DBAL more flexible and scalable

Michael Scharkow mscharkow at gmx.net
Tue Aug 23 17:45:15 CEST 2005


Martin Kutschker wrote:

> Have you tried a Mysql cluster? AFAIK it should handle such situations. 
> I don't know if there is a cluster available for PostgreSQL.

As I wrote, MySQL cluster has some serious drawbacks for large databases 
(which we are talking about anyway): The main issue is that it's 
memory-only, i.e. you need *loads* of RAM for big databases. Moreover, 
data loss is to be expected on crashes, etc. See 
http://dev.mysql.com/doc/mysql/en/mysql-cluster-faq.html

For Postgres, there is no (free?) cluster solution I know of.

> Anyway, the solutions has one possible drawback. The issue is auto 
> increments. Mysql has an API for it, which can be invoked on the 
> write-server.
> How are these fields handled with DBAL and PostgreSQL (and other RDBMS)? 
> IMHO they have to uses sequences. To get the value of sequence, you do a 
> SELECT. Care has to be taken it goes to th right server.

I have not looked into AdoDB but I don't expect this to be a problem 
because we're managing this in DBAL+AdoDB: I guess (please correct me) 
that on INSERTS involving autoincrements, the query is transformed into 
a SELECT+INSERT statement, which then goes to the master db and only 
there. Remember, we don't mind read-queries to the master but only 
write-queries to the slaves...

Greetings,
Michael




More information about the TYPO3-dev mailing list