Sentieon|应用教程:利用Sentieon Python API引擎为自研算法加速

简介: Sentieon|应用教程:利用Sentieon Python API引擎为自研算法加速

背景

Sentieon套装中所有模块的速度都远超对应开源软件的数倍至数十倍,用户在使用这些模块的同时,有时也希望Sentieon团队可以帮助加速自己开发的定制化软件。为了帮助这些用户能在自研软件上享受到Sentieon模块的速度,我们开发了Python API系统, 满足用户二次开发,自主加速的需求。

API介绍

Sentieon Python API本质上是一套沟通系统,连接了用户的数据分析脚本与Sentieon的高速引擎,在加速的同时也提升了脚本的可读性与可维护性。

Sentieon的数据处理引擎是Sentieon多个模块的核心,可以高速分析BAM/CRAM和FASTA格式的数据文件。引擎同时支持single-pass以及multithreaded execution这两种数据流方式。其中Multithreaded数据流速度较快,也相对比较复杂,会将基因组分拆为默认长度1Gb的片段(Fragment),Sentieon引擎会并行地在每个线程中独立处理单个片段;每个片段又会被分拆为默认长度1Kb的小片段(Step),引擎会线性的依次处理这些小片段。在此过程中,用户软件的数据处理逻辑将会得到高速执行。

API-1.png

实施案例

下面我们通过一个与美国圣朱迪儿童研究医院(St Jude Children’s Research Hospital)的CREST软件团队的合作案例展现Sentieon的加速效果。CREST (Clipping REveals Structure)是业内一款著名的检测癌症基因组结构变异的软件,主要通过断点(Breakpoints)作为线索来检测基因组中的结构变异。具体来说,CREST软件的流程中包括了soft-clip检测,组装,组装后比对,断点确认,结构变异确认等步骤。其中的组装与比对步骤主要依赖于第三方工具完成。CREST的优势是准确度较高,然而速度方面的缺陷同样明显,对于一个标准30x肿瘤全基因组配对样本来说,在20线程的工作站的处理时间长达24小时,很难满足用户的需求。

API-2.png

在了解到Sentieon Python API的功能之后,CREST团队使用这套系统重新实现了CREST的功能。在测试数据中,利用Sentieon加速版CREST达到了10倍的提速,结果与原版的CREST完全一致。在20线程的工作站中将绝大多数样本的处理时间降低到了1小时以内。

API-3.png

下面我们介绍另外两个应用加速案例。质量控制是NGS数据处理流程中的重要步骤,虽然逻辑比较简单,然而涉及到对于BAM/CRAM文件的大量读取工作,这些工具在速度,多线程并行,以及代码的可维护性上往往难以兼得。

Sentieon Python API可以将质控工具的算法逻辑与数据读取分开,同时提升速度与代码可读性。作为实施案例,我们利用Python API加速了Picard的CollectInsertSizeMetrics工具,快速统计insert size;另外我们也加速了GATK的CalculateTargetCoverge工具,快速统计目标区域的深度。用户也可参考此案例,加速自研的质控工具。

API-4.png

技术支持

Sentieon Python API可以让用户的脚本与Sentieon引擎沟通,高速并行读取BAM/CRAM/FASTA文件,提速10倍以上。用户可以利用这个平台进行二次开发,加速自研软件,我们非常愿意提供详尽的技术支持。

Sentieon软件介绍

Sentieon为完整的纯软件基因变异检测二级分析方案,其分析流程完全忠于BWA、GATK、MuTect2、STAR、Minimap2、Fgbio、picard等金标准的数学模型。在匹配开源流程分析结果的前提下,大幅提升WGS、WES、Panel、UMI、ctDNA、RNA等测序数据的分析效率和检出精度,并匹配目前全部第二代、三代测序平台。

640 (8).png

Sentieon软件团队拥有丰富的软件开发及算法优化工程经验,致力于解决生物数据分析中的速度与准确度瓶颈,为来自于分子诊断、药物研发、临床医疗、人群队列、动植物等多个领域的合作伙伴提供高效精准的软件解决方案,共同推动基因技术的发展。

