大规模基因检测成本降低,OceanBase助力基因测序普惠民众

news2025/1/30 15:55:54

本文来自OceanBase客户的分享

1990年10月,人类基因组计划正式拉开帷幕,它与曼哈顿原子弹计划和阿波罗登月计划并驾齐驱,被誉为二十世纪人类三大科学工程。这项宏伟的工程耗费了高达38亿美元的资金,历经13年,终于在2003年4月15日公布了人类基因组序列草图。

随着基因技术的日新月异,基因测序的速度已实现了质的飞跃。如今,一台先进的测序仪仅需一天就能完成60个人的全基因组测序,而成本更是降低至不到600美元。未来的医疗技术将逐渐由后端的疾病治疗向前端的基因诊断和预防、精准医疗及个性化医疗转型。为了实现大规模基因检测的广泛应用,我们必须在检测复杂度和成本之间找到更进一步的平衡点。只有这样,基因检测的结果才能更加精准迅速,价格才能更加亲民,从而真正实现基因科技的普及化,让每个人都能够触及并享受到它带来的福祉。

那么,如何使大规模基因检测的落地取得检测复杂度和成本间的平衡?数据库在其中的作用是什么?本文通过我们公司基于基因测序业务的数据库解决方案选型来揭晓答案。

基因检测业务对数据库的五大要求

出于历史原因,我们公司内部应用系统较多,使用的数据库类型、版本,以及数据库硬件服务器型号都没有统一的标准,这给数据库开发和运维增加了极大难度。随着业务的扩展,数据量日益增长,业务复杂度越来越高,对业务、数据库系统都提出了更高的要求。

业务给数据库系统带来的挑战是我们公司迫切需要解决的问题,具体而言,体现在以下五个方面。

第一,解决分库分表对应用侵入问题的同时实现存储降本。以基因测序业务为例,一台测序仪每天产生几TB的数据,如何经济、高效地存储数据,同时避免分库分表对应用的侵入。 

第二,满足不同国家的数据安全合规高要求。此处的数据安全主要涉及人类遗传资源管理条例、医疗大数据和个人信息保护要求,需要从数据存储、数据访问、数据传输、事后审计等多角度保障数据安全。另外,各国数据监管要求不同,所应用的数据库产品需要同时满足国内和海外各国的合规要求。

第三,数据库产品授权合规。例如,过去一直在使用的MySQL被商业公司收购后存在停止维护和未知的合规风险,缺少相关数据库资质认证,希望使用技术可靠的软件。

第四,降低数据库运维复杂度。如今越来越多的数据库产品涌现,不同的技术堆栈带来了很大的运维复杂度,期望数据库产品强化以数据为中心的理念,做到数据池化、数据库服务化,使运维管理简单、高效。

第五,生态工具完善、便捷。使用MySQL分库分表方案缺少运维平台、管理工具等,且缺乏官方支持,需要投入人力进行开发和维护。此外,MySQL扩展性较差,无法匹配业务扩展速度。

四款数据库选型及对比数据

基于上述业务对数据库的要求及现有数据库的痛点,我们在调研新的数据库产品时主要考虑业务需求、安全合规、运维管理、开发效率等选型因素。

  • 业务需求:业务快速扩张带来的业务复杂度、业务数据量的增长,需要新的数据库产品具备高可靠、高扩展,以及成本可控的特性。
  • 安全合规:数据库产品自研、技术可靠,具有安全相关的设计资质。
  • 运维管理:可采用平台管理完成日常数据库运维工作,统一监控协助应急处理,减少日常运维人力的消耗。
  • 开发效率:统一数据库技术栈,并采用兼容的数据库类型,尽量减少迁移系统时的代码改动;基于引入的数据库统一开发规范,提升开发效率和系统稳定性。

按照上述选型因素,我们选择了四款较有代表性的数据库产品进行初步对比,考察项见下表。

维度OceanBaseOracle达梦TiDB
开源
自研
国产
高可用,强一致
HTAP
支持水平扩展-
资源隔离
SQL兼容性兼容MySQL5.7和Oracle12cOracleMySQL和OracleMySQL5.7
市场成熟度
数据库生态工具完善(备份恢复、迁移、升级、监控、报表)
技术和架构持续迭代2021年10月22发布OceanBase 3.2,每季度迭代一个版本Oracle 21c 基本每年迭代一个版本DM 8 2019年发布DM 82021年11月30日发布TiDB 5.3.0
技术能力和团队培养认证+开源社区资料丰富认证认证认证+开源社区资料丰富
背景蚂蚁集团甲骨文达梦创业公司,D轮2.7亿美元

