Hi everybody.
Lately I, with the help of a fellow bioinformatician from the UK, have spent time converting the Metrix project to a Maven project for easier accessibility and deployment.
The master repository has been switched out with the maven branch should be fairly easy to install.
The README will be updated with the following:
Code:
Step 1. Clone the Metrix repository: > git clone [url]https://github.com/NKI-GCF/Metrix.git[/url] Step 2. Install Maven for your platform Step 3. Go to the Metrix directory and run: > mvn install Step 4. Insert the SQL table you find in the ./target/classes folder into your database. Step 5. Change the metrix.properties file located in the ./target/classes folder to reflect your environment.
>> To run Metrix as a server (MetrixDaemon) that continuously monitors and parses new run directories execute the following:
Code:
1. Go to the target/ folder. 2. > java -Done-jar.silent=true -Dproperties=classes/metrix.properties -jar MetrixDaemon.jar&
>> To singularly parse a Illumina run and output a summary overview execute the following:
Code:
1. Go to the target/ folder.
2.
>java -Done-jar.silent=true -Dproperties=classes/metrix.properties -jar Metrix.jar {INSERT FLOWCELLID or RUNNAME}
In case you decided to use the MetrixDaemon the Metrix suite gives you a bit more flexibility with regards to interfacing run data with other applications or pipelines.
In order to prepare the MetrixDaemon for future queries from clients we need to initialize the database with as much preprocessed data as possible.
Each sequencing run contains a lot of information and Metrix can generate the most commonly used distributions for viewing or analysis purposes.
If you decide not to initialize Metrix future multi run queries (queries that retrieve runs by state) might take a long time to be processed.
Keep in mind that depending on how many runs the Illumina run folder contains, the initialization process might take several hours (> 500 runs).
To initialize the Metrix database run the following in the target directory:
Code:
> java -Done-jar.silent=true -Dproperties=classes/metrix.properties -jar MetrixInitialize.jar
> [nki.parsers.metrix.CommandProcessor] : Initialization command received.
> [nki.io.DataStore] : Fetching all summaries.
...
...
...
Once this is finished you can query Metrix using MetrixGCFdb.
MetrixGCFdb.jar for example is an application that contacts the configured MetrixDaemon instance (reflected in the metrix.properties file) and asks to parse and return the basic summary information of a run together with basic distributions such as >Q30%, cluster densities, intensities, error rates and index distributions.
You can run it using:
Code:
> java -Done-jar.silent=true -Dproperties=classes/metrix.properties -jar MetrixGCFdb.jar {INSERT (PART OF) FLOWCELLID or RUNNAME}
Once Metrix is initialized it is ideal for integration with any LIMS system that allows external application calls and accepts JSON or XML as input.
I will update this guide soon.
Please let me know if it works and helps you out.
HTH,
Bernd

Leave a comment: