生物技术初创公司Grail正在构建自己的基础设施,以支持它在构建模型的同时所做的数据科学工作。这家公司最近开源了两个面向大数据的无服务器项目Bigmachine和Bigslice,并将Go作为首选语言。
“我们正在进行大量的研发、发现和模型构建,我们需要非常迅速地转向。”Grail的软件工程师Marius Eriksen说,“因此,我们必须拥有灵活快速的基础设施。”
这家公司致力于探测早期癌症,以便开展有效治疗。它正致力于通过观察血液中的细胞碎片,开发一种针对多种癌症的单一血液检测方法。它使用机器学习技术来检测癌症并确定癌症在体内的起源。
FDA最近批准了Grail循环无细胞基因组图谱(CCGA)研究的突破性设备设计——它可以快速跟踪开发、评估和审查。该公司的目标是招收165000名参与者。该研究已经招募了10万名女性进行乳房X光检查,并预计明年将公布结果。
试验中每个人的基因组测序可以产生超过1万亿字节的数据,因此该公司需要处理庞大的数据集。它建立模型的方法依赖于快速的反馈周期——在这个周期中,研究人员建立模型,在真实数据上测试想法,并从结果中学习。
“计算是工作的核心。我们需要非常擅长处理大规模的计算作业。”Eriksen说,“Grail建立在非常重视技术基础设施的理念之上。我们决定遵循现代软件工程实践,关注可伸缩性和速度。”
它运行两种主要类型的数据处理管道:生物信息数据处理以使原始测序数据具有生物意义;机器学习模型进行特别分析,构建最终决定产品性能的分类器。
公司开始对这两种类型的工作负载使用Go语言,并决定围绕代码构建基础设施,而不是反过来。
“Go是一种非常简单的语言,对新人来说非常容易上手。”Eriksen说,“很多生物信息处理是性能密集型的