从简化分子输入线性进入系统反应生成有机合成程序的制作方法

文档序号:34067672发布日期:2023-05-06 15:56阅读:63来源:国知局
从简化分子输入线性进入系统反应生成有机合成程序的制作方法
从简化分子输入线性进入系统反应生成有机合成程序
1.本发明总体上涉及一种用于生成有机合成程序的方法,并且更具体地涉及一种用于从简化分子输入线性进入系统(下文称为“smiles”)生成有机合成程序的方法。本发明还涉及一种用于从简化分子输入线性进入系统生成有机合成程序的系统,以及一种计算机程序产品。
2.根据本发明的一个方面,可以提供一种用于从简化分子输入线性进入系统(下文称为“smiles”)字符串生成有机合成程序的计算机实现的方法。该方法可以包括接收多个smiles字符串,其第一部分描述期望的化学产物,以及其第二剩余部分描述所需的反应物,以及通过深度机器学习模型系统预测用于产生期望的化学产物的有机合成程序的程序步骤,该深度机器学习模型系统用描述相应期望的化学产物、所需的反应物和相关程序步骤的smiles字符串集合作为训练数据来训练。由此,该集合可以从相关联的化学文档的语料库中提取。预测的程序步骤可以是人类可读的。
3.该方法还可以包括接收用于对预测程序步骤的修改的修改信号,存储所接收的多个简化分子输入线性进入系统字符串、预测的程序步骤和对预测程序步骤的修改。
4.根据本发明的另一方面,可以提供一种用于从简化分子输入线性进入系统字符串生成有机合成程序的系统。该系统可包括:第一接收部件,适合于接收多个smiles字符串,其第一部分描述期望的化学产物,其第二剩余部分描述所需的反应物,以及预测程序步骤;以及预测部件,适合于通过深度机器学习模型系统预测用于产生期望的化学产物的有机合成程序的程序步骤,该深度机器学习模型系统用描述相应期望的化学产物、所需的反应物和相关程序步骤的smiles字符串集合作为训练数据来训练。由此,该集合可以从相关联的化学文档的语料库中提取。预测的程序步骤可以是人类可读的。
5.该系统还可以包括:第二接收部件,适合于接收用于对预测的程序步骤的修改的修改信号;第一存储部件,适合于存储多个所接收的简化分子输入线性进入系统字符串、预测的程序步骤和对预测的程序步骤的修改。
6.用于从多个smiles字符串生成有机合成程序的所提出的计算机实现的方法以及相关系统可以提供多个优点、技术效果、贡献和/或改进:
7.所描述的方法和系统可解决生成能够由人类理解的命令序列和结构化格式以及潜在地在转换之后能够由计算机系统理解的问题,该计算机系统链接到能够执行这些命令的化学机器人,这些命令可使能执行化学合成的过程自动化并且同时使能人类监督。
8.这可以通过以下方式来实现:以常见化学形式(例如,smiles)向合适的经训练的机器学习模型提供参与该反应的多个分子,特别是反应产物和所需的反应物,并且然后接收执行该产物该化学产物所需的人类能够理解的动作(即,程序步骤或配方)序列。预测的动作可以被呈现给人类专家或监督者用于修改和验证,并且然后可以被存储为计算机结构化形式的艺术数据,例如,json(javascript对象符号)、yaml(“yaml ain’t markup language”)、protobuf(协议缓冲器)序列化,在数据存储装置中,可以从该数据存储装置拾取它们用于由用于化学反应的机器人阵列执行以产生所请求的化学产物。
9.经训练的人工智能系统(即,机器学习(ml)系统)可有助于基于相关联的化学文档
(即,文献)的语料库(即,化学文档的主体)将smiles字符串解释为可能的和/或最优的处理步骤序列,其中还可描述描述特定化学产物的smiles字符串和用于合成期望的化学产物的相关和推荐的程序性步骤的组合。机器学习系统可用于预测程序性步骤序列,即使没有描述smiles字符串的特定集合与所有所需的程序性步骤之间的直接对应关系。
10.ml系统的训练数据的源可以是很多的。化学反应程序已经在期刊、教科书、科学文章、会议论文中经由因特网、私人研究数据库以及专利文献发表了很长时间。训练数据可以手动地为ml系统准备或可以自动地收集,即smiles字符串以及相关的反应程序。作为示例,一些源可以被命名:beilstein数据库,包括多于100mio.化合物、45mio.化学反应和500mio.实验事实的reaxys数据库,elsevier的scopus数据库,皇家化学学会(royal society of chemistry)的chemspider数据库,化学文摘社(chemical abstract service(cas))的scifinder数据库,科技信息网(science and technical information network)(cas的stn international),仅举几例。beilstein数据库通过可获得。是elsevier properties sa的注册商标。
11.然而,即使有现代科学家通过化学数据库可以获得的信息量,人工合成途径(例如,新药物)是不切实际的,是极其耗时且昂贵的。
12.因此,所提出的方法和相关系统可以代表一种有效且优雅的方式来跨越理论上可能的复合选项与实际实验成功之间的间隙。对于许多研究者而言,考虑到上述约束,这可能是开发新药物和/或化合物(以及其他化合物)的唯一实际选择。
13.因此,这个概念可以使得对于湿实验室(wet-lab)化学实验以及以自动方式使用大量现有文档来产生期望的化学产物并且同时减少所需实验的数量能够实现更高的生产率。通过使用所产生的化学产物的附加分析,可以实现机器学习系统的潜在重新训练以及使用(至少部分是人类干预)闭环、自优化系统方法和相关系统的化学实验的成功重复。
14.在下文中,将描述本发明的方法的附加实施例,其也可应用于相关系统。
15.根据扩展的实施例,该方法还可以包括将经修改的预测程序步骤转换成能够由化学机器人解释的执行步骤序列,并且存储该执行步骤序列。这样,该方法可以支持期望的化学产物的更多或更少的自动产生。
16.根据一个有利的实施例,该方法还可以包括由该化学机器人执行该执行步骤序列。从而,可根据所接收的smiles字符串的第一部分产生期望的化学产物。这可以在很大程度上绕过人类交互和整个过程。化学专家可以显著地从常规任务中释放。
17.根据该方法的允许实施例,所接收的简化分子输入线性进入系统字符串的第一部分可以涉及组中的至少一个,该组包括聚合物、聚合物添加剂、催化剂、杀虫剂、染料、肥料、人工调味剂和甜味剂、用于基础研究的化合物、拟肽、合成蛋白以及纳米结构。潜在地,还可以解决其他类型的化学产物。因此,大量化学反应产物可广泛用于湿实验室实验而无需人类干预。
18.根据一个优选实施例,该方法还可包括使用smiles字符串集合和相关的经修改的预测程序步骤来重新训练深度机器学习模型系统。这样,所提出的方法和相关系统可能随时间变得更好,并且对于甚至更复杂的实验情况可能需要更少的人类努力。
19.根据另一有用的实施例,该方法还可以包括从文本文档中提取简化分子输入线性进入系统字符串。文本文档可以源自各种不同的源。对于文本文档的分析,可以成功地使用
正则表达式分析和/或自然语言处理技术。
20.根据一个可选的实施例,该方法还可以包括通过深度机器学习模型系统的用户接口或应用编程接口接收多个简化分子输入线性进入系统字符串。因此,所提出的方法不限制简化分子输入线性进入系统字符串的源。例如,通过用户接口输入的源自人的输入可以以与来自另一系统的输入相同的方式被接受。
21.根据该方法的一个有利实施例,接收修改信号还可以包括向用户接口渲染预测的程序步骤,并且接收指示对预测的程序步骤的修改的修改信号。因此,在进行湿实验室实验之前,人类经验可以被包括作为最后的专家采用的策略(resort)。这可以节省在时间和材料方面的宝贵资源。
22.根据该方法的高级实施例,该化学机器人可以是第一化学机器人,并且其中该执行步骤序列针对具有第一约束的第一化学机器人,第一约束特别是以潜在进行的实验的自由度的形式,所述方法还可以包括将所述第一化学机器人的所述执行步骤序列转换成能够由第二化学机器人在第二约束下执行。因此,为了反映技术进步和化学机器人,可以将为特定化学机器人设计的执行步骤序列(例如,作为库变得可用)转换成具有其他约束和能力的另一类型的另一化学机器人。另一方面,如果不同化学机器人的实验选项之间可能存在不兼容性,那么可产生错误消息并且专家可使用对话子系统手动地修改执行步骤序列。
23.因此,并且根据所提出的方法的进一步增强的实施例,能够由第一机器人解释的执行步骤序列可以自动地从用于第一机器人的执行步骤序列转换成能够由第二机器人解释的执行步骤序列。或者,能够由第二化学机器人解释的执行步骤也可直接从程序步骤序列导出。
24.根据一个另外改进的实施例,该方法还可以包括(例如,使用质谱仪)分析通过由机器人执行该执行步骤序列而产生的产物,是否实际上已经产生了期望的化学产物。该方法还可以可选地允许使用上述用户接口修改程序步骤,并且以半自动化方式重试实验。
25.根据另一有利实施例,该方法还可以包括通过预测的程序步骤连同置信因子一起扩展训练数据集以用于确定已经产生期望的化学产物的正面结果,即,指示已执行的程序步骤已经成功。置信因子值可以被输出给用户。
26.根据该方法的另一有利实施例,训练数据还可以包括化学机器人的技术约束数据,即基本上描述化学机器人的选项中的限制。这可以使用广泛地独立于特定化学机器人的元数据来执行。因此,该方面还可解决不同制造商之间的化学机器人的限制。
27.此外,实施例可以采取可从计算机可用或计算机可读介质访问的相关计算机程序产品的形式,该计算机可用或计算机可读介质提供用于由计算机或任何指令执行系统使用或与其结合使用的程序代码。为了本描述的目的,计算机可用或计算机可读介质可以是可以包含用于存储、通信、传播或传输程序以供指令执行系统、装置或设备使用或与其结合使用的装置的任何设备。
附图说明
28.应注意,参考不同的主题描述本发明的实施例。具体地,参照方法类型权利要求描述一些实施例,而参照装置类型权利要求描述其他实施例。然而,本领域的技术人员将从以上和以下描述中得出,除非另外指出,否则除了属于一种类型的主题的特征的任何组合之
外,涉及不同主题的特征之间(具体地,方法类型权利要求的特征与装置类型权利要求的特征之间)的任何组合也被认为是在本文档内公开的。
29.以上定义的方面和本发明的另外的方面从下面将要描述的实施例的示例中是显而易见的,并且参考实施例的示例来解释,但是本发明不限于此。将仅通过举例并参考以下附图描述本发明的优选实施例:
30.图1示出了用于生成有机简化分子输入线性进入系统(下文称为“smiles”)字符串的本发明计算机实现的方法的实施例的框图;
31.图2示出了动作和所涉及的组件的示例性流程;
32.图3示出了以smiles字符串开始并以程序步骤结束的示例性活动流的框图;
33.图4示出了用于从smiles字符串生成有机合成程序的系统的实施例的示例性流程图;
34.图5示出了包括根据图4的系统的计算系统的框图;
35.图6示出了根据本发明的实施例的云计算环境;以及
36.图7示出了根据本发明的实施例的抽象模型层。
具体实施方式
37.在化学、生物化学或药物领域进行用于合成新分子的化学实验是耗时的并且典型地是劳动密集型的。为了部分地自动化此类合成实验,已经引入化学机器人,允许软件控制的实验,该实验被设计为通过该软件控制的实验,用于实验的有限数量的成分可以在例如反应室中反应以产生设计的实验输出,而不是通过人类进行这样的湿实验室实验。当领域专家利用自动化硬件时,他们管理编程机器人以执行特定任务的复杂性。这些任务典型地是专家领域知识的一部分并且代表成功的化学合成的决定性变量。
38.然而,编程(部分)自主的化学机器人硬件可能代表显著的限制,因为这些单元的编程可能需要具有另外的编程技能的高度熟练和精通的化学家。
39.在此背景下,已经公布了一些文件用于通过将分子结构化数据转换成化学概念和描述符的层级表示并检测数据中的常见树状模式来分析一种或多种分子中的分子结构与生物活性之间的关系,并且用于设计和处理用于化学反应的计算模拟(silico)预测的规则流水线。
40.然而,这些方法也没有解决仅提供期望的化学反应产物分子并且将如何进行实验的细节(特别是正确的单独的程序步骤)留给实验自动化系统的问题,因为到目前为止,可能需要太多的人类干预。
41.在本说明书的上下文中,可以使用以下惯例、术语和/或表达:
42.术语

