| 1 | == Downloading and processing NCBI SRA files == |
| 2 | |
| 3 | **SRA** (for Sequence Read Archive) is a NCBI binary format for short reads. |
| 4 | |
| 5 | It's thoroughly described in the [[http://www.ncbi.nlm.nih.gov/books/NBK47528/|SRA Handbook]] |
| 6 | |
| 7 | SRA files can be downloaded as compressed fastq in a web browser using [[https://ewels.github.io/sra-explorer/|SRA Explorer]]. |
| 8 | |
| 9 | Processing SRA files requires the [[https://ncbi.github.io/sra-tools/|NCBI SRA Toolkit]], which is installed on our systems. |
| 10 | |
| 11 | The main command is **fastq-dump <SRA archive file>**, like |
| 12 | |
| 13 | ''**fastq-dump SRR060751.sra**'' |
| 14 | |
| 15 | If your reads are paired, by default the #1 and #2 reads will end up concatenated together in the same file. |
| 16 | To check if the SRA sample has paired reads or not, go to the [https://trace.ncbi.nlm.nih.gov/Traces/sra/sra.cgi?view=run_browser SRA Run browser], enter the sample ID, and look in the table under "Layout". |
| 17 | |
| 18 | To get matched paired reads into separate files, use a command like |
| 19 | |
| 20 | ''**fastq-dump --split-3 SRR060751.sra**'' |
| 21 | |
| 22 | This works the same as using the "--split-files", but "--split-3" puts unpaired reads (if any) into a third file. |
| 23 | |
| 24 | You can ask also for gzipped output instead of typical fastq: |
| 25 | |
| 26 | ''**fastq-dump --split-3 --gzip SRR060751.sra**'' |
| 27 | |
| 28 | See [[https://trace.ncbi.nlm.nih.gov/Traces/sra/sra.cgi?view=toolkit_doc&f=fastq-dump|Converting SRA format data into FASTQ]] for all program options. |
| 29 | |
| 30 | Note that a fastq file is about 4-5x larger than its corresponding SRA file. |
| 31 | |
| 32 | fastq-dump can be used to download/fetch the SRA file, or you can download (eg. using wget) the SRA file directly and then run fastq-dump to get the fastq file. Downloading SRA file directly will avoid changing home dir path for large file (see below). |
| 33 | |
| 34 | '''Note:''' As of fastq-dump version 2.8.1, running fastq-dump will require the vdb-config to be set up correctly. By default, downloaded/cache file is copied to the user's home directory, which is likely to run out of space. Run, |
| 35 | |
| 36 | {{{ |
| 37 | vdb-config --restore-defaults |
| 38 | vdb-config -i #use the GUI to enter a different location. |
| 39 | }}} |
| 40 | |
| 41 | Manually editing the file, $HOME/.ncbi/user-settings.mkfg, doesn't seem to work. See [[https://ncbi.github.io/sra-tools/install_config.html | NCBI SRA Installation/Config]]. Other alternatives: i) simply symlink the NCBI directory in your home directory to somewhere else with larger storage, or ii) download the SRA file directly (eg. using wget) before using fastq-dump. |
| 42 | |
| 43 | {{{ |
| 44 | #download SRR4090409.sra (e.g. use wget) from SRA and convert to fastq |
| 45 | fastq-dump SRR4090409.sra |
| 46 | |
| 47 | #download SRA file via fastq-dump (important: home directory or vdb-config file must be set up correctly), and convert to fastq |
| 48 | fastq-dump SRR4090409 |
| 49 | }}} |
| 50 | |
| 51 | In order to '''download a list of SRA files''' from NCBI, it is convenient to use prefetch. |
| 52 | |
| 53 | As mentioned in [[https://www.ncbi.nlm.nih.gov/sra/docs/sradownload/| SRA website ]], you can download list of Run accessions from search results page ([[https://www.ncbi.nlm.nih.gov/sra/?term=cancer |- Example offsite image]]) - select Runs of interest by clicking on the checkboxes, click on "Send To", "file", and select "Accession List" in the drop-down menu. |
| 54 | |
| 55 | Given a set of SRA files listed in a single column in the text file "SraAccList.txt" (e.g. SRR7623010, SRR7623011, etc.), the following command will download the entire set: |
| 56 | |
| 57 | {{{ |
| 58 | prefetch --option-file sraAccList.txt |
| 59 | }}} |
| 60 | |
| 61 | This is current as of prefetch v. 2.9.3 (2.9.3-1). Note that the default location for downloaded files is in your home directory under ~/ncbi/ncbi_public/sra. With this default, one can quickly run out of space. One solution to address this problem is to edit your ~/.ncbi/user-settings.mkfg file to include the following line: |
| 62 | {{{ |
| 63 | /repository/user/main/public/root = "/destination/for/big/storage/here" |
| 64 | }}} |
| 65 | |
| 66 | or point to the destination folder with -O |
| 67 | |
| 68 | |
| 69 | '''Download Metadata:''' |
| 70 | When in your GEO series page, click on SRA link -> click on "Send to" on the top of the page -> check the "File" radiobutton, and select "RunInfo" in pull-down menu. This will generate a tabular SraRunInfo.csv file with metadata available for each Run. |