Falco测试

Falco软件测试,主要看与FastQC的分析时间、结果一致性、报告界面的差异。

软件版本

  • falco 1.2.1
  • FastQC v0.11.8

软件简介

Falco是对FastQC的emulation(仿真?),基本上是把FastQC重新实现了一遍,应该是用的C++?
然后它比FastQC多了些参数,说明文档里有写[Falco only]的例如-subsample、-bisulfite、-reverse-complement等。

测试结果

  • 用一对Fastq文件做了测试,每个Fastq是53692232条序列,读长150。
  • 两个软件的统计结果是一样的。但是Falco的分析时间没有减少很多。考虑到FastQC本身有大部分模块是只抽前100,000条序列计算,计算量不大,时间相差不多也可以理解。
    分析时间比较
  • 主要问题是,它的html报告需要加载一些在线资源(应该是css还有plotly?),然后动态生成报告和图。但是这些资源在国内访问不了或者加载速度很慢,就变成没图,甚至连报告打不开;但是用了魔法就没问题了。
  • 22年5月的一个Issue有提到这个问题,add CSS and javascript to HTML page source code,但是没人回复。
    能打开的时候是这样的,好处是鼠标放图上,能显示具体的值。
    Falco报告界面

测试代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# shell

Test_Dir="/xxx/Software_Test/Falco_QC"
Falco_Result_Dir="$Test_Dir/Result_Falco"
FastQC_Result_Dir="$Test_Dir/Result_FastQC"

Data_R1="Sample_R1.fastq.gz"
Data_R2="Sample_R2.fastq.gz"

rm -fr $Falco_Result_Dir $FastQC_Result_Dir
mkdir $Falco_Result_Dir $FastQC_Result_Dir

echo "[Falco] Start : `date`"
time /xxx/Software/falco/bin/falco --quiet --extract --nogroup --threads 4 -o $Falco_Result_Dir $Data_R1 $Data_R2
echo "[Falco] Finish : `date`"

echo "-----------------------------------------------------------------------------------------------"

echo "[FastQC] Start : `date`"
time /xxx/fastqc --quiet --extract --nogroup --threads 4 -o $FastQC_Result_Dir $Data_R1 $Data_R2
echo "[FastQC] Finish : `date`"

结论

这个软件在国内是个鸡肋:分析时间没减少很多,报告还打不开。
除非是有在线云平台想给客户一个有交互的报告界面。但是也要先把那些资源本地化,再修改html文件。还不如自己直接实现一个类似的界面。