首页> 中国专利> 由知识数据库大规模地驱动的基于元数据的科学数据表征

由知识数据库大规模地驱动的基于元数据的科学数据表征

摘要

一种基于元数据的科学数据表征方法、系统和计算机程序产品包括:请求任务的用户输入以指定用于基于与数据文件数据库中的数据文件相关联的元数据来确定数据文件的质量和关系的任务的规则,使用在数据文件数据库上运行的规则来处理结果的用户反馈,并且跟踪结果的用户反馈以便从用户反馈中学习,以及基于该学习来创建用于确定第二数据文件的质量和关系的已修改规则。

著录项

说明书

背景技术

本发明总体上涉及基于元数据的科学数据表征方法,并且更具体地但非限制性地涉及一种用于交互地和迭代地系统化用户使用相关联的元数据来表征一些文件的方式并且大规模地应用它的系统、方法和计算机程序产品。

大型的领域特定的科学数据文件具有相关联的元数据,这些元数据对于科学实验过程至关重要。但是,这些文件通常是异构的。一些文件具有比其他文件更多或更好的相关联的元数据,并且一些文件与其他文件相关。

传统上,当用户(例如,科学家,诸如地质领域的地球物理学家、农业领域的农艺师等)获取大量数据文件时,他们首先需要通过以下方式来表征文件:确定文件的质量等级并且找出它们之间的关系(例如,文件是从另一文件中得到的,或者等于另一文件,或者与另一文件中的区域在地理上相交),使得他们可以开始其实验过程。当从公共数据提供者获取数据文件时,这一点显得尤为重要。尽管单个文件中的数据内容通常很大(数百GB),但是这些文件中的相关联的元数据通常很小(例如,几兆字节)。如果基于数据而不是基于元数据来进行,则这样的数据表征非常昂贵。因此,它们通常是通过基于元数据的手动检查来完成的。而且,手动检查无法针对跨若干数据文件分布的大量数据进行扩展。

但是,即使传统技术可以利用从原始数据文件中提取的元数据来在数据管理生命周期中表示它们,传统技术也没有考虑到让用户基于元数据来迭代地和交互地改变规则以应用于多个数据文件的技术、以及收集用户交互以改进规则定义的学习系统。

发明内容

在示例性实施例中,本发明提供了一种计算机实现的基于元数据的科学数据表征方法,该方法包括:请求用户输入以指定用于基于与科学数据文件相关联的元数据来确定科学数据文件的质量和关系的规则,处理用户反馈以分析结果并且跟踪结果的用户反馈以便从用户反馈中学习,以及基于该学习来创建用于确定科学数据文件的质量和关系的规则。

基于上述方法,一个或多个其他示例性实施例包括一种计算机程序产品和一种系统。

下面描述本发明的其他细节和实施例,以便可以更好地理解对本领域的当前贡献。然而,本发明在其应用方面不限于说明书中阐述或在附图中示出的这些细节、措辞、术语、图示和/或布置。而是,本发明能够具有除了所描述的实施例之外的其他实施例,并且能够以各种方式来实践和执行,并且不应当被认为是限制性的。

这样,本领域技术人员将认识到,本公开所基于的概念可以容易地用作设计用于实现本发明的若干目的的其他结构、方法和系统的基础。因此,重要的是,在不背离本发明的精神和范围的前提下,权利要求被认为包括这样的等同构造。

附图说明

通过以下参考附图对本发明的示例性实施例的详细描述,将会更好地理解本发明的各方面,在附图中:

图1示例性地示出了根据本发明的实施例的基于元数据的科学数据表征方法100的高级流程图;

图2示例性地描绘了根据本发明的实施例的基于元数据的科学数据表征的示例流程;

图3示例性地描绘了根据本发明的实施例的基于元数据的科学数据表征的示例系统300;

图4描绘了根据本发明的实施例的云计算节点10;

图5描绘了根据本发明的实施例的云计算环境50;

图6描绘了根据本发明的实施例的抽象模型层;以及

图7-9示例性地描绘了本发明的一般用例以及根据本发明的实施例而解决的问题。

