[Bioperl-l] bioperl-db -- a cautious first baby-steps
dblock@bioinfo.pbi.nrc.ca
dblock@bioinfo.pbi.nrc.ca
Mon, 2 Apr 2001 14:30:29 -0600 (CST)
Way to go, Ewan! I'll take a close look at this.
On Mon, 2 Apr 2001, Ewan Birney wrote:
>
>
> bioperl-db is ready for its first little baby-steps into the big bad
> world.
>
>
> bioperl-db is a pretty vanilla mysql-database-and-perl bindings for
> sequence database, written with an eye for more than sequence data being
> stored in there, but definitely sequence orientated at the moment.
>
>
> It is basically a starting point for replacing flat-file + DBM index, or
> simple usage of SRS/efetch etc.
>
>
> I did look at David Block's annotation database, which I might steal stuff
> from in the future, but the implementation here was very "close
> binding" (ie, objects updated on set methods) and there was no easy way to
> move between implementations of Seq objects to be stored, something I
> favoured. Sorry David --- (But, I have to admit, I was very ammused to see
> the chat table in the middle of the database schema there. Much fun!)
>
I am facing the same issue as we move away(?) from a tight binding
ourselves. I'll keep the list posted as to how we do it - I want to be
able to work from das/ensembl/corba/gff, but I like the immediacy I have.
We are kicking around something like a DataSourceI that provides the Seq
implementation with persistence. That way you can write a tight DAS or
corba data source, and a DBI data source that has very few modifications
between DataSource::DB::Mysql and Datasource::DB::Oracle.
That's where I want to go this summer.
>
>
> bascially I wrote it very "new Ensembl style", which is basically like
> Java Beans (I hear). There are business objects which comply to the
> interfaces Bio::SeqI etc which store at least the database primary_id in
> the object and singleton "Adaptor" objects which mediates access to the
> database for all instances of the business object.
>
It sounds like I need to spend some more time with the gang of four (I
ordered a copy, it's in the mail). I'm wanting to move the business
object one step up, I think, and make the database adaptor a little deeper
and smarter.
>
> The mysql schema is in
>
> bioperl-db/sql/basicseqdb-mysql.sql
>
> The code is mainly in
>
> Bio::DB::
>
> and
>
> Bio::DB::SQL::
>
The one with code, wins. ;)
> I have done basic sequence and description and database loading. This is
> enough for the Ensembl web site's use of this stuff, the whole reason I
> set off on this road, so now anything more is "just for fun". I am going
> to tackle basic sequence features over the next couple of days.
>
>
> The code base is pretty bare but there are two tests - filched Ensembl's
> great database test harness for testing. For people with a strong perl
> constitution and/or ensembl experience, the whole thing should be very
> useable. I will attempt to write a good README/bioperl-db.pod at some
> time.
>
>
> wait I guess 15mins or so if you are using anonymous cvs, otherwise code
> etc is at
>
> cvs module - bioperl-db
>
>
>
> Enjoy!
>
I will!
>
>
>
> -----------------------------------------------------------------
> Ewan Birney. Mobile: +44 (0)7970 151230, Work: +44 1223 494420
> <birney@ebi.ac.uk>.
> -----------------------------------------------------------------
>
>
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l@bioperl.org
> http://bioperl.org/mailman/listinfo/bioperl-l
>
David Block
waiting for my old computer to come back, with its nice sig