CN114300064A - 分子数据存储方法及装置、应用方法及装置 - Google Patents

分子数据存储方法及装置、应用方法及装置 Download PDF

Info

Publication number
CN114300064A
CN114300064A CN202111669518.0A CN202111669518A CN114300064A CN 114300064 A CN114300064 A CN 114300064A CN 202111669518 A CN202111669518 A CN 202111669518A CN 114300064 A CN114300064 A CN 114300064A
Authority
CN
China
Prior art keywords
data
molecular
calculation
database
file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111669518.0A
Other languages
English (en)
Inventor
张楠
陈勇攀
吴宇亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Jingtai Technology Co Ltd
Original Assignee
Shenzhen Jingtai Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Jingtai Technology Co Ltd filed Critical Shenzhen Jingtai Technology Co Ltd
Priority to CN202111669518.0A priority Critical patent/CN114300064A/zh
Publication of CN114300064A publication Critical patent/CN114300064A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请涉及了一种分子数据管理方法及装置,该方法包括:接收待处理的分子数据;对分子数据进行校验,得到校验通过的数据;确定校验通过的数据的增量附属数据,增量附属数据包括以下任意一种或多种:结构化分子数据、半结构化分子数据、非结构化分子数据;将校验通过的数据及结构化分子数据保存到数据库中;将半结构化分子数据和非结构化分子数据保存到文件中,并将文件的目录索引添加到数据库中,以建立文件与数据库的关联。利用本申请的技术方案,可以方便、有效地管理分子的所有相关数据。

Description