具体实施方式

现在将参考图1-9描述本发明,相同的附图标记始终表示相同的部分。要强调的是,根据惯例,附图的各种特征不一定按比例绘制。相反,为了清楚起见,可以任意地扩大或缩小各种特征的尺寸。

通过介绍图1所描绘的示例,根据本发明的基于元数据的科学数据表征方法100的实施例可以包括用于混合的基于规则和学习的技术的各个步骤,该技术使得用户能够交互地和迭代地指导表征多个大型原始数据文件的基于规则的处理,以(i)确定文件的质量以及(ii)利用与大型文件相关联的小型元数据来找出数据关系。可以由基于机器学习的推荐器组件在过程的每个新迭代中推荐规则。用户可以接受推荐或调节所推荐的规则。因此,规则由用户的知识控制,由应用和域驱动。而且,用户的交互性和规则修改都记录在知识数据库中以改进推荐器组件。

因此,本发明的一个优点是它使用针对一些文件的人类知识,将其大规模地应用于大量文件,并且从用户的交互中学习。该优点是可能的,因为本发明利用与大型文件相关联的小元数据来减少用户与系统之间的处理响应时间,从而使系统更具交互性。然后,本发明(例如,使用基于机器学习的组件)和用户共同协作,直到实现最佳规则集和结果(例如,所表征的数据文件)。

通过介绍图4所描绘的示例,根据本发明的实施例的计算机系统12的一个或多个计算机可以包括存储器28,该存储器28具有存储在存储系统中的用于执行图1的步骤的指令。

尽管一个或多个实施例可以在云环境50(例如,图6)中实现,但是应当理解,本发明可以在云环境之外实现。

参考图7-9,示例性地解释了由本发明解决的问题的上下文。如图7所示,用户(例如,科学家,诸如地球物理学家、农艺师、健康科学家等)从存储设备接收多个数据文件以进行分析。典型的数据文件很大(即,高达数百GB),是特殊文件格式(例如,GeoTIFF,在农业应用中很常见,或者由工业标准指定的格式,诸如用于地质应用的SEG-Y等),包含重要的相关联的元数据等。但是,文件是异构的。对于给定用途,一些文件具有高质量和相关的元数据,但是一些文件则没有。

参考图8,首先,用户需要确定数据文件的质量。作为示例,用户观察文件之一,将其打开,并且基于与文件相关联的元数据,用户标识出“文件A”具有相关联的地理坐标。

参考图9,第二,用户必须标识这些文件之间的关系。只有在确定质量并且标识文件关系之后,用户才能开始其实验过程。例如,用户验证出文件C包含与文件D中的数据在地理上相交的数据(例如,C和D是其多边形部分地覆盖相同地理区域的地震数据)。

但是,传统上,用户手动检查文件以确定文件的质量和关系。手动检查对于一个文件或可能一些文件而言效果很好。但是,它不能扩展到大量文件。因此,当用户对文件进行推理时,他们将失去从用户的交互中学习的机会。然而,利用方法100的发明,本发明可以交互地和迭代地系统化用户使用相关联的元数据来表征一些文件并且大规模地应用它的方式,并且随着用户使用本发明而改善结果。

总体上参考图1和图2,在步骤101中,请求用户输入以指定用于基于与科学数据文件相关联的元数据来确定科学数据文件的质量和关系的规则。

在步骤102中,处理用户反馈以分析结果并且跟踪结果的用户反馈以便从用户反馈中学习。

在步骤103中,基于该学习来创建用于确定科学数据文件的质量和关系的规则。

更具体地,参考图2,在步骤201中,用户选择任务。例如,给定多个大型数据文件的输入数据集,任务是“标识地震文件”、“对其进行地理定位”、“标识哪些文件是地震振幅以及哪些文件是从地震事件中得到的属性”以及“标识与地震文件有关的报告(PDF,DOC)”。

在步骤202中,本发明提出规则集。例如,本发明示例性地推荐的规则可以是:

*文件标识。文件A

如果A具有在[sgy,cbvs,sgd]中的扩展名,则A是地震数据文件