简化分子输入线性进入系统字符串’(smiles字符串)可以以行注释的形式表示已知的规范,用于使用短ascii字符串描述化学物质的结构。smiles字符串可以由大多数分子编辑器输入,用于转换回分子的二维绘图或三维模型。
43.术语

有机合成程序’可以表示湿实验室化学中用于合成化学产物的实验步骤序列。它可以是逐步描述的过程,该过程导致一组化学物质到另一组化学物质的化学转化。最初参与化学反应的物质(或多个物质)称为反应物或试剂。化学反应通常以化学变化为特征,并且它们产生一种或多种产物,这些产物通常具有不同于反应物的特性。反应通常由单
独的子步骤序列(所谓的基本反应)组成,并且关于精确作用过程的信息是反应机制的一部分。用化学方程式描述化学反应,化学方程式象征性地呈现开始材料、最终产物、以及有时中间产物和反应条件。对于化学方程式和/或产物存在若干符号,例如smiles字符串。
44.术语

期望的化学产物’可以表示潜在地由化学机器人产生并能够由smiles字符串描述的化学产物。可能需要一系列程序步骤以从多个反应物开始获得期望的化学产物。
45.术语

深度机器学习(ml)模型系统’可表示使用包括输入层、输出层和多个嵌入层的深度神经网络的人工智能系统。每一层可包括多个节点,所述多个节点通常从来自先前层的多个节点接收输入且将信号传递到后续层。在训练之后并且与过程性编程相反,每个节点可以对所接收的信号执行特定变换并且添加加权函数。ml模型可以用应当从其生成已知输出数据的已知数据来训练(监督学习)。学习方法不使用过程性编程,但可以通过示例实现学习。当分析文本文档以关联化学物质(例如,这里所描述的期望的化学产物)和程序步骤以在一系列步骤之后到达期望的化学产物时,这可能是特别有用的。
46.术语