截至2023年3月份,Sentieon已经在全球范围内为1300+用户提供服务,被世界一级影响因子刊物如NEJM、Cell、Nature等广泛引用,引用次数超过700篇。此外,Sentieon连续数年摘得了Precision FDA、Dream Challenges等多个权威评比的桂冠,在业内获得广泛认可。

软件试用:https://www.insvast.com/sentieon

目录
相关文章
|
7月前
|
JSON 算法 API
Python采集淘宝商品评论API接口及JSON数据返回全程指南
Python采集淘宝商品评论API接口及JSON数据返回全程指南
|
7月前
|
JSON API 数据安全/隐私保护
Python采集淘宝拍立淘按图搜索API接口及JSON数据返回全流程指南
通过以上流程,可实现淘宝拍立淘按图搜索的完整调用链路,并获取结构化的JSON商品数据,支撑电商比价、智能推荐等业务场景。
|
8月前
|
监控 数据可视化 数据挖掘
Python Rich库使用指南:打造更美观的命令行应用
Rich库是Python的终端美化利器,支持彩色文本、智能表格、动态进度条和语法高亮,大幅提升命令行应用的可视化效果与用户体验。
810 0
|
8月前
|
缓存 监控 供应链
唯品会自定义 API 自定义操作深度分析及 Python 实现
唯品会开放平台提供丰富API,支持商品查询、订单管理、促销活动等电商全流程操作。基于OAuth 2.0认证机制,具备安全稳定的特点。通过组合调用基础接口,可实现数据聚合、流程自动化、监控预警及跨平台集成,广泛应用于供应链管理、数据分析和智能采购等领域。结合Python实现方案,可高效完成商品搜索、订单分析、库存监控等功能,提升电商运营效率。
|
7月前
|
Cloud Native 算法 API
Python API接口实战指南:从入门到精通
🌟蒋星熠Jaxonic,技术宇宙的星际旅人。深耕API开发,以Python为舟,探索RESTful、GraphQL等接口奥秘。擅长requests、aiohttp实战,专注性能优化与架构设计,用代码连接万物,谱写极客诗篇。
1588 1
Python API接口实战指南:从入门到精通
|
8月前
|
数据采集 存储 XML
Python爬虫技术:从基础到实战的完整教程
最后强调: 父母法律法规限制下进行网络抓取活动; 不得侵犯他人版权隐私利益; 同时也要注意个人安全防止泄露敏感信息.
1044 19
|
7月前
|
索引 Python
Python 列表切片赋值教程:掌握 “移花接木” 式列表修改技巧
本文通过生动的“嫁接”比喻,讲解Python列表切片赋值操作。切片可修改原列表内容,实现头部、尾部或中间元素替换,支持不等长赋值,灵活实现列表结构更新。
379 1
|
8月前
|
JSON API 数据安全/隐私保护
Python采集淘宝评论API接口及JSON数据返回全流程指南
Python采集淘宝评论API接口及JSON数据返回全流程指南
|
7月前
|
缓存 监控 前端开发
顺企网 API 开发实战:搜索 / 详情接口从 0 到 1 落地(附 Elasticsearch 优化 + 错误速查)
企业API开发常陷参数、缓存、错误处理三大坑?本指南拆解顺企网双接口全流程,涵盖搜索优化、签名验证、限流应对,附可复用代码与错误速查表,助你2小时高效搞定开发,提升响应速度与稳定性。
|
8月前
|
数据可视化 测试技术 API
从接口性能到稳定性:这些API调试工具,让你的开发过程事半功倍
在软件开发中,接口调试与测试对接口性能、稳定性、准确性及团队协作至关重要。随着开发节奏加快,传统方式已难满足需求,专业API工具成为首选。本文介绍了Apifox、Postman、YApi、SoapUI、JMeter、Swagger等主流工具,对比其功能与适用场景,并推荐Apifox作为集成度高、支持中文、可视化强的一体化解决方案,助力提升API开发与测试效率。

热门文章

最新文章

推荐镜像

更多