如果A具有在[pdf,txt,rtf,doc,docx]中的扩展名,则A是报告

如果A具有在[csv,xls,json,geotiff]中的扩展名,则A是元数据文件

然后,在步骤203中,用户批准或拒绝所推荐的规则。用户的决定和原因存储在知识数据库中。

在步骤204中,用户调节所推荐的规则。规则版本控制存储在知识数据库中以改进推荐器系统。

在步骤205中,本发明使用用户通知的规则集来表征(例如,确定质量并且找出文件关系)所有文件。也就是说,本发明使用用户批准的规则,并且然后将其应用于输入数据集中的所有文件以表征文件。

在步骤206中,用户在仪表板中分析结果(例如,文件质量和关系)。例如,输入数据集中超过50%的文件具有.SU扩展名,并且系统无法标识这些文件。这些结果存储在知识数据库中。

在步骤207中,用户批准结果,并且该过程结束或者该过程继续进行到步骤208。

在步骤208中,基于用户在步骤207中不批准(多个)规则,本发明建议对(多个)规则的修改。例如,本发明推荐对规则集的修改,诸如“如果A在[sgy,cbvs,sgd,su]中具有扩展名,则A是地震数据文件”。

在步骤209中,用户批准(或不批准)已修改规则集。如果被批准,则本发明返回到步骤205。如果用户不批准该规则集,则本发明返回到步骤204。

在石油和天然气业务案例的一个示例性用例中,地质领域的数据科学家接收到公共的大型(太字节)地质数据集,该数据集包含来自世界不同地区的数千个数据文件。他需要使用这些数据来训练机器学习模型以帮助他进行油藏发现。问题在于,数据文件没有被表征(例如,未进行地理定位,文件没有已知关系(例如,文件是否包含地震振幅或从地震中得到的属性),因此专家无法在实际中使用该数据集)。

因此,在步骤101-103和201之后,用户选择任务,标识文件,找出关系,并且确定质量:

任务:地震数据集表征和地理定位

·标识文件

·哪些是地震数据文件

·哪些是报告(PDF)

·找出关系

·哪些文件是地震的属性(例如,自发频率)

·哪些文件包含与地震相关联的元数据

·哪些文件包含与其他文件在地理上相交的数据

·哪些报告(PDF)与地震数据文件相关

·哪些文件是副本

·确定质量

·哪些具有地理坐标

·结构化的相关联的处理和获取信息

基于此,本发明推荐在步骤103和202中设置的规则,诸如:

*文件标识。文件A

·如果A具有在[sgy,cbvs,sgd]中的扩展名,则A是地震数据文件

·如果A具有在[pdf,txt,rtf,doc,docx]中的扩展名,则A是报告

·如果A具有在[csv,xls,json,geotiff]中的扩展名,则A是元数据文件

*文件关系。文件A和文件B

·如果B与A在同一目录层级中,则B与A相关联。

·如果A具有与B相同的嵌入式元数据,并且size(A)>>size(B),则B是A的乘积

·如果B的文件名包含[ip,is,impedance],则B是A的阻抗积

·如果B的文件名包含[vp,vs,velocity],则B是A的速度积

·如果A具有B的嵌入式元数据并且size(A)=size(B),则A=B*文件质量。地震数据文件A

·M是与A相关联的一组元数据

·K是关键元数据。K=[GeoX,GeoY,UTMZone]

·H(K)是系统可以找出的K中的元数据的值。

·关键元数据应当如下来找出:

·GeoX在M中,嵌入在A的字节181中

·GeoY在M中,嵌入在A的字节185中

·UTMZone在M中,在与A相关联的元数据文件中

*地震数据文件A的质量等级

等级0:H(K)=NULL=>“系统无法确定K的任何值”

等级1:H(K).GeoX!=NULL并且H(K).GeoY!=NULL并且H(K).UTMZone=NULL=>“系统可以确定GeoX、GeoY,但是没有UTM区域”

