Subject Re: Firebird and sharding ?
Author nathanelrick
> At the moment no. A pre-SQL language interface to InterBase does allow
> references to multiple
> databases in a single statement, but the SQL interface does not. The major
> reason is that optimizing
> cross-database joins is a black art, and without optimization, performance
> is unpredictable.

Dear ann,

join accross database are not mandatory (even i don't think this will be reasonnable to do) ... on my side i just want to split the table in different database. for exemple EBAY even forbid the use of join in their query (they use oracle) and prefere to do it in the client application.

in fact we just need a way to add the possibility to select data accross different database and to "union" the result

something like

select from .....join ... where .... @database1
union
select from .....join ... where ....@database2
union
select from .....join ... where ....@database3

etc..

but i don't thing this must be done in the SQL, i thing that this must be handle in the API or something like create a "virtual database" that is in fact a shard of 2 or more other database... when we query the virtual database we in fact query all the shard database attached and "union" the result (and we can only select the virtual database, insert must be done in the shard directly)

it's can also be a very powerfull way to make the superserver multiprocessor for exemple (one shard by processor)

i thing it's a easy thing to do (one or 2 days of developpement?) but that can add an incredibble feature to firebird ... just ask your husband he work hard on something like this (split the data horizontally not vertically)