CSIRO(澳大利亚联邦科学与工业研究组织)开发了一套名为 Serverless Beacon(sBeacon)的无服务器架构,用于查询基因组变异数据。其核心思路是:不将庞大的基因组数据集复制到中心数据库,而是让数据保留在原有存储中,查询照常进行。
该系统是 GA4GH(全球基因组学与健康联盟)Beacon 标准的一种实现,采用 Amazon S3、AWS Lambda、Amazon Athena 和 Amazon DynamoDB,目标是在大规模队列上支持基因组查询,同时让底层数据留在原本的存储位置。
架构的关键在于将基因组数据与用于检索的元数据分离。VCF(变异调用格式)文件保留在 Amazon S3 中,疾病状态、年龄、位置等元数据则单独建立索引。数据接入时,sBeacon 为元数据创建索引和 Athena 表,本体术语由 CSIRO 的 Ontoserver 处理,从而支持基因组信息与表型信息的组合查询。
变异查询经由 API Gateway 路由到 Lambda 函数,由函数定位相关数据集和基因组区域。变异查询模块使用 bcftools 及其 htslib 库,通过 HTTP 字节范围请求读取 VCF 文件中的特定片段。这样系统只读取所需的基因组区域,无需传输整个文件,结果汇总后通过 Beacon API 返回。
CSIRO 生物信息学产品解决方案架构师 Anuradha Wickramarachchi 将数据压缩列为设计中的重要考量:
- “我们仔细处理的一个关键考虑,是让数据保持最大程度的压缩形式。在压缩状态下直接查询,大有裨益。”
评估使用 1000 Genomes Project 的 1 号染色体数据,包含 2,504 个样本,压缩后的 VCF 文件为 1.1 GB。该数据集接入耗时 18 秒。一次覆盖 10,000 个碱基对的查询平均耗时 1.52 秒,估算计算成本为 0.00013 美元。当匹配到的变异从 4 个增加到 400 个时,延迟整体保持稳定。
该设计建立在更早的 sBeacon 研究之上,相关成果发表在 Nature Biotechnology,报告称可支持多达 4000 万个体和 30 亿个基因组位置。最初的 Beacon 工作描述了联邦式模型,将其作为各机构在对外提供标准化查询接口的同时保留对自身基因组数据控制权的一种方式;GA4GH 协议本身设计为跨分布式数据源运行,并不规定底层存储技术。这一实现以云服务扩展了该模型,在将基因组文件保留在对象存储中的同时,提供弹性的查询执行能力。
热门跟贴