经过初步筛选,我们认为OceanBase比较符合需求。首先,Oracle不是国产化数据库,且数据库水平扩展能力较低,SQL也只兼容Oracle自身。其次,达梦数据库非开源,资料相对较少。最后,OceanBase和TiDB作为国产开源分布式关系型数据库都符合选型要求,但TiDB无法兼容Oracle,难以将Oracle、MySQL统一技术栈迁移至TiDB中,因此选择OceanBase进行测试。

我们对OceanBase3.x版本一共进行了三轮测试,整体测试情况如下。

  • 第一阶段(2020.6~2020.10):基准测试。
    •     MySQL5.6的兼容性测试,可兼容。
  • 第二阶段(2020.10~2021.1):分布式特性测试。
    • OceanBase数据库100亿分片表测试。通过使用OceanBase的分布式特性,在未改变应用代码的前提下,将处理时长从原来超20秒缩短为10秒以内。
    • MySQL中需要3TB(双副本)存储的数据,在OceanBase中压缩到1TB(三副本),压缩率约为70%。
  • 第三阶段(2021.2~2021.10):应用测试。
    • 结合应用改造,将数据迁移至OceanBase后,利用OceanBase分区表和tablegroup的分布式处理能力,将原本约6小时的业务处理时间进一步缩短到10分钟以内。

1702610199

通过整体的测试情况,可以看出:OceanBase兼容性好,可以在少量改动代码甚至业务无感知的情况下进行迁移;OceanBase分布式特性使业务的扩展性极大增强;OceanBase存储相同的数据可以实现约70%的成本节省,从性能提升、降低成本方面都带来了很大的收益。

OceanBase应用架构及配置

根据实际生产业务,我们制定了OceanBase落地的目标配置。在正式环境中,除了OceanBase集群外,为了方便运维管理和业务迁移,我们也搭建了运维管控平台OCP、数据迁移平台OMS,节省运维、业务迁移的人力成本。整体的部署架构如下图。

1702610329

通过OCP部署OceanBase集群,以租户的形式提供给业务方使用,应用通过负载均衡这一层随机访问DBProxy层,转发对应的请求到OceanBaseServer节点执行。整体的配置策略如下。

OcanBase集群三节点配置(3.x版本)采用84C/512G/10TB,磁盘使用本地SSD,万兆网卡,具体存储配置可根据业务数据量调整。配置容量基线如下:

  • 租户数量1~25个(按照每个租户最小2CPU计算)。
  • 表分区数量小于3w(为推荐值,大于3w性能开始下降)。
  • TPS容量(按照CPU跑满100%)sysbench读写混合场景,1.5w TPS,超30w QPS;TPC-C场景约1.3w TPS。

运维管控平台OCP采用32C/128G/2TB,磁盘使用SSD,万兆网卡,最少1台,单节点即具备全部功能,生产环境建议3节点部署。 

数据迁移平台OMS采用32C/128G/2TB, 磁盘使用SSD,万兆网卡,生产建议最低两节点配置。根据迁移数据链路数量,可水平扩展多节点。

通过上述OceanBase三节点的基础配置,以租户的形式统一整合原有的数据库实例,集中资源,提高了整体的资源利用率。并且在业务运行过程中,可以通过动态调整的方式,灵活对租户、集群的级别扩缩容,匹配快速发展的业务量,解决了以往传统单点数据库扩缩容时对业务的影响问题,并且对业务的响应可以更加及时。

在整体的迁移过程中,OMS也发挥了极大的作用,全量加增量迁移的方式,无缝将MySQL的数据迁移至OceanBase集群中,通过主键做源数据和目标的校验,确保数据一致性。在可视化的迁移界面上,等到链路无延迟时,再做生产应用的切换,整体的切换过程较为平滑,对业务的影响降到最低。

我们更加看重的是OCP运维管理平台,以往运维MySQL数据库都是通过脚本及独立的监控平台告警,将业务迁移到OceanBase后,OCP上提供了全生命周期管理的能力,集群的创建、备份、监控、卸载等一系列的能力基本能够全覆盖DBA的工作,通过统一的界面管理,对于运维人员来说,可以更直观地看到集群的运行状态,白屏化的操作也大大降低了以往在服务器上直接操作的运维风险。

收益总结及未来规划

