<p>I've found the <a href="https://github.com/alexdobin/STAR/blob/master/doc/STARmanual.pdf" rel="nofollow noreferrer">STAR manual</a> to be incredibly helpful with trying to navigate my way round all the STAR command line parameters. Here's the section on the <code>sjdbOverhang</code> parameter:</p>

<blockquote>
  <p><code>--sjdbOverhang</code> specifies the length of the genomic sequence around the annotated junction to be used in constructing the splice junctions database. Ideally, this length should be equal to the <em>ReadLength-1</em>, where <em>ReadLength</em> is the length of the reads. For instance, for Illumina 2x100b paired-end reads, the ideal value is 100-1=99. In case of reads of varying length, the ideal value is <em>max(ReadLength)-1</em>. <strong>In most cases, the default value of 100 will work as well as the ideal value.</strong></p>
</blockquote>

<p><em>[emphasis preserved from the original text]</em></p>

<p>I would recommend trying out running STAR with this value unset, or set to 100, and seeing how it goes. If you want to be particularly adventurous, you could set it to 1000 and see if anything changes.</p>

CC BY-SA 3.0
2017-06-07T04:58:25.327Z
2017-06-07T04:58:25.327Z
gringer
<p>The parameter is used to determine how much sequence STAR indexes on each side of a splice junction to improve its alignment accuracy.  For very long reads, this may not be ideal. I am not sure if STAR is capable of including multiple splice junctions since a long read is more than likely to span more than one.  </p>

<p>It may be worthwhile to consider aligning your reads directly to transcripts and taking the reads that align poorly and using them to look for novel transcripts.</p>

CC BY-SA 3.0
2017-06-07T04:50:54.920Z
2017-06-08T02:58:54.080Z
2017-06-08T02:58:54.080Z
GWW
<p>I am aligning a dataset of 1,000,000 reads oh human mRNA sequenced on Oxford Nanopore Technologies' MinION, and would like to use the STAR aligner, using the <a href="https://github.com/PacificBiosciences/cDNA_primer/wiki/Bioinfx-study:-Optimizing-STAR-aligner-for-Iso-Seq-data#param" rel="noreferrer">parameters recommended by Pacific Biosciences</a> for long reads. </p>

<p>According to <a href="https://groups.google.com/forum/#!searchin/rna-star/sjdboverhang%7Csort:relevance/rna-star/h9oh10UlvhI/ZwAs1xFVCAAJ" rel="noreferrer">this Google Groups thread</a>, in setting up the genome index for short reads, the parameter <code>sjdbOverhang</code> should be set to 1 less than the read length. Obviously, with long (mean 1.7Kb, max >50Kb) reads, this doesn't make sense.</p>

<p>Running <code>STARlong --runMode genomeGenerate</code> without setting <code>sjdbOverhang</code> sets the parameter to <code>0</code>. Does anyone know what this means, how it might affect mapping, and what I should set it to for my long reads?</p>

CC BY-SA 3.0
2017-06-07T12:07:12.320Z
Not an answer, but for full-length transcripts, it is worth considering traditional cDNA mappers such as gmap and blat. How well they perform highly depends on the error rate. They are probably ok at ~5% error rate. If you are using the older chemistry, they may not work, though.
user172818
CC BY-SA 3.0
2017-06-08T02:05:17.620Z
A very good point. We're using GMAP as our baseline aligner, but I wanted to try out STAR to confirm the rather surprising results in this bioRxiv preprint: http://biorxiv.org/content/early/2017/04/11/126656
Scott Gigante
<rna-seq><phylogenetics><nanopore><star>
Building STAR Genome Index for nanopore RNA sequencing
# Building STAR Genome Index for nanopore RNA sequencing

(Asked by: username_0 on 2017-06-07)

I am aligning a dataset of 1,000,000 reads oh human mRNA sequenced on Oxford Nanopore Technologies' MinION, and would like to use the STAR aligner, using the [parameters recommended by Pacific Biosciences](https://github.com/PacificBiosciences/cDNA_primer/wiki/Bioinfx-study:-Optimizing-STAR-aligner-for-Iso-Seq-data#param) for long reads.

According to [this Google Groups thread](https://groups.google.com/forum/#!searchin/rna-star/sjdboverhang%7Csort:relevance/rna-star/h9oh10UlvhI/ZwAs1xFVCAAJ), in setting up the genome index for short reads, the parameter `sjdbOverhang` should be set to 1 less than the read length. Obviously, with long (mean 1.7Kb, max >50Kb) reads, this doesn't make sense.

Running `STARlong --runMode genomeGenerate` without setting `sjdbOverhang` sets the parameter to `0`. Does anyone know what this means, how it might affect mapping, and what I should set it to for my long reads?

**Tags:** rna-seq, phylogenetics, nanopore, star
> **Comments:**
> **username_1**: Not an answer, but for full-length transcripts, it is worth considering traditional cDNA mappers such as gmap and blat. How well they perform highly depends on the error rate. They are probably ok at ~5% error rate. If you are using the older chemistry, they may not work, though.  
> **username_0**: A very good point. We're using GMAP as our baseline aligner, but I wanted to try out STAR to confirm the rather surprising results in this bioRxiv preprint: http://biorxiv.org/content/early/2017/04/11/126656  

---

## 2 answers

### Answer by username_3 on 2017-06-07. Score: 8 | Accepted answer

The parameter is used to determine how much sequence STAR indexes on each side of a splice junction to improve its alignment accuracy. For very long reads, this may not be ideal. I am not sure if STAR is capable of including multiple splice junctions since a long read is more than likely to span more than one.

It may be worthwhile to consider aligning your reads directly to transcripts and taking the reads that align poorly and using them to look for novel transcripts.


---

### Answer by username_2 on 2017-06-07. Score: 4

I've found the [STAR manual](https://github.com/alexdobin/STAR/blob/master/doc/STARmanual.pdf) to be incredibly helpful with trying to navigate my way round all the STAR command line parameters. Here's the section on the `sjdbOverhang` parameter:

> `--sjdbOverhang` specifies the length of the genomic sequence around the annotated junction to be used in constructing the splice junctions database. Ideally, this length should be equal to the *ReadLength-1*, where *ReadLength* is the length of the reads. For instance, for Illumina 2x100b paired-end reads, the ideal value is 100-1=99. In case of reads of varying length, the ideal value is *max(ReadLength)-1*. **In most cases, the default value of 100 will work as well as the ideal value.**

*[emphasis preserved from the original text]*

I would recommend trying out running STAR with this value unset, or set to 100, and seeing how it goes. If you want to be particularly adventurous, you could set it to 1000 and see if anything changes.


---