等级2:H(K).GeoX!=NULL并且H(K).GeoY!=NULL并且H(K).UTMZone=NULL并且经过用户验证=>“没有UTM区域,但是用户验证了GeoX、GeoY”

等级3:H(K)!=NULL=====>“系统能够对A进行地理定位”

等级4:H(K)!=NULL并且经过用户验证=====>“系统能够对A进行地理定位并且经过用户验证”

然后,本发明进行到步骤203-209的其余部分。例如:

用户批准所推荐的规则集

(C)系统200运行。迭代=1

(D)在仪表板中绘制结果并且用户进行分析。

结果:输入数据集中超过50%的文件具有.SU扩展名,并且系统无法标识文件。

用户不批准结果

(E)系统204建议对规则集的修改

基于文件频率和嵌入式元数据分析,系统建议:将.SU视为地震数据文件。

规则将要发生改变:

如果A具有[sgy,cbvs,sgd,su]中的扩展名,则A是地震数据文件

用户批准所推荐的规则集

(C)系统200运行。迭代=2

(D)在仪表板中绘制结果并且用户进行分析。

结果:在接近100%的SU文件中,不能找出GeoX、GeoY。错误:GeoX和GeoY信息没有在指定字节(181-185)中

用户不批准结果

(E)系统204建议对规则集的修改

基于启发法和过去的用户交互,系统建议:考虑嵌入式地震数据文件中的字节72和73用于GeoX和GeoY坐标。

规则将要发生改变:

关键元数据应当如下来找出:

GeoX在M中,嵌入在A的字节72中

GeoY在M中,嵌入在A的字节73中

用户不批准所推荐的规则集并且解释原因:

通过检查一些数据文件,用户验证出,在该数据集中,字节72和73用于inline_no和xline_no字段,而不是GeoX和GeoY。

(F)用户如下编辑规则集:

关键元数据应当如下来找出:

GeoX在M中,嵌入在A的字节27中

GeoY在M中,嵌入在A的字节28中

(C)系统200运行。迭代=3

(D)在仪表板中绘制结果并且用户进行分析。

结果:100%的地震数据文件具备“第三级别质量”的资格(即,被地理定位)

用户批准结果

系统登记这些结果对该用户是良好的。

参考图3,该系统架构包括用于客户端(即,用户)、服务器和存储层的接口。用于用户的接口包括文件浏览器和文件检查器,其中用户选择文件并且检查与文件相关联的元数据,规则集编辑器向用户呈现所推荐的规则并且允许用户修改集合,仪表板示出处理的结果并且还示出根据指定规则集而特征化的文件(例如,具有合格文件和已发现的关系)。

服务器包括基于规则的原始数据文件表征器组件,该组件接收(a)规则集作为输入以及(b)应当处理的文件列表。服务器利用域特定的原始数据解析器(201)在并行硬件中调度可伸缩处理以解析原始数据文件,提取元数据并且使用相关联的元数据来表征文件(例如,设置文件质量并且找出关系)。表征器组件不仅不需要处理整个大型数据文件,而且还不需要计算与文件相关联的所有元数据。仅规则集中指定的那些,从而进一步加快了处理速度。域特定的原始数据解析器实现一个软件,该软件知道如何读取特殊文件格式,诸如用于地震的SEG-Y、用于测井曲线的LAS、用于农业的GeoTIFF、用于天文学的FITS等。交互跟踪器在知识数据库(300)中以结构化方式记录用户与系统之间的交互。规则集版本器负责跟踪用户在规则集中所做的每个改变,并且将新的修改与用户可选地告知的改变的原因相关联。规则集、其版本控制和改变原因存储在知识数据库(300)中。而且,规则集推荐器是一项基于机器学习的服务,其使用知识库中的数据来训练其模型并且推荐规则或对先前选择的规则集的修改。

存储层包括知识数据库,该知识数据库包含以结构化方式存储的可以查询的用户知识。以下数据存储并且表示在知识数据库中:用户交互、规则集及其在迭代中的修改、用户是否接受推荐、用户决策的原因(例如,接受)、以及数据文件的表征。并且,文件系统包含所有要表征的文件。

