ArrayDB 2.0 Alpha -------------------- This is alpha software. There will be bugs. Things will change. Use at your own risk! Instructions on installation are in the INSTALL file. ABSTRACT ArrayDB 2.0 is a software suite that provides an interactive user interface for the mining and analysis of microarray gene expression data. All of the analyzed expression data from a microarray experiment, as well as information about the clones used in the experiment, are stored in a relational database (Ermolaeva, O. et al., Nature Genetics 20: 19-23,1998). Newly-developed upload tools allow individual investigators to directly populate the database through a Web front-end. The data itself can then be viewed by the user through the use of CGI scripts and Java applets. The CGI scripts provide connections to the relational database, and the applets provide a graphical representation of the experimental data. The two main applets currently available are the Experiment Viewer and the Multi-Experiment Viewer. The Experiment Viewer presents the expression data for a single experiment in histogram form, allowing specific areas of the histogram to be selected. Once a selection is made, the actual microarray slide image is displayed, as well as detailed information about each of the clones in the selected range. Each clone is also linked to a variety of external databases, such as UniGene, Entrez, dbEST, KEGG, and GeneCards, when such information is available. The Multi-Experiment Viewer allows the user to query a range of related experiments at one time in order to see changes in the pattern of expression of the same gene over different experiments. ** INSTALLATION NOTES ** Please see the INSTALL file included in the ArrayDB 2.0 distribution for detailed installation instructions. The INSTALL files, as well as other documentation can be found in the distribution in the arraydb/protected/docs/ directory, when you extract the files from the archive. DOCUMENTATION External documentation is provided in the format of plain text files in the arraydb/protected/docs/ directory included in the archive. (PLEASE READ THIS) POD style documentation is included in each of the ArrayDB perl modules, and can be extracted using the 'perldoc' utility. cd arraydb/protected/Lib perldoc NHGRI::ArrayDB perldoc NHGRI::ArrayDB::Authenticator perldoc NHGRI::ArrayDB::DBConnector perldoc NHGRI::ArrayDB::ExperimentInfo perldoc NHGRI::ArrayDB::HTMLPrinter Internal documentation is included in each of the CGI scripts used by ArrayDB in the form of a brief overview at the top of each script, and details of the scripts operations are embeded in the code. The latest docs are always available at: http://genome.nhgri.nih.gov/arraydb/ AVAILABILITY The latest version of ArrayDB should always be available from: ftp://ftp.nhgri.nih.gov/pub/software/arraydb/ You may also want to download the clone set (15K set) that we use. It is also available at the FTP site, in tab delimited text files, ready to be loaded into your ArrayDB database. PREREQUISITES We recommend that you have the following packages installed before you setup and try to use ArryaDB: Sybase Client: (www.sybase.com) o Sybase client environment and programs will be needed for accessing the database, and building the perl DBD::Sybase module that will be used as the driver for connecting the ArrayDB application to the database. (More information on exactly what's required can be found in the DBD::Sybase documentation) Web Server: (www.apache.org) o You will need a web server to use the ArrayDB applications. Any web server will do, as long as it can execute CGI programs, and has the capability of restricting areas of the document tree. (password authentication, deny from all, ...) My favorite is Apache, it is available for free, highly configurable, and works very well. Perl: (www.perl.com) o In order to install and use ArrayDB you will need Perl version 5.004 or better. Perl Modules Required: (www.perl.com/CPAN/modules/) o Carp - provides more detailed error messages. o CGI - needed for reading form data, recieving uploaded files, and cookie authentication methods. (has millions of other uses too!) o CGI::Carp - Gives more detailed error messages from CGI programs, and makes error messages print out to the users browser. o DBI - A database independent driver used for connecting to a variety of databases. o DBD::Sybase - Database driver that tells DBI how to talk to Sybase. o Sybase::BCP - Part of the Sybperl module, we use it to bulk copy large pipee delimited files into the database. if you don't meet the requirements for this one you can convet the bcp stuff to sql queries, or make a system call to the real bcp program installed on your system. o Net::FTP - Used to fetch the NCBI UniGene "Hs.data" file that get's updated about every 2 weeks with new cluster and clone information. o Getopt::Std - Used to parse command line options used in the utility scripts like arraydb_loader.plx, and update15KSet.plx. o NHGRI::ArrayDB - This is perl code that I wrote specificly to be used by ArrayDB. Some of this will have to be modified, like the database connection variables (server, username, ...) NOTE: The NHGRI::ArrayDB modules are included with the ArrayDB distribution, and are in a directory that the ArrayDB scripts know to look for them. They do NOT need to be installed on your system, they are fine where they are for now. Image Magic: (www.wizards.dupont.com/cristy/ImageMagick.html) o or any other application that can convert a tiff image to a jpg without user interactivity. I use the 'convert' program that comes with Image Magic, and make a system call like this: system("convert $image.tif $image.jpg"); Anything that can facilitate this functionality will work fine. Java: (NT and Sun java.sun.com Linux www.blackdown.org Irix www.sgi.com/developers/devtools/languages/java.html ) o Some of the calculations made while inserting the analyzed array data into the database are made using a java application. ArrayDB: (genome.nhgri.nih.gov/arraydb/) o All of the scripts, applets, and the database schemea used by ArrayDB. SUPPORT Questions about how to install and use ArrayDB should be directed to: arraydb@nhgri.nih.gov Bug reports and suggestions for improvements can be sent to: arraydb@nhgri.nih.gov For more general information see the ArrayDB homepage: http://genome.nhgri.nih.gov/arraydb/ PUBLIC DOMAIN NOTICE This software/database is "United States Government Work" under the terms of the United States Copyright Act. It was written as part of the authors' official duties for the United States Government and thus cannot be copyrighted. This software/database is freely available to the public for use without a copyright notice. Restrictions cannot be placed on its present or future use. Although all reasonable efforts have been taken to ensure the accuracy and reliability of the software and data, the National Human Genome Research Institute (NHGRI) and the U.S. Government does not and cannot warrant the performance or results that may be obtained by using this software or data. NHGRI and the U.S. Government disclaims all warranties as to performance, merchantability or fitness for any particular purpose. In any work or product derived from this material, proper attribution of the authors as the source of the software or data should be made, using http://genome.nhgri.nih.gov/arraydb as the citation. --------------------------------------------------------------------------------