Installing and Running BioMart within Ensembl

Since the 0.6 version of BioMart, installation within external websites
has become much harder as the code is not suited for such integrations without
a number of post CVS checkout modifications. These you will find listed at the
end.

Modifications to Ensembl code base

To enable BioMart in your checkout - include in your Plugins.pm directory the
following line (directly above the EnsEMBL::Ensembl plugin line:

Considerations when running BioMart within Ensembl

NOTE: We do not run the BioMart application within the same Apache instances as
the rest of the Ensembl site AND we use a secondary MySQL server for the
BioMart databases.

There are a number of reasons for this - mainly due to the size of the
Apache processes Mart produces (these are all 0.5G) and the number of tables
in the Mart database. These both have adverse effects on the performance of
the Ensembl website, so we have ring-fenced hardware specifically for
running BioMart.

One solution is to use a reverse proxy to dispatch in-bound network
traffic to a set of servers, while presenting a single interface to the caller (see Apache's
mod-proxy documentation),
and mod_rewrite
to redirect users to the separate Mart machine.