通过上述实施例,本发明包括混合的基于规则和学习的系统和方法,该系统和方法使得用户能够交互地和迭代地指导基于规则的处理,该处理表征多个大型原始数据文件以(i)确定文件的质量以及(ii)利用与大型文件相关联的小型元数据来找出数据关系。规则由基于机器学习的推荐器组件在流程的每个新迭代中进行推荐。用户可以接受推荐或者调节所推荐的规则。因此,规则由用户的知识控制,由应用和域驱动。用户交互性和规则修改被记录在知识数据库中以改进推荐器组件。本发明的模型独立于特定的神经网络或机器学习模型。

因此,本发明可以使用针对一些文件的人类知识,将人类知识大规模地应用于大量文件,并且从用户交互中学习。这仅是可能的,因为本发明利用与大型文件相关联的小型元数据来减少用户与系统之间的处理响应时间,从而使系统更具交互性。然后,系统(例如,使用基于机器学习的组件)和用户共同协作,直到实现最佳规则集和结果(例如,特征数据文件)。

注意,尽管本文中的实施例是在“基于元数据的科学数据”方面描述的,但是本发明不限于此。例如,本发明可以包括涉及通用数据分类(即,数据记录、税收数据、公司业务数据、教育数据等)的实施例。实际上,本发明可以基于用户的一些分类来大规模地确定数据的质量和关系,从而可以对任何类型的数据的大型数据库进行分类。

尽管此详细描述包括在云计算环境中的本发明的示例性实施例,但是应当理解,本文中记载的教导的实现不限于这种云计算环境。相反,本发明的实施例能够与现在已知或以后开发的任何其他类型的计算环境结合实现。

云计算是一种服务交付模式,用于对共享的可配置计算资源池进行方便、按需的网络访问。可配置计算资源是能够以最小的管理成本或与服务提供者进行最少的交互就能快速部署和释放的资源,例如可以是网络、网络带宽、服务器、处理、内存、存储、应用、虚拟机和服务。这种云模式可以包括至少五个特征、至少三个服务模型和至少四个部署模型。

特征包括:

按需自助式服务:云的消费者在无需与服务提供者进行人为交互的情况下能够单方面自动地按需部署诸如服务器时间和网络存储等的计算能力。

广泛的网络接入:计算能力可以通过标准机制在网络上获取,这种标准机制促进了通过不同种类的瘦客户机平台或厚客户机平台(例如移动电话、膝上型电脑、个人数字助理PDA)对云的使用。

资源池:提供者的计算资源被归入资源池并通过多租户(multi-tenant)模式服务于多重消费者,其中按需将不同的实体资源和虚拟资源动态地分配和再分配。一般情况下,消费者不能控制或甚至并不知晓所提供的资源的确切位置,但可以在较高抽象程度上指定位置(例如国家、州或数据中心),因此具有位置无关性。

迅速弹性:能够迅速、有弹性地(有时是自动地)部署计算能力,以实现快速扩展,并且能迅速释放来快速缩小。在消费者看来,用于部署的可用计算能力往往显得是无限的,并能在任意时候都能获取任意数量的计算能力。

可测量的服务:云系统通过利用适于服务类型(例如存储、处理、带宽和活跃用户帐号)的某种抽象程度的计量能力,自动地控制和优化资源效用。可以监测、控制和报告资源使用情况,为服务提供者和消费者双方提供透明度。

服务模型如下:

软件即服务(SaaS):向消费者提供的能力是使用提供者在云基础架构上运行的应用。可以通过诸如网络浏览器的瘦客户机接口(例如基于网络的电子邮件)从各种客户机设备访问应用。除了有限的特定于用户的应用配置设置外,消费者既不管理也不控制包括网络、服务器、操作系统、存储、乃至单个应用能力等的底层云基础架构。

平台即服务(PaaS):向消费者提供的能力是在云基础架构上部署消费者创建或获得的应用,这些应用利用提供者支持的程序设计语言和工具创建。消费者既不管理也不控制包括网络、服务器、操作系统或存储的底层云基础架构,但对其部署的应用具有控制权,对应用托管环境配置可能也具有控制权。