通过引入OceanBase分布式数据库,我们主要实现了以下四个目标。

第一,支撑未来业务。OceanBase分布式处理能力和原生高压缩比满足未来十年内的数据管理能力;在未改变应用代码的前提下大幅提升查询性能,如某些查询场景查询时长仅为MySQL的1/3,业务处理时间从约6小时提升至10分钟;不停服无限水平扩展能力支持未来业务数据进一步增长。 

第二,统一数据库平台。基于OceanBase多租户能力搭建统一基础数据库云平台,业务即用即申请,交付速度快;资源管理方式从静态、固定供给方式,过渡到以动态、可调节的供给方式;实现数据库整合同时,进行统一管理,统一版本,降低运维成本。

第三,应用平滑迁移。OceanBase兼容 MySQL,应用程序平滑迁移至OceanBase,大幅减少应用改造成本;数据库可以按需逐步迁移至OceanBase;业务无需改动任何一行代码即可实现动态扩缩容,无需分库分表。 

第四,满足安全合规。国产数据库中唯一实现100%自主研发的产品,不依赖任何开源产品,具备产品独立迭代的能力,全球可统一架构,无需担心合规风险。

目前,我们使用OceanBase已经超过两年了,接入的业务场景主要以查询为主,后期会计划接入更多类型的场景。2022年OceanBase 4.0版本发布后,我们也在持续关注,并且,已经测试并基于4.x的架构在实际生产业务中使用。期望在未来将所有MySQL上的业务迁移至OceanBase,将OceanBase作为统一的数据库方案。 

通过替换数据库方案,在一定程度上可以提升大规模基因检测的性能,稳定支撑复杂的基因测序业务,同时,数据库的高压缩比从软件和硬件消耗层面实现了成本的节约,进一步平衡业务性能需求与成本,实现基因检测保证快速与精准的同时拥有更实惠的价格。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1575660.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

P1123 取数游戏(dfs算法)

题目描述 一个 NM 的由非负整数构成的数字矩阵,你需要在其中取出若干个数字,使得取出的任意两个数字不相邻(若一个数字在另外一个数字相邻 8个格子中的一个即认为这两个数字相邻),求取出数字和最大是多少。 输入格式 第…

将excel,csv中合并块中某条记录的值应用到整个块(使用多行的值,来填充新列数据)。

背景描述 在excel中使用其它列的值,根据某种计算规则来填充另一列(或新列)很容易实现。但是如果需要根据合并块中的多行来填充列时,就不容易实现,由于对excel不是太常用,因此这里使用的命令行工具实现的。…

全坚固笔记本丨工业笔记本丨三防笔记本相较于普通笔记本有哪些优势?

三防笔记本和普通笔记本在设计和性能方面存在显著差异,三防笔记本相较于普通笔记本具备以下优势: 三防笔记本通常采用耐磨、耐摔的材料,并具有坚固的外壳设计,能够承受恶劣环境和意外碰撞,有效保护内部组件不受损坏。相…

微信小程序真机无法下载文件

问题: 1、真机无法展示加了防盗链的图片 2、真机无法下载pdf等文件 文件服务器供应商:腾讯 解决: 1、在文件服务器控制台加上微信小程序的域名白名单:servicewechat.com 具体可查看:对象存储 设置防盗链-控制台指…

Python零基础从小白打怪升级中~~~~~~~入门

第一节:Python入门(一) 1、Python介绍 编程语言就是人和计算机进行交流的一种语言 Pythonc / CJavaPHPC#gobasicqbasicVBVCPython 是一个高层次的结合了解释性、编译性、互动性和面向对象,同时也面向函数的脚本语言。 Python 是…

Django之静态文件及模板语法(上)

Python学习之路系列文章目录 python面向对象之警察与匪徒火拼场景模拟python面向对像之第二次笔记Django环境搭建及测试第1个Django应用及Django的请求处理Django之静态文件及模板语法(上) 静态文件及模板语法 Python学习之路系列文章目录一、静态文件1.…

【leetCode】2810. 故障键盘

