正八经的官网: https://gdc.cancer.gov/access-data/gdc-data-transfer-tool
注:windows、redhat、ubuntu、mac的都可以下载使用
windows用户安装使用
windows用户,下载的是一个gdc-client.exe文件
1.存放exe与txt
例如,我随便找一个文件夹,文件夹地址是:E:\workspace\gdc,我把源文件(txt)与客户端exe放在如下:
2. 打开命令行
可以使用快捷键,ctrl+r,输入cmd进入;或者点左下角,查找或者输入一下运行
3.正片开始
# cd表示进入这个文件夹
cd E:\workspace\gdc
# windows就是啰嗦,如果不是c盘,还要额外输入磁盘标识
cd E
# 接着执行下载指令
gdc-client.exe download -m gdc_manifest.txt
缓慢下载中。。 估计是因为GDC是国外服务器,距离远,下载速度会慢很多,耐心点,挂一夜估计就好了(10分钟可能才下3mb左右)
我是分割线:2019年12月18日01:38:02
性能优化
研究了一下下载工具,详细看了使用文档,写了配置文件做了改良。
1.痛点
发现下载也会断,而且很卡,如果挂一夜,突然在还没入夜就断了那其实也达不到想要目的。。可靠性太低
吐槽:很多用户、博主只是吐槽慢,老是断,很多时候没有往下想,开发者是不是早就想到这些问题,已经做好了预测,做了很多骚操作,满足大家的需要,只不过很多人都不会深入理解。
所以利用官方文档的帮助,利用他提供的配置文件的方式进行下载配置。
2.默认配置
(可以输入命令gdc-client.exe settings download)
[download]
no_auto_retry = False
no_file_md5sum = False
save_interval = 1073741824
retry_amount = 1
n_processes = 4
no_annotations = False
no_related_files = False
http_chunk_size = 1048576
no_segment_md5sum = False
server = https://api.gdc.cancer.gov
wait_time = 5.0
no_verify = False
dir = .
3.改良后的配方
[download]
no_auto_retry = False
no_file_md5sum = False
save_interval = 1073741824
retry_amount = 6
n_processes = 4
no_annotations = False
no_related_files = False
http_chunk_size = 4096
no_segment_md5sum = False
server = https://api.gdc.cancer.gov
wait_time = 25.0
no_verify = True
dir = .
其实很简单,看了配置文件,用逻辑分析一下就知道怎么配置了,主要可以配置的是http_chunk_size、wait_time、retry_amount、no_verify、n_processes
解释一下(个人理解,可能有出入,专业的看官网):
1. http_chunk_size:这是每一次http请求的数据块大小,如果越大,等待时间越长,可能就会超时,就pa断了,所以为了保证每一次请求数据块都能顺利到达本地,就调小一点(这一步相当关键了)
2. wait_time:http请求的等待时间,如果超过这个等待时间,也会pa断了,所以这一步就可以调大一丢丢
3. retry_amount:重试次数,比如说超过等待时间,就会再重新尝试访问,尝试访问次数超过,pa断了,所以这一步也可以调大一丢丢
4. no_verify:不做校验,(不知道它底层用什么做校验的),为了求速度,不做校验(想保证数据完整性就不要改这个啦)
5. n_processes:配置和CPU大小一致就行了
4.启动命令
制定dtt配置文件:将改良后的配方保存到txt与exe同级目录,命名为gdc-client.dtt
注意:这里dtt作为后缀没什么特殊的,官网只是建议,这里也跟着这么定义罢了。
在控制台输入
gdc-client.exe download --config gdc-client.dtt -m gdc_manifest.txt
经过上面的配方,就会发现这个工具还是挺好用滴~ 而且下载后的数据更快、更稳定~
卡顿?不存在的。
next:有了这些gdc原始数据,我们还需要进行加工,转化为能够方便处理数据的格式,详见使用R语言将gdc数据转化为基因表达矩阵