基础架构即服务(IaaS):向消费者提供的能力是消费者能够在其中部署并运行包括操作系统和应用的任意软件的处理、存储、网络和其他基础计算资源。消费者既不管理也不控制底层的云基础架构,但是对操作系统、存储和其部署的应用具有控制权,对选择的网络组件(例如主机防火墙)可能具有有限的控制权。

部署模型如下:

私有云:云基础架构单独为某个组织运行。云基础架构可以由该组织或第三方管理并且可以存在于该组织内部或外部。

共同体云:云基础架构被若干组织共享并支持有共同利害关系(例如任务使命、安全要求、政策和合规考虑)的特定共同体。共同体云可以由共同体内的多个组织或第三方管理并且可以存在于该共同体内部或外部。

公共云:云基础架构向公众或大型产业群提供并由出售云服务的组织拥有。

混合云:云基础架构由两个或更多部署模型的云(私有云、共同体云或公共云)组成,这些云依然是独特的实体,但是通过使数据和应用能够移植的标准化技术或私有技术(例如用于云之间的负载平衡的云突发流量分担技术)绑定在一起。

云计算环境是面向服务的,着重于无状态、低耦合、模块化和语义互操作性。云计算的核心是包括互连节点的网络的基础架构。

现在参考图4,示出了云计算节点的示例的示意图。云计算节点10仅是合适的节点的一个示例,而非旨在暗示对本文中描述的本发明的实施例的使用或功能范围的任何限制。无论如何,云计算节点10能够被实现和/或执行本文中阐述的任何功能。

尽管云计算节点10被描绘为计算机系统/服务器12,但是应当理解为可以与很多其他通用或专用计算系统环境或配置一起操作。可以适合与计算机系统/服务器12一起使用的公知的计算系统、环境和/或配置的示例包括但不限于个人计算机系统、服务器计算机系统、瘦客户端、胖客户端、手持或膝上型电路、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络PC、小型计算机系统、大型计算机系统、以及包括上述任何系统或电路的分布式云计算环境等。

计算机系统/服务器12可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般上下文中描述。通常,程序模块可以包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、逻辑、数据结构等。计算机系统/服务器12可以在分布式云计算环境中实践,在分布式云计算环境中,任务由通过通信网络链接的远程处理电路执行。在分布式云计算环境中,程序模块可以位于包括存储器存储电路的本地和远程计算机系统存储介质中。

现在参考图4,计算机系统/服务器12以通用计算电路的形式示出。计算机系统/服务器12的组件可以包括但不限于一个或多个处理器或处理单元16、系统存储器28、以及将包括系统存储器28在内的各种系统组件耦合到处理器16的总线18。

总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。

计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是能够被计算机系统/服务器12访问的任意可获得的介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

系统存储器28可以包括易失性存储器形式的计算机系统可读介质,诸如随机存取存储器(RAM)30和/或高速缓冲存储器32。计算机系统/服务器12还可以包括其他可移动/不可移动的易失性/非易失性计算机系统存储介质。仅作为示例,可以提供存储系统34以用于读取和写入不可移动的非易失性磁性介质(未示出并且通常被称为“硬盘驱动器”)。尽管未示出,但是可以提供用于读取和写入可移动的非易失性磁盘(例如,“软盘”)的磁盘驱动器、以及用于读取或写入可移动的非易失性光盘(诸如CD-ROM、DVD-ROM或其他光学介质)的光盘驱动器。在这种情况下,每个都可以通过一个或多个数据介质接口连接到总线18。如下面将进一步描述的,存储器28可以包括存储一个或多个程序模块42的计算机程序产品,该程序模块42包括被配置为执行本发明的一个或多个特征的计算机可读指令。

作为示例而非限制,具有一组(至少一个)程序模块42的程序/实用程序40以及操作系统、一个或多个应用程序、其他程序模块和程序数据可以存储在存储器28中。操作系统、一个或多个应用程序、其他程序模块、以及程序数据或其某种组合中的每个可以适于在网络环境中实现。在一些实施例中,程序模块42适于总体上执行本发明的一个或多个功能和/或方法。