文章目录 [2810. 故障键盘](https://leetcode.cn/problems/faulty-keyboard/)思路一:模拟代码:思路二:双端队列代码: 2810. 故障键盘 思路一:模拟 用StringBuilder来拼贴字符遍历字符串,如果遇到i,对拼贴好…

Node操作mysql

配置 安装mysql模块 npm i mysql建立连接 const mysql require(mysql);const db mysql.createPool({host: 127.0.0.1,user: root,password: admin123,database: my_db_01 });测试 // select 1没有任何实质性作用 只是检查mysql模块是否正常 db.query(select 1, (err, results…

YOLOv9改进策略 :小目标 | 新颖的多尺度前馈网络(MSFN) | 2024年4月最新成果

💡💡💡本文独家改进:多尺度前馈网络(MSFN),通过提取不同尺度的特征来增强特征提取能力,2024年最新的改进思路 💡💡💡创新点:多尺度前馈网络创新十足,抢先使用 💡💡💡如何跟YOLOv8结合:1)放在backbone后增强对全局和局部特征的提取能力;2)放在detect…

2024春算法训练4——函数与递归题解

一、前言 感觉这次的题目都很好,但是E题....(我太菜了想不到),别人的题解都上百行了,晕; 二、题解 A-[NOIP2010]数字统计_2024春算法训练4——函数与递归 (nowcoder.com) 这种题目有两种做法:…

蓝桥杯算法题:卡片换位

问题描述 你玩过华容道的游戏吗?这是个类似的,但更简单的游戏。 看下面 2 x 3 的格子 --------- | A | * | * | --------- | B | | * | --------- 1 2 3 4 5 在其中放 5 张牌,其中 A 代表关羽,B 代表张飞,* 代表士兵…

【正点原子探索者STM32F4】TFTLCD实验学习记录:FSMC控制 TFTLCD的寄存器配置

FSMC控制 TFTLCD的寄存器配置 异步模式 A控制 TFTLCDFSMC寄存器配置ILI9341电平持续时间要求 参考 异步模式 A控制 TFTLCD LCD以ILI9341为例 FSMC寄存器配置 对于异步突发访问方式, FSMC 主要设置 3 个时间参数:地址建立时间(ADDSET)、 数据 建立时间…

基于单片机风力发电机迎风面对风向的追踪系统设计

**单片机设计介绍,基于单片机风力发电机迎风面对风向的追踪系统设计 文章目录 一 概要二、功能设计三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机风力发电机迎风面对风向的追踪系统设计是一个涉及单片机编程、传感器技术、机械控制等多个领域的综…

python 04字典映射

1.创建字典 (1)通过自己的输入创建字典 字典用大括号,至此,小括号( )表示元组,中括号[ ]表示列表,大括号{ }表示字典,python中最常用的三种数据结构就全了 (2)通过其他…

今日头条signature参数js逆向(爬虫)

今日头条是ajax动态加载 话不多说,直接上代码 windowglobal;window.location{"ancestorOrigins": {},"href": "https://www.toutiao.com/","origin": "https://www.toutiao.com","protocol": "…

【调度工具】Azkaban用户手册

目录 一、概述 1.1 Azkaban 是什么 1.2 Azkaban 特点 1.3 Azkaban 与 Oozie 对比 功能 工作流定义 工作流传参 定时执行 资源管理 工作流执行 工作流管理 1.4 Azkaban 运行模式及架构 Azkaban 三大核心组件 Azkaban有两种部署方式 Azkaban Web Server Azkaban …

JUC_1

进程 概述 进程:程序是静止的,进程实体的运行过程就是进程,是系统进行资源分配的基本单位 进程的特征:并发性、异步性、动态性、独立性、结构性 线程:线程是属于进程的,是一个基本的 CPU 执行单元&#x…

【LeetCode热题100】153. 寻找旋转排序数组中的最小值(二分)

一.题目要求 已知一个长度为 n 的数组,预先按照升序排列,经由 1 到 n 次 旋转 后,得到输入数组。例如,原数组 nums [0,1,2,4,5,6,7] 在变化后可能得到: 若旋转 4 次,则可以得到 [4,5,6,7,0,1,2]若旋转 7…

使用阿里云服务器可以做什么?太多了

阿里云服务器可以干嘛?能干啥你还不知道么!简单来讲可用来搭建网站、个人博客、企业官网、论坛、电子商务、AI、LLM大语言模型、测试环境等,阿里云百科aliyunbaike.com整理阿里云服务器的用途: 阿里云服务器活动 aliyunbaike.com…

数合建模平台简介--4月新版

数合建模平台是一个综合性的数据建模及可视化平台,旨在为用户提供一站式全链路数据生命周期管理解决方案。该平台不仅能够帮助用户有效管理数据资产,还能深入挖掘数据价值,为政府机构、企业、科研机构以及第三方软件服务商等不同客户群体提供…