对预测的程序步骤的修改’可以表示在确定的预测程序步骤的序列中的人工干预,并且将这些步骤转换成能够由化学机器人执行的步骤序列。人类监督者可改变系统建议的程序步骤以便避免不成功的化学实验。此时,人类体验可以与ml系统的机器智能相结合。
47.术语

执行步骤’可表示能够执行的和由化学机器人执行的各个步骤。执行步骤不需要是机器可读的;然而,它们可以是由化学机器人直接执行的有用指令。
48.术语

化学机器人’——也称为

实验室机器人’,可表示适于将生物或化学样品四处移动以合成新颖的化学实体或测试现有化学物质的药物价值的机器人。高级的实验室机器人可以用来使科学的过程完全自动化,如在已知的机器人科学项目中那样。实验室过程适合于机器人自动化,因为这些工艺由重复移动(例如,拾取/放置、液体和固体添加、加热/冷却、混合、摇动、测试)组成。许多实验室机器人通常被称为自动采样器,因为它们的主要任务是为分析设备提供连续样本。
49.术语

技术约束数据’可表示化学机器人的规范的一部分。约束可以例如被定义为试剂的最大数目、当前装载的试剂、可用的辅助试剂(如水或溶剂)和可选择的温度条件。然而,化学机器人的规格示出了各种各样的限制和选择。描述这些特征的特征在此可被解释为约束。
50.在下文中,将给出附图的详细描述。附图中的所有指令是示意性的。首先,给出了用于从smiles字符串生成有机合成程序的本发明计算机实现的方法的实施例的框图。然后,将描述另外的实施例以及相关系统的实施例。
51.图1示出了根据实施例的用于从smiles字符串生成有机合成程序的计算机实现的方法100的优选实施例的框图。
52.方法100包括接收多个smiles字符串(102),其第一部分描述了所需化学产物,第二剩余部分描述了所需反应物。方法100继续,预测104用于通过深度机器学习(ml)模型系统产生所需化学产物的有机合成程序的程序步骤。深度ml模型系统已用描述各所需化学产物、所需反应物和相关程序步骤的smiles字符串组作为训练数据进行训练。这允许从相关联的化学文档(即,化学文献)的语料库中提取集合。可以使用来自图书馆、科学研究、教科书等的任何种类的文献。预测的程序步骤也是人类可读的并且可以为用户显示。
53.另外,方法100包括接收用于预测的程序步骤的修改的修改信号(106)。方法100继续,存储所接收的smiles字符串、预测的程序步骤和预测的程序步骤的修改(108)。可选地(用虚线标记),方法100还包括将经修改的预测程序步骤转换成能够由化学机器人解释的执行步骤序列(110),并且存储该执行步骤序列,例如用于稍后或立即执行(112)。
54.图2示出了实施例中的使用中的方法的动作和所涉及的组件的示例性流程200。系统接收到化学反应产物和反应物的化学式后,查询深度ml模型(202)。这可以产生由深度ml模型系统基于先前训练生成的程序步骤的列表(204)。它可以由用户和监督者显示(未示出)和潜在地修改;然后,206,它可以以机器可读数据结构格式转换并存储以由化学机器人使用(206)。所提出的系统不是化学机器人208的一部分(但可以是化学机器人208的一部分)。执行步骤的机器可读形式(由110、112表示的转换)可以可选地被传输到化学机器人208。如果与所提出的系统相比,化学机器人还可定位在远程位置中——例如,在保护区域中,以便使监督者处于危险中。
55.图3示出了根据实施例的以级联的smiles字符串302开始并以程序步骤314结束的活动的示例性流程300的框图。smiles字符串302(示出了smiles字符串的示例性级联)被用作深度ml模型系统304的输入。它可以指向深度ml模型系统304的输入层306。它可以通过多个隐藏层308嵌入在相应的ml系统模型向量空间中。ml模型系统304的输出层310可以具有指向配方的指针,以产生人类可读的程序步骤314列表形式的期望的化学产物。这些可以存储在数据存储装置312中。
56.此外,这些程序步骤314可以显示给用户/监督者/操作者,用于在程序步骤314可以转换成能够由化学机器人(未示出)解释的执行步骤序列之前进行潜在的修改。
57.下面的表1示出了示例性程序步骤:
[0058][0059]
表1
[0060]
图4示出了根据实施例的用于从smiles字符串生成有机合成程序的系统400的实施例的示例性流程图。系统400包括第一接收部件(具体地,第一接收器402)和预测部件(具体地,深度机器学习模型系统404),第一接收部件适合于接收描述期望的化学产物的smiles字符串,预测部件适合于用于有机合成程序的预测程序步骤以用于产生期望的化学产物。用描述相应期望的化学产物、所需反应物和相关程序步骤的简化smiles字符串集合作为训练数据来训练基于深度ml模型的系统,其中该集合是从相关联的化学文档的语料库中提取的。预测的程序步骤是人类可读的。
[0061]
系统400还包括第二接收部件,具体是第二接收器406,适合于接收用于对预测的程序步骤进行修改的修改信号。系统400包括第一存储部件,具体是第一存储单元408,适合于存储所接收的smiles字符串、预测的程序步骤和预测的程序步骤的修改。
[0062]
系统400包括转换部件,具体是转换器410,该转换部件适合于将经修改的预测的程序步骤转换成能够由化学机器人解释的执行步骤序列。系统400包括适合于存储执行步骤序列的第二存储部件,具体是第二存储单元412。第一存储单元408和第二存储单元412可
以与相关的存储管理系统相同。
[0063]
可以注意到,所提及的单元和模块可以直接或间接地互连以用于信息和/或信号交换。可替代地,第一接收器402、基于深度ml模型的系统404、第一存储单元408、以及可选地(用虚线标记的)转换器410、以及第二级单元412可以经由系统内部总线系统414互连。
[0064]
本发明的实施例可与实际上任何类型的计算机一起实现,而不管平台适于存储和/或执行程序代码。作为示例,图5示出了适用于执行与所提出的方法相关的程序代码的计算设备500。
[0065]
计算设备500仅是合适的计算机系统的一个示例,并且不旨在对本文描述的本发明的实施例的使用范围或功能提出任何限制,而不管计算设备500是否能够实现和/或执行上文阐述的任何功能。在计算设备500中,存在可与许多其他通用或专用计算系统环境或配置一起操作的组件。可适用于计算设备500的公知计算系统、环境和/或配置的示例包括但不限于个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持式或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络pc、小型计算机系统、大型计算机系统和包括以上系统或设备中的任一个的分布式云计算环境等。可以在由计算设备500执行的计算机系统可执行指令(诸如程序模块)的一般上下文中描述计算设备500。一般而言,程序模块可包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、逻辑、数据结构等。计算设备500可在其中任务由通过通信网络链接的远程处理设备执行的分布式云计算环境中实践。在分布式云计算环境中,程序模块可以位于本地和远程计算机系统存储介质(包括存储器存储设备)中。
[0066]
如图5所示,示出了根据本发明的实施例的计算设备的部件的框图。应当理解,图5仅提供实现方式的图示并且不暗示关于其中可以实现不同实施例的环境的任何限制。可以对所描绘的环境做出许多修改。
[0067]
计算设备可包括全部通过通信结构518互连的一个或多个处理器502、一个或多个计算机可读ram 504、一个或多个计算机可读rom 506、一个或多个计算机可读存储介质508、设备驱动器512、读/写驱动器或接口514、网络适配器或接口516。通信结构518可以用被设计用于在处理器(诸如微处理器、通信和网络处理器等)、系统存储器、外围设备和系统内的任何其他硬件组件之间传递数据和/或控制信息的任何架构来实现。
[0068]
一个或多个操作系统510和一个或多个应用程序511被存储在一个或多个计算机可读存储介质508上,以供一个或多个处理器502经由一个或多个相应的ram504(其通常包括高速缓存存储器)来执行。例如,示范性流程200和示范性流程300可各自存储在计算机可读存储介质508中的一个或多个上。在所示实施例中,计算机可读存储介质508中的每可以是内部硬盘的磁盘存储设备、cd-rom、dvd、记忆棒、磁带、磁盘、光盘、诸如ram、rom、eprom、闪存的半导体存储设备或可以存储计算机程序和数字信息的任何其他计算机可读有形存储设备。
[0069]
计算设备还可包括用于从一个或多个便携式计算机可读存储介质526读取和写入一个或多个便携式计算机可读存储介质526的r/w驱动器或接口514。计算设备上的应用程序511可存储在一个或多个便携式计算机可读存储介质526上,经由相应的r/w驱动器或接口514读取并加载到相应的计算机可读存储介质508中。
[0070]
计算设备还可包括网络适配器或接口516,诸如tcp/ip适配器卡或无线通信适配
器(诸如使用ofdma技术的4g无线通信适配器)。应用程序511可经由网络(例如,互联网、局域网或其他广域网或无线网络)和网络适配器或接口516从外部计算机或外部存储装置下载到计算装置。程序可以从网络适配器或接口516加载到计算机可读存储介质508上。网络可以包括铜线、光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。
[0071]
计算设备还可以包括显示屏520、键盘或小键盘522、以及计算机鼠标或触摸板524。设备驱动器512与用于成像的显示屏520、键盘或小键盘522、计算机鼠标或触摸板524、和/或与用于字母数字字符输入和用户选择的压力感测的显示屏520接口连接。设备驱动器512、r/w驱动器或接口514以及网络适配器或接口516可以包括硬件和软件(存储在计算机可读存储介质508和/或rom 506上)。
[0072]
此外,用于从smiles字符串生成有机合成过程的系统400可附接到通信结构518。
[0073]
已经出于说明的目的呈现了本发明的各种实施方式的描述,但并不旨在是详尽的或者限于所公开的实施方式。在不脱离所描述的实施例的范围和精神的情况下,许多修改和变化对于本领域普通技术人员来说是显而易见的。本文使用的术语被选择来最好地解释实施例的原理、实际应用或优于市场中发现的技术的技术改进,或者使得本领域的其他普通技术人员能够理解本文公开的实施例。
[0074]
在此描述的程序是基于应用在本发明的具体实施例中实施的来识别的。然而,应当理解,本文中的任何特定程序术语仅为了方便而使用,并且因此本发明不应局限于仅在由这样的术语标识和/或暗示的任何特定应用中使用。
[0075]
本发明的实施例可以通过云计算基础设施被提供给终端用户。云计算通常指的是通过网络将可扩展的计算资源作为服务提供。更正式地,云计算可以被定义为提供计算资源与其底层技术架构(例如,服务器、存储装置、网络)之间的抽象化的计算能力,从而实现对可配置计算资源的共享池的方便的、按需的网络访问,所述可配置计算资源可以用最小的管理努力或服务提供商交互来快速供应和释放。因此,云计算允许用户访问“云”中的虚拟计算资源(例如,存储、数据、应用和甚至完整的虚拟化计算系统),而不考虑用于提供计算资源的底层物理系统(或那些系统的位置)。
[0076]
通常,云计算资源基于每次使用付费提供给用户,其中用户仅针对实际使用的计算资源(例如,针对实际使用的计算资源)被收费。用户消耗的存储空间量或所述用户实例化的虚拟化系统的数量)。用户可以在任何时间以及从跨互联网的任何地方访问驻留在云中的任何资源。在本发明的上下文中,用户可以访问在云中可用的归一化的搜索引擎或相关数据。例如,标准化的搜索引擎可以在云中的计算系统上执行并且执行标准化的搜索。在这样的情况下,归一化的搜索引擎可以归一化信息的语料库并且将归一化的索引存储在云中的存储位置处。这样做允许用户从附接到连接到云的网络(例如,互联网)的任何计算系统访问该信息。
[0077]
提前理解的是,虽然本公开包括关于云计算的详细描述,但是本文所引用的教导的实现不限于云计算环境。相反,本发明的实施例能够结合现在已知的或以后开发的任何其他类型的计算环境来实现。
[0078]
云计算是一种服务交付模型,用于使得能够方便地、按需地访问可配置计算资源(例如,可配置计算资源的共享池)的共享池。网络、网络带宽、服务器、处理、存储器、存储、应用、虚拟机和服务),其能够以最小的管理努力或与服务的提供商的交互快速地供应和释
放。该云模型可以包括至少五个特性、至少三个服务模型和至少四个部署模型。
[0079]
特性如下:
[0080]
按需自助服务:云消费者可以单方面地根据需要自动地提供计算能力,诸如服务器时间和网络存储,而不需要与服务的提供者的人类交互。
[0081]
广泛的网络接入:能力可通过网络获得并且通过标准机制接入,该标准机制促进异构瘦客户机平台或厚客户机平台(例如,移动电话、膝上型计算机和pda)的使用。
[0082]
资源池:提供者的计算资源被池化以使用多租户模型来服务于多个消费者,其中不同的物理和虚拟资源根据需要动态地指派和重新指派。存在位置独立性的感觉,因为消费者通常不具有对所提供的资源的确切位置的控制或了解,但可能能够以较高抽象级别(例如,国家、州或数据中心)指定位置。
[0083]
快速弹性:能够快速和弹性地提供能力,在一些情况下自动地快速缩小和快速释放以快速放大。对于消费者而言,可用于供应的能力通常显得不受限制并且可以在任何时间以任何数量购买。
[0084]
测量的服务:云系统通过在适合于服务类型(例如,存储、处理、带宽和活动用户账户)的某个抽象级别处利用计量能力来自动控制和优化资源使用。可以监视、控制和报告资源使用,为所利用的服务的提供者和消费者提供透明度。
[0085]
服务模型如下:
[0086]
软件即服务(saas):提供给消费者的能力是使用在云基础设施上运行的提供者的应用。可通过诸如web浏览器(例如,基于web的电子邮件)之类的瘦客户端接口从不同客户端设备访问应用。消费者不管理或控制包括网络、服务器、操作系统、存储或甚至单独的应用能力的底层云基础设施,可能的例外是有限的用户特定应用配置设置。
[0087]
平台即服务(paas):提供给消费者的能力是将消费者创建的或获取的使用由提供商支持的编程语言和工具创建的应用部署到云基础设施上。消费者不管理或控制包括网络、服务器、操作系统或存储的底层云基础设施,但是对所部署的应用和可能的应用托管环境配置具有控制。
[0088]
基础设施即服务(iaas):提供给消费者的能力是提供处理、存储、网络和消费者能够部署和运行任意软件的其他基本计算资源,所述软件可以包括操作系统和应用。消费者不管理或控制底层云基础设施,而是具有对操作系统、存储、所部署的应用的控制以及对所选联网组件(例如,主机防火墙)的可能受限的控制。
[0089]
部署模型如下:
[0090]
私有云:云基础架构仅为组织运作。它可以由组织或第三方管理,并且可以存在于场所内或场所外。
[0091]
社区云:云基础架构被若干组织共享并支持共享了关注(例如,任务、安全要求、策略、和合规性考虑)的特定社区。它可以由组织或第三方管理,并且可以存在于场所内或场所外。
[0092]
公共云:使云基础架构对公众或大型行业组可用,并且由出售云服务的组织拥有。
[0093]
混合云:云基础架构是两个或更多个云(私有、社区或公共)的组合,这些云保持唯一实体但通过使数据和应用能够移植的标准化或专有技术(例如,云突发以用于云之间的负载平衡)绑定在一起。
[0094]
云计算环境是面向服务的,集中于无状态、低耦合、模块化和语义互操作性。云计算的核心是包括互连节点网络的基础设施。
[0095]
现在参见图6,描绘了说明性云计算环境600。如图所示,云计算环境600包括由云消费者使用的本地计算设备可以与其通信的一个或多个云计算节点610,本地计算设备诸如例如个人数字助理(pda)或蜂窝电话640a、台式计算机640b、膝上型计算机640c和/或汽车计算机系统640n。云计算节点610可彼此通信。它们可以物理地或虚拟地分组(未示出)在一个或多个网络中,诸如如上所述的私有云、社区云、公共云或混合云、或其组合。这允许云计算环境600提供基础架构、平台和/或软件作为云消费者不需要为其维护本地计算设备上的资源的服务。应当理解,图6中所示的计算设备640a-n的类型仅旨在是说明性的,并且云计算节点610和云计算环境600可通过任何类型的网络和/或网络可寻址连接(例如,使用web浏览器)与任何类型的计算机化设备通信。
[0096]
现在参见图7,示出了由云计算环境600(如图6所示)提供的一组功能抽象层。应当事先理解,图7中所示的组件、层和功能仅旨在是说明性的,并且本发明的实施例不限于此。如所描述,提供以下层和对应功能:
[0097]
硬件和软件层760包括硬件和软件组件。硬件组件的示例包括:主框架761;基于risc(精简指令集计算机)架构的服务器762;服务器763;刀片服务器764;存储设备765;以及网络和网络组件766。在一些实施例中,软件组件包括网络应用服务器软件767和数据库软件768。
[0098]
虚拟化层770提供抽象层,从该抽象层可以提供虚拟实体的以下示例:虚拟服务器771;虚拟存储772,例如如图5所示的一个或多个计算机可读存储介质508;虚拟网络773,包括虚拟专用网络;虚拟应用和操作系统774;以及虚拟客户端775。
[0099]
在示例中,管理层780可以提供以下描述的功能。资源供应781提供用于在云计算环境内执行任务的计算资源和其他资源的动态采购。计量和定价782在云计算环境内利用资源时提供成本跟踪,并为这些资源的消费开账单或发票。在示例中,这些资源可以包括应用软件许可证。安全性为云消费者和任务提供身份验证,以及为数据和其他资源提供保护。用户门户783为消费者和系统管理员提供对云计算环境的访问。服务水平管理784提供云计算资源分配和管理,使得满足所需的服务水平。服务水平协议(sla)规划和履行685提供云计算资源的预安排和采购,根据该sla预期该云计算资源的未来要求。
[0100]
工作负载层790提供可以利用云计算环境的功能的示例。可以从该层提供的工作负载和功能的示例包括:地图和导航791;软件开发和生命周期管理792;虚拟教室教育递送793;数据分析处理794;事务处理795;以及有机合成程序796的生成。有机合成程序796的生成可生成有机合成程序。
[0101]
本发明可以是任何可能的技术细节集成度的系统、方法和/或计算机程序产品。计算机程序产品可包括其上具有用于使处理器执行本发明的各方面的计算机可读程序指令的计算机可读存储介质(或多个介质)。
[0102]
计算机可读存储介质可为可保留和存储供指令执行装置使用的指令的有形装置。计算机可读存储介质可以是,例如但不限于,电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备、或者上述的任意合适的组合。计算机可读存储介质的更具体示例的非穷尽列表包括以下各项:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器
(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式紧凑盘只读存储器(cd-rom)、数字通用盘(dvd)、记忆棒、软盘、诸如穿孔卡之类的机械编码设备或具有记录在其上的指令的槽中的凸出结构、以及上述各项的任何合适的组合。如本文所使用的计算机可读存储介质不应被解释为暂时性信号本身,例如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,穿过光纤电缆的光脉冲)或通过电线发射的电信号。
[0103]
本文中所描述的计算机可读程序指令可以经由网络(例如,互联网、局域网、广域网和/或无线网络)从计算机可读存储介质下载到相应的计算/处理设备,或者下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输纤维、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口接收来自网络的计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
[0104]
用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路的配置数据、或以一种或多种程序设计语言的任何组合编写的源代码或目标代码,这些程序设计语言包括面向对象的程序设计语言(诸如smalltalk、c++等)和过程性程序设计语言(诸如“c”程序设计语言或类似程序设计语言)。计算机可读程序指令可以完全地在用户计算机上执行、部分在用户计算机上执行、作为独立软件包执行、部分在用户计算机上部分在远程计算机上执行或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可通过任何类型的网络(包括局域网(lan)或广域网(wan))连接至用户计算机,或者可连接至外部计算机(例如,使用互联网服务提供商通过互联网)。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla)的电子电路可以通过利用计算机可读程序指令的状态信息来使电子电路个性化来执行计算机可读程序指令,以便执行本发明的各方面。
[0105]
下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
[0106]
这些计算机可读程序指令可被提供给计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现在流程图和/或框图的或多个框中指定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置、和/或其他设备以特定方式工作,从而,其中存储有指令的计算机可读存储介质包括包含实现流程图和/或框图中的或多个方框中规定的功能/动作的方面的指令的制造品。
[0107]
也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的处理,使得在计算机、其他可编程装置或其他设备上执行的指令实现流程图和/或框图中的或多个方框中规定的功能/动作。
[0108]
附图中的流程图和框图示出了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现方式的架构、功能和操作。对此,流程图或框图中的每个框可表示指令的
模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些备选实现方式中,框中标注的功能可以不按照图中标注的顺序发生。例如,连续示出的两个框实际上可以作为一个步骤完成,同时、基本上同时、以部分或完全时间上重叠的方式执行,或者框有时可以以相反的顺序执行,这取决于所涉及的功能。也要注意的是,框图和/或流程图中的每个框、以及框图和/或流程图中的框的组合,可以用执行规定的功能或动作或执行专用硬件与计算机指令的组合的专用的基于硬件的系统来实现。
[0109]
已经出于说明的目的呈现了本发明的各种实现方式的描述,但并不旨在是详尽的或者限于所公开的实现方式。本文使用的术语被选择来最好地解释实施例的原理、实际应用或对在市场中找到的技术的技术改进,或者使得本领域普通技术人员能够理解本文公开的实施例。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1