分子数据存储方法及装置、应用方法及装置
技术领域
本申请涉及数据处理领域,具体涉及一种分子数据存储方法及装置,还涉及一种分子数据应用方法及装置。
背景技术
药物研发中早期筛查,一般会有来自人工智能(Artificial Intelligence,简称AI)生成的、以及对大型化合物库进行虚拟筛选产生的大批量的分子数据,这些分子数据一般包含分子本身的物化属性,如分子质量、分子smiles(simplified molecular inputline entry system,简化分子线性输入规范)式等基本属性,以及分子的三维坐标结构文件。在筛查流程中,会使用各类计算化学、量子化学与AI模型预测方法如自由能微扰(FreeEnergy Perturbation,简称FEP)计算、量子化学(Quantum Chemistry,简称QM)计算、分子动力学(molecular dynamics,简称MD)模拟、ADMET(Absorption,Distribution,Metabolism,Excretion,and Toxicity,吸收、分布、代谢、排泄和毒性)预测等,得到分子的能量信息、吸收分解及毒性等预测信息;亦会合成部分分子并进行各类生物活性实验得到分子的活性数据。
在整个分子筛选流程中,会产生大量结构化的分子数据,如分子性质、蛋白结合能量、活性数据等,也会产生大量半结构化及非结构化分子数据,如分子结构、分子合成报告、分子活性实验报告;同时还包含分子相关元数据如对接蛋白信息、分子骨架专利文件等。在执行筛选的流程中,会有大量的简单或复杂的算法运行于分子数据之上。算法或是独立于各个分子,或是分子批量筛选。
由于有大量数据信息的存在,相关技术中的筛选流程的构建非常困难,筛选步骤中产生的数据无法被高效访问,而且流程的串联依赖于各种非标准化的方法建立,导致数据综合分析和复盘不能统一,数据分析工作量庞大,效率低。
发明内容
为解决或部分解决相关技术中存在的问题,本申请提供一种分子数据存储方法及装置、应用方法及装置,能够对分子的所有相关数据实现方便、有效的管理,而且方便了用户对这些数据的查询及使用。
本申请的第一个方面提供了一种分子数据存储方法,该方法包括:接收待处理的分子数据;对分子数据进行校验,得到校验通过的数据;确定校验通过的数据的增量附属数据,增量附属数据包括以下任意一种或多种:结构化增量附属数据、半结构化增量附属数据、非结构化增量附属数据;将校验通过的数据及结构化增量附属数据保存到数据库中;将半结构化增量附属数据和/或非结构化增量附属数据保存到文件中,并将文件的目录索引添加到数据库中,以建立文件与数据库的关联。
本申请的第二个方面提供了一种分子数据存储装置,该装置包括:数据接收模块,分析模块、数据汇总模块、数据管理模块。其中,数据接收模块,用于接收待处理的分子数据;分析模块,用于对分子数据进行校验,得到校验通过的数据;数据汇总模块,用于确定校验通过的数据的增量附属数据,增量附属数据包括以下任意一种或多种:结构化增量附属数据、半结构化增量附属数据、非结构化增量附属数据;数据管理模块,用于将校验通过的数据及结构化增量附属数据保存到数据库中;将半结构化增量附属数据和/或非结构化增量附属数据保存到文件中,并将文件的目录索引添加到数据库中,以建立文件与数据库的关联。
本申请的第三个方面提供了一种分子数据应用方法,该方法包括:接收用户通过API提交的计算方法;获取与计算方法相关的计算数据,计算数据包括从数据库和/或文件中获取的计算数据;数据库中存储有分子数据及其结构化增量附属数据,文件中存储有分子数据的半结构化增量附属数据和/或非结构化增量附属数据,并且数据库中包含文件的目录索引;利用计算方法对计算数据进行计算,得到计算结果;将计算结果保存到数据库和/或文件中。
本申请的第四个方面提供了一种分子数据应用装置,该装置包括:应用接口模块,用于接收用户提交的计算方法;计算数据获取模块,用于获取与计算方法相关的计算数据,计算数据包括从数据库和/或文件中获取的计算数据;数据库中存储有分子数据及其结构化增量附属数据,文件中存储有分子数据的半结构化增量附属数据和/或非结构化增量附属数据,并且数据库中包含文件的目录索引;计算处理模块,用于利用计算方法对计算数据进行计算,得到计算结果,并将计算结果保存到数据库和/或文件中。
本申请的第五方面提供了一种电子设备,包括:处理器;存储器,其上存储有可执行代码,当上述可执行代码被处理器执行时,使得处理器执行上述方法。
本申请的第六方面还提供了一种计算机可读存储介质,其上存储有可执行代码,当可执行代码被电子设备的处理器执行时,使处理器执行上述方法。
本申请的第七方面还提供了一种计算机程序产品,包括可执行代码,可执行代码被处理器执行时实现上述方法。
本申请实施例提供的分子数据存储方法及装置,对待处理的分子数据进行校验,对校验通过的数据确定其增量附属数据,针对增量附属数据可以包括一种或多种不同类型的数据这一特点,根据其类型不同采用不同的存储方式,将校验通过的数据及与其相关的结构化分子数据保存到数据库中,将与其相关的半结构化分子数据和非结构化分子数据保存到文件中,并将文件的目录索引添加到数据库中,建立起文件与数据库的关联,从而对分子的所有相关数据实现了方便、有效的管理,而且方便了后续用户对这些数据的查询和使用。
本申请实施例提供的分子数据应用方法及装置,通过应用程序接口(ApplicationProgramming Interface,简称API)接收用户提交的计算方法,比如量子化学算法、计算化学算法、AI模型算法等,基于上述对分子数据及其不同类型的增量附属数据的有效存储及关联关系,获取与该计算方法相关的计算数据,进行相应计算得到计算结果,将计算结果保存到数据库或文件中,从而使计算结果也得到了有效的存储。
进一步地,本申请的技术方案不仅支持本地计算,还可将部分或全部数据提交到远端集群服务器进行相关计算,大大提升了数据的计算能力,从而满足用户的多种不同计算需求。
进一步地,本申请的技术方案还可以通过API接收用户提交的查询信息,可以根据不同的查询信息,比如分子子结构、分子相似性、分子属性参数等进行查询,从数据库中读取数据,并展现读出的数据,方便了用户对分子数据的查询及使用。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
通过结合附图对本申请示例性实施方式进行更详细地描述,本申请的上述以及其它目的、特征和优势将变得更加明显,其中,在本申请示例性实施方式中,相同的参考标号通常代表相同部件。
图1示意性示出了根据本申请实施例的可以应用分子数据存储方法及装置、应用方法及装置的一种示例性系统架构;
图2示意性示出了根据本申请实施例的分子数据存储方法的一种流程图;
图3示意性示出了本申请实施例中的分子维度模型示意图;
图4示意性示出了根据本申请实施例的分子数据应用方法的一种流程图;
图5示意性示出了根据本申请实施例的分子数据存储装置的一种结构框图;
图6示意性示出了根据本申请实施例的分子数据应用装置的一种结构框图;
图7示意性示出了根据本申请实施例的分子数据应用装置的另一种结构框图;
图8示意性示出了实现本申请实施例的一种电子设备的方框图。
具体实施方式
下面将参照附图更详细地描述本申请的实施方式。虽然附图中显示了本申请的实施方式,然而应该理解,可以以各种形式实现本申请而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本申请更加透彻和完整,并且能够将本申请的范围完整地传达给本领域的技术人员。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在此使用的术语“包括”、“包含”等表明了特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
应当理解,尽管在本申请可能采用术语“第一”、“第二”、“第三”等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在对本申请的技术方案进行描述之前,先对本申请涉及的本领域的部分技术术语进行说明。
数据仓库,是存储结构化数据,用于支持报表编制、构建数据集市、以及商业智能的核心组件。
JS对象简谱(JavaScript Object Notation,简称JSON),是一种轻量级的数据交换格式。JSON是基于欧洲计算机协会制定的js规范(ECMAScript)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。JSON易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
简化分子线性输入规范(simplified molecular input line entry system,简称smiles),是一种用ASCII字符串明确描述分子结构的规范。smiles字符串可以被多种分子编辑软件导入并转换成二维图形或分子的三维模型。
由于药物研发中早期筛查会有来自AI生成的、以及对大型化合物库进行虚拟筛选产生的大批量的分子数据,这些分子数据不仅数量庞大,而且类型繁多,在缺失分子数据存储系统的情况下,筛选流程的构建会很困难,筛选步骤中产生的数据也无法被高效访问,数据综合分析和复盘也很难统一起来,使得数据分析效率极低。而相关技术中的关系型数据库、数据仓库与文件存储(对象存储)系统,都无法支持对分子数据的完整存储。关系型数据库多是应用于OLTP(联机事务处理),支持事务处理;数据仓库应用于OLAP(联机分析处理),能支持数据分析,但是无法支持半结构与非结构化数据存储,无法用于分子筛选算法的运行。
为此,本申请实施例提供一种分子数据存储方法及装置,对待处理的分子数据,首先对其进行校验,针对校验通过的数据,不仅存储该分子数据本身,还要确定其增量附属数据,并且考虑到其增量附属数据可以包括一种或多种不同类型的数据这一特点,根据数据类型的不同采用不同的存储方式,将校验通过的数据及与其相关的结构化数据保存到数据库中,将与其相关的半结构化分子数据和非结构化分子数据保存到文件中,并将文件的目录索引添加到数据库中,并建立起文件与数据库的关联,使分子的所有类型数据都能够得到有效存储,尤其适用于药物研发等复杂且长周期的具体使用场景。
以下将通过图1至图8对本申请实施例的一种分子数据存储方法及装置、应用方法及装置进行详细描述。
图1示意性示出了根据本申请实施例的可以应用分子数据存储方法及装置、应用方法及装置的一种示例性系统架构。需要注意的是,图1所示仅为可以应用本申请实施例的系统架构的示例,以帮助本领域技术人员理解本申请的技术内容,但并不意味着本申请实施例不可以用于其他设备、系统、环境或场景。
参见图1,根据该实施例的系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与其他终端设备和服务器105进行交互,以接收或发送信息等,如发送计算方法、计算数据等。终端设备101、102、103可以安装有各种应用,例如,药物开发应用、材料设计应用、网页浏览器应用、数据库类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等应用等。
终端设备101、102、103包括但不限于智能台式电脑、平板电脑、膝上型便携计算机等等可以支持建模、分析计算、设计、上网等功能的电子设备。
服务器105可以接收计算方法、计算数据等,还可以发送计算结果给终端设备101、102、103。例如,服务器105可以为后台管理服务器、服务器集群等。
需要说明的是,终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和云端。
本申请实施例提供一种分子数据应用方法及装置,利用上述数据库及文件,方便用户对分子数据的使用及查询,而且可以将计算结果保存到数据库及文件中。
如图2所示,图2示出了根据本申请实施例的分子数据存储方法的一种流程图。
该实施例的分子数据存储方法包括操作S210~操作240。
在操作210,接收待处理的分子数据。
需要说明的是,待处理的分子数据可以是药物研发中涉及的任意分子数据,比如,药物研发过程中,涉及到的分子设计、合成、实验测试、评估产生的关于分子的smiles、分子质量、分子活性数据等。
在操作220,对分子数据进行校验,得到校验通过的数据。
在本申请实施例中,可以根据分子数据的维度进行校验。具体地,可以根据分子维度模型确定分子数据的维度,根据确定的维度对该分子数据进行校验,得到校验通过的数据。
分子维度模型可以根据分子数据的类型来确定,分子维度模型可以包括:分子基本性质维度表和一个或多个分子属性维度表。其中,分子属性维度表包括:计算属性维度表和实验属性维度表,分子基本性质维度表中包含各分子属性维度表的标识字段。
如图3所示,示意性示出了本申请实施例中的分子维度模型示意图,在该示例中,Molecule为分子基本性质维度表,其中分子的基本属性为分子二维结构式smiles,inchi-key为基于smiles哈希运算得到的标签,其他的id均为关联标识,即各分子属性维度表的标识字段。相应的分子属性维度表比如有:FEPResults、Structure、Activity、ADMETResults、Synthesis Results等。在FEPResults维度表中,pdb指药物研究中使用的靶向蛋白,dg值为该分子与蛋白的结合自由能,fep_method指使用的计算方法。在ADMETResults维度表中,clogp指分子疏水常熟,caco-2指caco-2细胞系吸收能力,water_solubility指分子的水溶性。在Structure维度表中name指分子三维结构文件的名字,file_path是文件存储路径。在SynthesisResults维度表中,weight、purity分别指分子合成的质量与纯度,report记录了合成的报告信息。Activity维度表中,记录了不同活性性质使用不同方法测试的值,其中,name用于自定义名字标识该记录,property指测试的活性性质,method则记录了活性实验的方法。
需要说明的是,上述图3仅仅是本申请实施例中分子维度模型的一个简单示例,并不用于限于分子维度模型的具体结构。
在对分子数据进行校验时,可以根据该分子数据的维度确定其包含的各字段及其属性信息,根据各字段的属性信息对字段进行校验,得到校验通过的数据。
具体地,可以根据其维度,索引到不同的数据明细表,根据数据明细表中定义的字段属性,如是否为必须包含的字段、字段类型(如整数、浮点数或字符串)等,对分子数据进行校验。
在操作230,确定校验通过的数据的增量附属数据。
增量附属数据是指与分子数据相关的分子本身的基础数据之外的数据,比如分子状态数据(比如分子是否包含FEP数据、是否包含实验数据、分子指纹)、分子状态对应的具体信息数据等,具体可根据需要进行设置。
增量附属数据一般可用于批量分子的筛选过滤,比如筛选已经进行过某一类计算或实验的分子。
对于分子数据的增量附属数据的类型可以包括以下任意一种或多种类型:结构化分子数据、半结构化分子数据、非结构化分子数据。
通过对分子数据的增量附属数据的确定,可以更丰富、全面地获取该分子数据的所有相关数据信息。
在操作240,将校验通过的数据及结构化增量附属数据保存到数据库中;将半结构化增量附属数据和/或非结构化增量附属数据保存到文件中,并将文件的目录索引添加到数据库中,以建立文件与数据库的关联。
进一步地,在对分子数据进行校验过程中,如果该分子数据校验错误,还可以进行报错,比如,采用显示报错信息等方式,以使操作人员及时了解该分子数据是否正确,方便对该分子数据的处理,比如可以对该分子数据进行更正、删除等处理。
本申请实施例提供的分子数据存储方法及装置,对待处理的分子数据进行校验,对校验通过的数据确定其增量附属数据,针对增量附属数据可以包括一种或多种不同类型的数据这一特点,根据其类型不同采用不同的存储方式,将校验通过的数据及与其相关的结构化分子数据保存到数据库中,将与其相关的半结构化分子数据和非结构化分子数据保存到文件中,并将文件的目录索引添加到数据库中,建立起文件与数据库的关联,从而对分子的所有相关数据实现了方便、有效的管理,而且方便了后续用户对这些数据的查询和使用。
相应地,基于上述通过数据库及文件对分子数据及其增量附属数据的存储,本申请实施例还提供一种分子数据应用方法,为用户对分子数据的使用提供了有效的解决方案。
如图4所示,示意性示出了根据本申请实施例的分子数据应用方法的一种流程图。
该实施例的分子数据应用方法包括以下操作:
在操作410,接收用户通过API提交的计算方法。
计算方法比如可以是但不限于以下任意一种:量子化学算法、计算化学算法、AI模型算法等。
在具体应用中,可以采用RESTFUL、或者graphql等风格的API,对此本申请实施例不做限定。
RESTFUL(Representational State Transfer)是一种网络应用程序的设计风格和开发方式,基于超文本传输协议(Hyper Text Transfer Protocol,简称HTTP),可以使用XML格式定义或JSON格式定义。RESTFUL适用于移动互联网厂商作为业务接口的场景,实现第三方OTT调用移动网络资源的功能,动作类型为新增、变更、删除所调用资源。
GraphQL是针对Graph(图状数据)进行查询特别有优势的Query Language(查询语言),所以叫做GraphQL。它跟SQL的关系是共用QL后缀。GraphQL可以选择NoSQL类型的数据库、SQL类型的数据库或者其它多种存储方式。
在操作420,获取与计算方法相关的计算数据,计算数据包括从数据库和/或文件中获取的计算数据。
需要说明的是,此处的数据库和文件是指上述存储有分子数据及其结构化增量附属数据的数据库和文件,而且数据库中包含文件的目录索引。
进一步地,与计算方法相关的计算数据还可以包括用户输入的计算数据。
也就是说,针对用户提交的计算方法需要参与计算的计算数据可以部分来自于已经存储的数据,比如存储在文件存储系统的分子三维结构文件、或者在数据库中存储的分子物化性质数据等,部分来自于用户输入的计算数据,比如用于指示使用哪一批分子数据进行计算的参数配置信息等。当然,也可以全部来自于上述文件和数据库,对此本申请实施例不做限定。
在操作430,利用计算方法对计算数据进行计算,得到计算结果。
需要说明的是,在具体应用中,可以将部分或全部计算在本地完成,或者将部分或全部计算提交到远端集群服务器进行计算,并接收远端集群服务器返回的计算结果。比如,对于轻量的计算,可以在本地完成计算,并实时返回计算结果;对于复杂、消耗较长的计算任务,可以采用异步计算,将持续监控计算进度与计算结果。
在操作440,将计算结果保存到数据库和/或文件中。
进一步地,还可以对计算出错的错误信息进行存储,比如保存到日志文件中。
本申请实施例提供的分子数据应用方法及装置,通过接收用户提交的计算方法,比如量子化学算法、计算化学算法、AI模型算法等,基于上述对分子数据及其不同类型的增量附属数据的有效存储及关联关系,获取与该计算方法相关的计算数据,进行相应计算得到计算结果,将计算结果保存到数据库或文件中,从而使计算结果也得到了有效的存储。
在本申请分子数据应用方法的另一实施例中,还可利用上述数据库及文件,方便用户对分子数据信息的查询。具体地,接收用户通过API提交的查询信息,查询信息可以包括但不限于以下任意一种或多种:分子子结构、分子相似性、分子属性参数等;根据查询信息从数据库中读取数据;展现读出的数据。
在进行查询时,可以根据查询信息生成查询策略,并根据查询策略从数据库中读出数据;对读出的数据进行格式转换。
比如,数据库中已经存在了100万条分子数据,并且每条数据都带有smiles属性,该属性描述了分子的二维结构,可以用于进行子结构匹配搜索。当使用查询功能时,可以将一个描述了子结构信息的smiles作为查询信息,调用API(应用程序接口)将该查询信息提交到系统。系统将运行子结构匹配搜索算法,进行100万条数据的遍历筛选,并返回最终匹配上的分子数据。如果提交的查询信息包含子结构和“分子质量大于100”的查询信息,则系统将自动识别,并生成查询优化的策略,即优先找出分子质量大于100的分子,再对这批分子运行子结构搜索算法进行过滤查询。一个分子的结构可以由smiles描述,也可以使用sdf文件格式或者mol文件格式,为其生成带坐标描述的三维结构。根据查询信息中指定的数据格式要求,系统将自动将smiles转换成特定格式。
需要说明的是,查询过程是一个通用能力,根据具体查询字段进行处理。例如,对分子子结构进行查询,可以将分子子结构片段填入查询信息中,通过API提交。系统将自动对数据库中所有分子,基于分子子结构搜索算法的查询策略,进行数据检索。根据展示配置,系统将支持对smiles按照不同的渲染进行格式转换,也支持转换为sdf等其他的分子数据格式。
相应地,本申请实施例还提供一种分子数据存储装置,如图5所示,在一种非限制性实施例中,该分子数据存储装置500包括:数据接收模块510、分析模块520、数据汇总模块530、数据管理模块540。其中:
数据接收模块510用于接收待处理的分子数据。
分析模块520用于对分子数据进行校验,得到校验通过的数据;
数据汇总模块530用于确定校验通过的数据的增量附属数据,增量附属数据包括以下任意一种或多种:结构化增量附属数据、半结构化增量附属数据、非结构化增量附属数据。
数据管理模块540用于将校验通过的数据及结构化增量附属数据保存到数据库中;将半结构化增量附属数据和/或非结构化增量附属数据保存到文件中,并将文件的目录索引添加到数据库中,以建立文件与数据库的关联。
在一种非限制性实施例中,上述分析模块520可以包括:数据解析单元和数据校验单元。
其中,数据解析单元用于根据分子维度模型确定分子数据的维度。
数据校验单元用于根据确定的分子数据的维度对分子数据进行校验,得到校验通过的数据。
上述数据校验单元可以包括:数据明细确定单元和字段校验单元。
其中,数据明细确定单元用于根据分子数据的维度确定分子数据包含的各字段及其属性信息。
字段校验单元用于根据各字段的属性信息对该字段进行校验,得到校验通过的数据。
在具体应用中,分子维度模型可以包括:分子基本性质维度表和一个或多个分子属性维度表。
其中,分子属性维度表可以包括:计算属性维度表和实验属性维度表,分子基本性质维度表中可以包含各分子属性维度表的标识字段。
利用本申请实施例提供的分子数据管理装置,可以对分子数据及其各种不同类型的增量附属数据实现方便、有效的管理,而且方便后续用户对这些数据的查询和使用,尤其适用于药物研发等复杂且长周期的具体使用场景。
相应地,本申请实施例还提供一种分子数据应用装置,可以利用上述存储分子数据及其增量附属数据的数据库及文件,向用户提供计算及查询功能。
如图6所示,在一种非限制性实施例中,该分子数据应用装置600包括以下各模块:应用接口模块610、计算数据获取模块620和计算处理模块630。
应用接口模块610,用于接收用户提交的计算方法,计算方法包括但不限于以下任意一种:量子化学算法、计算化学算法、AI模型算法等。
计算数据获取模块620,用于获取与计算方法相关的计算数据。
计算处理模块630,用于利用计算方法对计算数据进行计算,得到计算结果,并将计算结果保存到数据库和/或文件中。
需要说明的是,计算数据具体可以包括从数据库和/或文件中获取的计算数据。数据库和文件即上述分子数据存储装置建立的数据库及文件,数据库中存储有分子数据及其结构化增量附属数据,文件中存储有分子数据的半结构化增量附属数据和/或非结构化增量附属数据,并且数据库中包含文件的目录索引。
进一步地,计算数据还可以包括用户输入的计算数据,比如用于指示使用哪一批分子数据进行计算的参数配置信息等。
在具体应用中,上述计算处理模块630可以包括本地计算单元、和/或远程计算单元。
其中,本地计算单元用于利用计算方法对数据中的部分或全部进行本地计算,得到计算结果。
远程计算单元用于将计算方法及计算数据中的部分或全部提交到远端集群服务器进行计算,并接收远端集群服务器返回的计算结果。
比如,对于轻量的计算,可以在本地完成计算,并实时返回计算结果。对于复杂、消耗较长的计算任务,可以采用异步计算,将持续监控计算进度与计算结果。
如图7所示,在另一种非限制性实施例中,与图6所示实施例不同的是,该分子数据应用装置600还可进一步包括:查询与导出模块640和显示模块650。
在该实施例中,应用接口模块610还用于接收用户提交的查询信息。
相应地,查询与导出模块640用于根据查询信息从数据库和/或文件中读取数据。显示模块650用于展现查询与导出模块640读出的数据。
需要说明的是,查询信息可以包括但不限于以下任意一种或多种:分子子结构、分子相似性、分子属性参数等。
上述查询与导出模块640具体可以包括:过滤排序单元和格式转换单元。
其中,过滤排序单元用于根据查询信息生成查询策略,并根据查询策略从数据库和/或文件中读出数据。
格式转换单元用于对过滤排序单元读出的数据进行格式转换。
关于上述实施例中的分子数据存储装置500和分子数据应用装置600,其中各个模块、单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不再做详细阐述说明。
需要说明的是,在具体应用中,还可以将上述分子数据存储装置500和分子数据应用装置600集成在一个系统中,将该系统分为存储层、业务层、展示层,上述分子数据存储装置500和分子数据应用装置600中的模块、单元可以布设在业务层和展示层,数据库和文件设置在存储层。对于数据的创建及使用可以分别设置不同的权限,以保证数据的安全性。
本申请的另一方面还提供了一种电子设备,该电子设备可以实施本申请实施例提供的分子数据存储方法、或者实施本申请实施例提供的分子数据应用方法。
如图8所示,图8示意性示出了实现本申请实施例的电子设备的方框图。
参见图8,电子设备800包括存储器810和处理器820。
处理器810可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器820可以包括各种类型的存储单元,例如系统内存、只读存储器(ROM)和永久存储装置。其中,ROM可以存储处理器820或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施方式中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。另外一些实施方式中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。系统内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。系统内存可以存储一些或者所有处理器在运行时需要的指令和数据。此外,存储器810可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(例如DRAM,SRAM,SDRAM,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。在一些实施方式中,存储器810可以包括可读和/或写的可移除的存储设备,例如激光唱片(CD)、只读数字多功能光盘(例如DVD-ROM,双层DVD-ROM)、只读蓝光光盘、超密度光盘、闪存卡(例如SD卡、min SD卡、Micro-SD卡等)、磁性软盘等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。
存储器810上存储有可执行代码,当可执行代码被处理器820处理时,可以使处理器820执行上述实施例述及的方法中的部分或者全部。
此外,根据本申请的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本申请的上述方法中部分或全部操作的计算机程序代码指令。
或者,本申请还可以实施为一种计算机可读存储介质(或非暂时性机器可读存储介质或机器可读存储介质),其上存储有可执行代码(或计算机程序或计算机指令代码),当可执行代码(或计算机程序或计算机指令代码)被电子设备(或服务器等)的处理器执行时,使处理器执行根据本申请的上述方法的各个操作的部分或全部。
以上已经描述了本申请的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文披露的各实施例。

Claims (16)

1.一种分子数据存储方法,其特征在于,所述方法包括:
接收待处理的分子数据;
对所述分子数据进行校验,得到校验通过的数据;
确定所述校验通过的数据的增量附属数据,所述增量附属数据包括以下任意一种或多种:结构化增量附属数据、半结构化增量附属数据、非结构化增量附属数据;
将所述校验通过的数据及所述结构化增量附属数据保存到数据库中;将所述半结构化增量附属数据和/或所述非结构化增量附属数据保存到文件中,并将所述文件的目录索引添加到所述数据库中,以建立所述文件与所述数据库的关联。
2.根据权利要求1所述的方法,其特征在于,所述对所述分子数据进行校验,得到校验通过的数据包括:
根据分子维度模型确定所述分子数据的维度;
根据所述维度对所述分子数据进行校验,得到校验通过的数据。
3.根据权利要求2所述的方法,其特征在于,所述根据所述维度对所述分子数据进行校验,得到校验通过的数据包括:
根据所述维度确定所述分子数据包含的各字段及其属性信息;
根据各字段的属性信息对所述字段进行校验,得到校验通过的数据。
4.根据权利要求2所述的方法,其特征在于,所述分子维度模型包括:分子基本性质维度表和一个或多个分子属性维度表,所述分子属性维度表包括:计算属性维度表和实验属性维度表,所述分子基本性质维度表中包含各分子属性维度表的标识字段。
5.一种分子数据应用方法,其特征在于,所述方法包括:
接收用户通过API提交的计算方法;
获取与所述计算方法相关的计算数据,所述计算数据包括从数据库和/或文件中获取的计算数据;所述数据库中存储有分子数据及其结构化增量附属数据,所述文件中存储有所述分子数据的半结构化增
量附属数据和/或非结构化增量附属数据,并且所述数据库中包含所述文件的目录索引;
利用所述计算方法对所述计算数据进行计算,得到计算结果;
将所述计算结果保存到所述数据库和/或所述文件中。
6.根据权利要求5所述的方法,其特征在于,所述计算方法包括以下任意一种或多种:量子化学算法、计算化学算法、AI模型算法。
7.根据权利要求5所述的方法,其特征在于,所述计算数据还包括:用户输入的计算数据。
8.根据权利要求5所述的方法,其特征在于,所述利用所述计算方法对所述计算数据进行计算,得到计算结果包括:
利用所述计算方法对所述数据中的部分或全部进行本地计算,得到计算结果;和/或
将所述计算方法及所述数据中的部分或全部提交到远端集群服务器进行计算,并接收所述远端集群服务器返回的计算结果。
9.根据权利要求5至8任一项所述的方法,其特征在于,所述方法还包括:
接收用户通过API提交的查询信息;
根据所述查询信息从所述数据库中读取数据;
展现读出的数据。
10.根据权利要求9所述的方法,其特征在于,所述查询信息包括以下任意一种或多种:分子子结构、分子相似性、分子属性参数。
11.根据权利要求9所述的方法,其特征在于,所述根据所述查询信息从所述数据库中读取数据包括:
根据所述查询信息生成查询策略,并根据所述查询策略从所述数据库中读出数据;
对读出的数据进行格式转换。
12.一种分子数据存储装置,其特征在于,所述装置包括:数据接收模块,分析模块、数据汇总模块、数据管理模块;
所述数据接收模块,用于接收待处理的分子数据;
所述分析模块,用于对所述分子数据进行校验,得到校验通过的数据;
所述数据汇总模块,用于确定所述校验通过的数据的增量附属数据,所述增量附属数据包括以下任意一种或多种:结构化增量附属数据、半结构化增量附属数据、非结构化增量附属数据;
所述数据管理模块,用于将所述校验通过的数据及所述结构化增量附属数据保存到数据库中;将所述半结构化增量附属数据和/或所述非结构化增量附属数据保存到文件中,并将所述文件的目录索引添加到所述数据库中,以建立所述文件与所述数据库的关联。
13.一种分子数据应用装置,其特征在于,所述装置包括:
应用接口模块,用于接收用户提交的计算方法;
计算数据获取模块,用于获取与所述计算方法相关的计算数据,所述计算数据包括从数据库和/或文件中获取的计算数据;所述数据库中存储有分子数据及其结构化增量附属数据,所述文件中存储有所述分子数据的半结构化增量附属数据和/或非结构化增量附属数据,并且所述数据库中包含所述文件的目录索引;
计算处理模块,用于利用所述计算方法对所述计算数据进行计算,得到计算结果,并将所述计算结果保存到所述数据库和/或所述文件中。
14.一种电子设备,其特征在于,包括:
处理器;以及
存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如权利要求1-4中任一项所述的方法、或者执行如权利要求5-11中任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求1-4中任一项所述的方法、或者执行如权利要求5-11中任一项所述的方法。
16.一种计算机程序产品,其特征在于,包括可执行代码,所述可执行代码被处理器执行时实现根据权利要求1-4中任一项所述的方法、或者实现根据权利要求5-11中任一项所述的方法。
CN202111669518.0A 2021-12-30 2021-12-30 分子数据存储方法及装置、应用方法及装置 Pending CN114300064A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111669518.0A CN114300064A (zh) 2021-12-30 2021-12-30 分子数据存储方法及装置、应用方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111669518.0A CN114300064A (zh) 2021-12-30 2021-12-30 分子数据存储方法及装置、应用方法及装置

Publications (1)

Publication Number Publication Date
CN114300064A true CN114300064A (zh) 2022-04-08

Family

ID=80973743

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111669518.0A Pending CN114300064A (zh) 2021-12-30 2021-12-30 分子数据存储方法及装置、应用方法及装置

Country Status (1)

Country Link
CN (1) CN114300064A (zh)

Similar Documents

Publication Publication Date Title
Zhang et al. UniBench: a benchmark for multi-model database management systems
Aboutorabiª et al. Performance evaluation of SQL and MongoDB databases for big e-commerce data
US8874600B2 (en) System and method for building a cloud aware massive data analytics solution background
US10242406B2 (en) Analytics integration workbench within a comprehensive framework for composing and executing analytics applications in business level languages
US9460415B2 (en) Determining semantic information of business applications
US8892545B2 (en) Generating a compiler infrastructure
US20110066457A1 (en) Analytics integration server within a comprehensive framework for composing and executing analytics applications in business level languages
US9348874B2 (en) Dynamic recreation of multidimensional analytical data
US20070239799A1 (en) Analyzing log files
US20110066589A1 (en) Analytics information directories within a comprehensive framework for composing and executing analytics applications in business level languages
US9043344B1 (en) Data mining and model generation using an in-database analytic flow generator
Ivanov et al. Big data benchmark compendium
Zhang et al. Holistic evaluation in multi-model databases benchmarking
CN110837520A (zh) 一种数据处理方法、平台及系统
US20110145005A1 (en) Method and system for automatic business content discovery
GB2513329A (en) Method and system for scoring data in a database
CN112925757A (zh) 一种追踪智能设备操作日志的方法、设备、存储介质
WO2021213154A1 (zh) 区块链的数据处理方法、系统、终端和计算机可读存储介质
US20180121526A1 (en) Method, apparatus, and computer-readable medium for non-structured data profiling
CN115905630A (zh) 一种图数据库查询方法、装置、设备及存储介质
CN114297204A (zh) 一种异构数据源的数据存储、检索方法及装置
WO2023123287A1 (zh) 分子数据存储方法及装置、应用方法及装置
US9069373B2 (en) Generating a runtime framework
US20150178367A1 (en) System and method for implementing online analytical processing (olap) solution using mapreduce
CN114385722A (zh) 接口属性的一致性校验方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination