BioTechniques:应对大数据的挑战

如今的实验室硬件,无论是显微镜、质谱仪,还是DNA测序仪,都产生了GB级的数据。然而,它们仍缺乏处理数据和提取信息所需的软件。为了填补这一空缺,研究人员正在积极开发计算工具。在这一期的《BioTechniques》上,Jeffrey Perkel博士就来谈谈大数据。

大数据有多大?

Adina Howe是密歇根州立大学的一名博士后。她试图通过宏基因组学数据来组装细菌基因组,不过数据太大了,接近4000亿个碱基,组装软件跟不上。通常情况下,新一代测序的原始数据是30 GB/样品,比Howe的数据低一个数量级。然而,即便如此,计算新手也会遇到不小的麻烦。“他们不能打开微软的任何产品,因为软件可能会崩溃,”Howe指出。

好在,Howe曾经的同事,加州大学戴维斯分校的副教授C. Titus Brown提出了解决方案。他实验室的旗舰软件是“khmer”,这个工具能将序列缩减成一系列任意长度的“单词”,即k-mers,简化了基因组组装的任务。

为了解决Howe的宏基因组学问题,Brown的团队实施了一种概率数据结构,称为“Bloom filter”,将存储所需的空间减少了40倍。通过这种办法,Howe从宏基因组学数据集中产生了近550万个蛋白编码基因的组装。

成像的挑战

Pavel Tomancak是马克斯普朗克研究所的一名研究组长,他也面临同样的问题。他通过激光片层扫描显微镜(light-sheet microscopy)记录整个果蝇胚胎,研究胚胎发育过程中的基因表达,数据量达到几TB。现有的软件根本跟不上。

Fiji是一个很受欢迎的开源图像处理软件,它不仅包括核心的ImageJ软件,还包括一些插件等。Tomancak是Fiji项目的核心开发者之一。为了解决大数据问题,他已经开发了一系列新的插件。BigDataViewer让用户能够在远程查看大型数据集,而不用下载数据。“你根本不可能在笔记本电脑上存储10 TB的图像数据,”他说。

Fiji的开发者还定期举办“编程马拉松”活动,合作改善软件。在2012年的编程马拉松活动之后,开发者推出了一个名为imgLib的插件,允许开发人员与图像数据有效互动,而不论其数据类型、大小或位置如何。

你也来试试?

如此看来,掌握一点编程技术,的确很有用哦。现在网络上有很多资源可以学习,包括在线教程和手册、论坛及在线课程。文中提到的Software Carpentry课程需要2天时间,包括3个主要模块,覆盖UNIX命令行;R、Python或MATLAB的编程;以及版本控制。当然,短短2天之后,你并不会成为专家,但你了解计算机能实现什么,也有信心去寻找更多的信息。生物通 www.ebiotrade.com

Howe指出,数据分析也是一种实验室方法,与其他无异。“我在实验室学到的第一件事是如何在无菌环境下培养细菌,我自己不会,必须有人教我。”计算也一样。“每个人都需要有个人去培训他。然后,你必须自己去做,去犯错误,这只是过程中的一部分。”(生物通 薄荷)

;