DEMAND
From Informatics
Contents |
DEMAND component of geWorkbench
This analysis is similar to IDEA component. It submits the job to the R script that does the actual computation.
code repository
- local version: as a geworkbench component
- service side: https://github.com/geworkbench-group/demand.service
The service is a string based web service. See http://docs.spring.io/spring-ws/sites/2.0/reference/html/tutorial.html
building and deployment
Similar information applies to the index service, and the VIPER service.
build: maven clean compile install
deploy: After the build process, deploy them using export from eclipse: export war file for the web project to a tomcat
current deployment location:
- development version, on afdev:
~cagrid/apache-tomcat-5.5.35/webapps/
- production version, on afdev:
~cagrid/apache-tomcat-7.0.30/webapps/
(It is accessible from outside Columbia network through URL http://cagridnode.c2b2.columbia.edu:8080/dev/demand-server/services, which handles the redirection that is set in /usr/local/apache2/conf/httpd.conf on cagridnode.c2b2.columbia.edu. The request goes through ajp://afdev.c2b2.columbia.edu:8009/ to the same tomcat as seen on http://afdev.c2b2.columbia.edu:8082/. We need to administer this as the user account 'cagrid'.)
other information
Toy dataset for Demand:
Expression file: geworkbench/data/toy_example/toy_affypilot_rma_288.exp
Annotation file: HG-U219.na31.annot.csv (available at \\floratos20\PublicShare\mukesh\DEMAND\platform_annotation)
Network file: geworkbench/data/toy_example/toy_network_U95.txt (lab format)
Sample info file: geworkbench/data/toy_example/toy_sample.info.txt
Sample info file can be loaded by clicking the "Load Sample Information" button at the bottom of the demand parameter panel, which will auto fill "Drug Arrays" and "Control Arrays" text fields.
The run returns 86 results in 30 seconds: 20 seconds for writing input files for R, 10 seconds for R computation.
The remote version submits the job through a web service to the remote host that runs the R script.
Demand scripts and runs were stored at ~cagrid/r/demand/;
Demand web service and index service were deployed to ~cagrid/apache-tomcat-5.5.35/webapps on afdev;
Demand web service address was returned by querying the index service;
Index web service address was added into applications.properties: "internal.indexServer.url=http://afdev.c2b2.columbia.edu:9090/index-server/services"
Server side was implemented using spring web service;
Client side was implemented using apache axis2, using existing axis2 libs in geworkbench core;
Large data transfer was supported by enabling MTOM on both client&server side, and adding "-Dsaaj.use.mimepull=true" in catalina.sh; file transfer temp files are stored at $CATALINA_HOME/temp, need manual clean-up for disk space.
Files from Andrea's group (R scripts and data files): \\floratos20\PublicShare\mukesh
Contacts: "Mukesh Bansal" <mb3113@c2b2.columbia.edu>, "Jung Hoon Woo" <jung.woo@dbmi.columbia.edu>
The actual R script, DMAND.R, was removed from geworkbench svn repository because it is unpublished work. It is put back again.