[Biojava-l] SQL-backed persistent Biojava sequence/feature objects

Mathew Traini mat.traini@proteomesystems.com
Mon, 30 Jul 2001 21:56:17 +1000


Hi,

> I've made a start on implementing the above and using Postgresql
> for the purpose as it appears to be the only "free" database with
> transactions implemented.  I figure we will want transactions as we will
> either want the sequences/features completely instantiated or not at all.

Later versions of MySQL also implement transactions, either via the BerkelyDB
backend, or the Innobase InnoDB backend.  We've been using MySQL v3.23.33 and
3.23.37 for several months with the InnoDB backend on Intel Linux, together
with transactionally aware applications (written in Perl 5.6 and
DBI/DBD::MySQL, and Java 1.3.0/JDBC) and it's worked really well.  The only
downside is that the InnoDB table type cannot (at the moment) support BLOBs
larger than 8KB...if you're storing anything larger than that, you'll need to
use the older (and non-transactional) MyISAM type table.

The InnoDB table type also supports row-level locking, which is a huge
improvement over MySQL's previous table-level locking system.

Mat.

--
Mathew Traini
Bioinformatics Developer,
Proteome Systems Ltd.



>

>
>
> There appears to be a JDBC for Postgresql.
>
> Are there any strong objections to the choice or considerations I might
> have missed?
>
> The above might take some time as my SQL and JDBC are pretty much ground
> zero.  Ach well, things can only get better...
>
> b) identifier for used for retrieval
> When recovering sequences from the DB, I'll need some identifier.  Is
> there any reason I shouldn't use the uri field or will I need to offer an
> alternative naming field to use for retrieval as well?
>
> Regards,
> David Huen, Dept of Generics (as an enquirer named us recently),
> University of Cambridge
>
> _______________________________________________
> Biojava-l mailing list  -  Biojava-l@biojava.org
> http://biojava.org/mailman/listinfo/biojava-l