计算机系统/服务器12还可以与一个或多个外部设备14(诸如键盘、指示电路、其他外围设备,诸如显示器24等)以及与支持与计算机系统/服务器12的交互的一个或多个组件进行通信。这种通信可以经由输入/输出(I/O)接口22和/或使得计算机系统/服务器12能够与一个或多个其他计算电路通信的任何电路(例如,网卡、调制解调器等)发生。例如,计算机系统/服务器12可以经由网络适配器20与一个或多个网络(诸如局域网(LAN)、通用广域网(WAN)和/或公共网络(例如,因特网))通信。如所描绘的,网络适配器20经由总线18与计算机系统/服务器12的其他组件通信。应当理解,尽管未示出,但是其他硬件和/或软件组件可以与计算机系统/服务器12结合使用。示例包括但不限于:微代码、电路驱动器、冗余处理单元、外部磁盘驱动器阵列、RAID系统、磁带驱动器和数据档案存储系统等。

现在参考图5,描绘了说明性的云计算环境50。如所示出的,云计算环境50包括一个或多个云计算节点10,由云消费者使用的本地计算电路(例如,个人数字助理(PDA)或蜂窝电话54A、台式计算机54B、膝上型计算机54C、和/或汽车计算机系统54N)可以与该云计算节点10通信。节点10可以彼此通信。可以在一个或多个网络(如上文所述的私有云、社区云、公共云或混合云或其组合)中对它们进行物理或虚拟分组(未示出)。这允许云计算环境50提供基础设施、平台和/或软件即服务,云消费者不需要为其维护本地计算电路上的资源。可以理解,图5所示的计算电路54A-N的类型仅旨在是说明性的,并且计算节点10和云计算环境50可以通过任何类型的网络和/或网络可寻址连接(例如,使用网络浏览器)与任何类型的计算机电路通信。

现在参考图6,示出了由云计算环境50(图5)提供的一组示例性功能抽象层。应当预先理解,图6所示的组件、层和功能仅旨在是说明性的,并且本发明的实施例不限于此。如所描绘的,提供了以下层和对应功能:

硬件和软件层60包括硬件和软件组件。硬件组件的示例包括:大型机61;基于RISC(精简指令集计算机)架构的服务器62;服务器63;刀片服务器64;存储电路65;以及网络和联网组件66。在一些实施例中,软件组件包括网络应用服务器软件67和数据库软件68。

虚拟层70提供一个抽象层,该层可以提供下列虚拟实体的例子:虚拟服务器71、虚拟存储72、虚拟网络73(包括虚拟私有网络)、虚拟应用和操作系统74,以及虚拟客户端75。

在一个示例中,管理层80可以提供下述功能:资源供应功能81:提供用于在云计算环境中执行任务的计算资源和其它资源的动态获取;计量和定价功能82:在云计算环境内对资源的使用进行成本跟踪,并为此提供帐单和发票。在一个例子中,该资源可以包括应用软件许可。安全功能:为云的消费者和任务提供身份认证,为数据和其它资源提供保护。用户门户功能83:为消费者和系统管理员提供对云计算环境的访问。服务水平管理功能84:提供云计算资源的分配和管理,以满足必需的服务水平。服务水平协议(SLA)计划和履行功能85:为根据SLA预测的对云计算资源未来需求提供预先安排和供应。

工作负载层90提供可以利用云计算环境的功能的示例。可以从该层提供的工作负载和功能的示例包括:映射和导航91;软件开发和生命周期管理92;虚拟课堂教学交付93;数据分析处理94;交易处理95;以及根据本发明的基于元数据的科学数据表征方法100。

在任何可能的技术细节结合层面,本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。

计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。

这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。

用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路配置数据或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。

这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。

这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。

也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。

附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

此外,申请人的意图是涵盖所有权利要求要素的等同形式,并且对本申请的任何权利要求的任何修改均不应当被解释为对与经修改的权利要求的任何要素或特征等同的任何利益或权利的免责声明。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号