自动匹配数据集与存储组件的制作方法

文档序号:6442037阅读:194来源:国知局
专利名称:自动匹配数据集与存储组件的制作方法
自动匹配数据集与存储组件
背景技术
在计算领域内,许多方案涉及在两个或更多存储组件(storage component)之间存储的两个或更多数据集。举例而言,大型公司的企业信息技术环境的管理员可执行配置存储集的任务,存储集包括代表大量用户存储大量数据集的存储组件集。这个任务可例如由于以下原因而复杂化包括存储集的很多种类的存储组件(例如,数据库服务器、网络文件系统、文档系统和数据仓库和云存储服务)、不同存储组件的性质和特点(例如,总和可用的存储容量,带宽和吞吐量,查询能力和安全性)、以及数据集的种类和性质(例如,数据集大小、与其它数据集的关系以及由企业组织的用户对数据集的使用)。在许多当代方案下,管理员可首先检查数据集且确定概念和/或逻辑模式,且可考虑数据集的关系和使用,且然后可能不得不选择用于存储数据集的物理模式,例如通过选取具有匹配数据集性质的合适特点的存储组件,在存储组件上提供存储量,且由存储组件发起数据集的存储。管理员然后可能不得不实施存储选择,例如,通过在所选存储组件上提供存储量,配置设备和软件过程以利用提供的存储组件,向存储组件上存储数据,且关于存储组件指示其他用户。此外,管理员可能不得不随着数据集和/或存储集的数量和细节变化来重新评估数据集的存储组件的选择。

发明内容
提供此发明内容只是为了以简化形式介绍概念的选择,这些概念将在下文的具体实施方式
中进一步描述。此发明内容不旨在标识所要求保护的主题的关键要素或必要特征,也不旨在限制所要求保护的主题的范围。虽然管理员可适当地选择存储组件来匹配各个数据集,存储组件的手动选择可具有某些缺点。作为第一实例,物理模式的选择可耗费管理员的精力和资源且可涉及管理员大量的管理精力来设计、实施和维护。作为第二实例,物理模式的手动设计可在若干方面是无效率的(例如,不能高效地利用存储集的存储能力和特点),特别是随着存储组件和/或数据集的数量、种类和复杂性增加。作为第三实例,管理员可能不愿意例如鉴于数据集和/或存储集的变化(包括添加或移除存储组件)来重新评估手动设计的物理模式。在本发明中提出用于自动地选择存储集的存储组件以便存储可能大量和多种数据集的技术。根据这些技术,对于每个存储组件,可识别存储能力集合(例如,可用存储容量,带宽、执行查询的能力、远程可存取性和安全水平),且对于每个数据集,可识别存储因素(例如,数据集的估计大小,数据集的结构和内容,用户是否可能执行对数据集的简单或复杂查询,用户是否可能远程存取数据集,和构成数据集的数据的敏感性水平)的集合。当给出特定数据集时,这些技术的实施例可比较存储组件的存储能力与数据集的存储因素,自动地选择合适的存储组件,提供存储组件上用于存储数据集的空间且发起数据集在该存储组件中的存储。以此方式,可自动地生成在存储集内存储数据集的物理模式,从而保存管理员的精力,实现高效且合适的物理模式,且能随着数据集和/或存储集变化来重新评估和重新配置该物理模式。
为了实现前述和相关目的,下文的描述和附图陈述了某些说明性方面和实施方式。这些仅指示了一个或多个方面可以在其中体现的各种方式中少数。通过下文的详述,当结合附图考虑时,本公开的其它方面、优点和新颖特点将会变得清楚明白。


图1为示出示例性方案的流程图,该示例性方案的特点为由用户选择用于在存储集的存储组件上存储数据集的物理模式。图2为示出示例性方案的流程图,该示例性方案的特点为自动生成在存储集的存储组件上存储数据集的物理模式。图3为示出在存储集中存储数据集的示例性方法的流程图。图4为示出在存储集中存储数据集的示例性方法的流程图。图5为包括处理器可执行指令的示例性计算机可读介质的图示,处理器可执行指令被配置成体现本文所述的措施中的一个或多个。图6示出其中可实施本文所述的措施中的一个或多个的示例性计算环境。
具体实施例方式现参看附图来描述所要求保护的主题,其中通篇相同的附图标记用于指代相同的元件。在下文的描述中,出于解释说明的目的,陈述了许多具体细节以提供对所要求保护的主题的透彻理解。但显然,所要求保护的主题可在无这些具体细节的情况下来实践。在其它例子中,以方块图形式示出结构和设备以便于描述所要求保护的主题。在计算领域内,许多方案涉及在存储集内存储数据,存储集包括一个或多个存储组件,诸如一个或多个硬盘驱动器、固态存储设备、带备份驱动器、内存缓存、网络附连存储设备、虚拟存储设备、云存储服务或其组合的集合。在这样的存储组件上,许多类型的数据可存储于许多类型的存储系统中,诸如各种类型的文件系统和数据库系统。特别地在企业方案中,这些存储集可放大以包括很大量的存储(可能达到许多拍它字节或艾字节)和很大量的存储组件。每个存储组件可具有各种存储能力,包括物理性质,诸如容量、吞吐量和可靠性(例如,平均无故障时间(MTBF)和从数据故障恢复的容易性)和使用性质,诸如安全性(例如,谁管理且可物理地存取存储组件)和备份(例如,执行存储组件的数据存档的频率)。此外,这样的存储能力在性质上可为布尔(Boolean)或梯度(例如,特定存储组件是否提供对查询的支持,例如结构化查询语言(SQL)对获得并扩展每个存储组件的每兆字节成本)。这些存储设备可用于存储许多类型的数据,包括文件,其包括计算机的操作环境、个人文献、媒体库,在一个或多个数据库表中的记录;和电子邮件信箱(其包括电子邮件消息的集合)。每个数据集可具有特定存储因素,诸如数据大小、存取模式(例如,顺序的、流式的或随机存取,大量或少量诸如文件的个体单元,由若干用户同时存取,和对查询的支持,和最小可接受的存取速率,例如无中断的流式媒体对象的最小速率),安全性(例如,哪里可存储数据,谁可存取该数据,在准予存取之前展示的证书类型和数据的敏感性的安全性考虑)以及可存取性(例如,数据是否限于在局域网上本地存取或普遍可用)。同样,这样的存取因素在性质上可为布尔的或梯度的(例如,无论特定数据集是否涉及查询和估计为
5特定数据集提供更高遍及性(throughout)的优点)。在这样的复杂方案内,管理存储集的任务变得并不简单,且管理员可能不得不耗费大量努力和资源来获得、配置、测试并维护这样的存储组件以及识别、提供和备份存储于每个组件上的数据集。特别地,选择特定数据集的存储组件的任务可以是复杂的。这个任务常常涉及识别数据集的各种存储因素且匹配存储因素与存储组件,该存储组件的特点为匹配数据集的存储因素的存储特征。一旦选择了数据成分(data component),管理员可能不得不提供存储组件上充分的存储量(例如,在存储组件上创建存储容量),在存储目录中记录该选择且配置设备并指示个人存取所提供的存储。图1表示示例性方案10,示例性方案10的特点为用户20执行分配包括多个数据集14的数据集组12的存储到包括多个存储组件18的存储集16的任务。对于诸如研究型医院的方案,数据集14可包括例如一个或多个数据库;一个或多个电子邮件信箱;医疗记录集合;以及,研究数据集。此外,每个数据集14可具有可影响存储组件18的选择的各种存储因素。举例而言,数据库可能不得不存储于支持交互能力(transactional capability)的存储组件上;电子邮件信箱集合可能不得不存储于支持大量用户大量地同时存取的存储组件上;医疗记录可能不得不存储于高度安全的服务器上以满足各种法律和监管规定;且研究数据可能不得不存储于支持很大量数据(例如,万亿字节大小的数据集)的存储组件上。此外,存储集16中的每个存储组件18可具有在为任何特定数据集14立即提供存储时被考虑的各种存储能力,包括特点和限制。举例而言,数据库服务器可提供对交互存取(transactional access)的支持,但可涉及比较复杂的管理且不可远程存取。网络文件系统可向许多用户提供很大的存储能力,但可能不支持交互能力。云存储服务可提供对数据的普遍存取,但可提供在互联网上比较有限的遍及性。数据仓库可提供很丰富的存储,但可能并不高度安全。面对数据集14的这样的存储因素和这样的存储组件18的这这样的存储能力,用户20可面临为每个数据集14选择合适存储组件18的任务。用户20因此可评估存储选择的各种性质,诸如实体关系22(例如,第一数据集14中的数据与第二数据集14中数据的关系),使用映射M (例如,每个数据集14的使用模式的考虑,诸如将存取数据集14的过程和用户的位置以及这样的使用的存取模式),和逻辑模式26(例如,每个数据集14的组成,诸如关系数据库中的表或文件系统内的文件的大小、类型和相互关系)。作为这些考虑的结果,用户20可基于数据集14的存储因素与存储组件18的存储能力的匹配来生成物理模式观,包括数据集14到存储组件18的映射。用户20然后可能不得不通过以下操作来实施所选物理模式观在存储组件18上提供存储(例如,创建逻辑容量和设置存取参数),在存储目录中记录该提供,配置设备和软件过程来使用所提供的存储以及在所分配的存储的细节方面通知并指示其他用户20。此外,用户20可能不得不执行各种维护任务,诸如存档或备份存储组件18,周期性地测试存储组件18的完整性,更新存储组件18以提供更多容量,以及替换不正常工作的硬件。应了解图1的示例性方案10涉及用户20方面的大量努力,特别是随着数据集14的数量和种类以及存储组件18的数量和种类增加。使数据集14与合适存储组件18匹配且实施这种选择的过程可涉及大量技术和资源,且无效率的决策可导致资源浪费、数据损失和不适当性能(例如,缓慢的网络传递速率和不适当的存储容量)。此外,一旦选择了物理模式观,物理模式观的重新评估可面临令人生畏的挑战。例如,鉴于数据集组12和存储集18的变化(例如,新数据集14和/或新存储组件18的添加)来重新评估重新分配存储可包括困难和资源密集的过程,特别是对于大量数据集14和存储组件18而言。即使需要这个过程,在评估物理模式观,重新配置存储组件18,在存储组件18之间移动数据,重新配置设备和软件过程以及重新指示其他用户20中涉及的资源可能完全不是节省成本的。因此,无效率可在物理模式观中出现,其减少了存储集16的性能、能力和用途。在本文中提出了用于便利化、减少或消除用户20对物理模式观的选择的技术。根据本文所提出的技术,可以设计出自动的匹配过程以针对具有特定存储因素的每个数据集14自动地选择展示合适存储特征的存储组件18。一般而言,选择物理模式观的问题可视作最佳拟合问题,其中具有不同大小、形状和性质的元素要布置于具有各种性质的一个或多个存储容器内。因此,使数据集14与存储组件18匹配的过程可使用各种最佳拟合技术来自动地解决。匹配可记录于存储目录中,存储目录可包括描述存储集16的存储目录、存储于每个存储集16上的数据集14以及选取这样的选择的基本原理。因此且根据本文所提出的技术,可执行数据集14与存储组件18的自动匹配以比由用户20来选择的情况更高效的方式实现更合适的物理模式观,得到提高的吞吐量、更大的可用容量和/或降低的成本。此外,可通过在每个存储组件18上提供存储和配置设备和软件过程来使用所提供的存储(例如,自动地配置计算机上的网络映射以指向正确容量)而自动地实施该选择。作为另外的优点,自动化过程可以能够识别存储组件18的存储能力(例如,通过带宽测试来识别每个存储组件18的吞吐量),且鉴于数据集组12和存储集16的变化来重新评估物理模式观(例如,识别可带来存储集16性能的各种改进的物理模式观的变化并甚至实施这样的变化)。实际上,一旦用户20创建了数据集14的数据因素的表示,自动化过程可以能够处置选取、实施和持续地重新评估物理模式观的整个过程,从而实现存储集16性能的显著改进和低得多的管理成本。图2表示示例性方案30,其特点为包括各种数据集14的数据集组12到包括各种存储组件18的存储集16的自动映射。在此示例性方案30中,数据集14可被识别为具有各种存储因素32。这样的存储因素32可基于各种实体关系(例如,在关系上取决于第一数据库的第二数据库);各种使用映射24(例如,特定数据库常常可由执行于特定服务器上的应用使用,以及电子邮件信箱的集合可能不得不可以经由互联网远程访问);以及,各种逻辑模式26(例如,研究数据可包括很大文件的小集合,而电子邮件信箱可包括小文件的很大集合)。许多其它考虑也可包括于各个数据集14的存储因素32内。举例而言,医疗记录集合可高度敏感(例如,服从各种隐私规定,诸如健康信息可移动性和责任法案(HIPAA),并且因此可能不得不存储在物理访问受限的高度安全的服务器上)。此外,存储组件18的特点可为各种存储能力34,诸如总的和可用的容量,存取速率(例如,以上传和下载容量测量的局域和广域吞吐量),远程存取、查询能力和安全性考虑。鉴于这些存储因素32和存储能力34,可执行自动匹配以生成物理模式观,物理模式观针对每个数据集14识别其中将存储数据集14的一个或多个存储组件18。匹配可记录于存储目录36中,存储目录36可包括描述存储集16,存储于每个存储集16上的数据集14以及选取这样的选择的基本原理的存储目录。此外,在选择了物理模式观之后,自动化过程可在存储组件18和/或数据集14上自动地实施物理模式观,例如通过配置设备,获得服务和在它们之间存储或重新放置数据集14。图3表示了这些技术的第一实施例,图示为在包括至少两个存储组件18的存储集16中存储具有至少一个存储因素32的数据集14的示例性方法40,至少两个存储组件18分别具有至少一个存储能力34。该示例性方法40可例如实施为存储于具有处理器的设备的存储器组件(例如,系统存储器电路,硬盘驱动器盘片(a platter of a hard diskdrive)、固态存储设备或者磁盘或光盘)中的软件指令集,其当由设备的处理器执行时使得处理器执行本文所提出的技术。示例性方法40始于42且涉及在处理器上执行44指令。更具体而言,指令被配置成识别46数据集14的至少一个存储因素32。指令也被配置成在存储组件18之间选择48具有匹配数据集14的存储因素32的存储能力34的被选择的存储组件18。指令也被配置成使数据集14与存储目录36中的所选存储组件18相关联50,且在所选存储组件18中存储52数据集14。以此方式,示例性方法40执行且实施在存储集16的存储组件18上自动地选择各种数据集14的存储,并因此结束于M。图4表示这些技术的第二实施例,图示为完成对存储于存储集16中的数据集14进行存取的请求的示例性方法60。该示例性方法60可例如实施为存储于具有处理器的设备的存储器组件(例如,系统存储器电路,硬盘驱动器盘片、固态存储设备或者磁盘或光盘)中的软件指令集合,其当由设备的处理器执行时使得处理器执行本文所提出的技术。示例性方法60始于62且涉及在处理器上执行64指令。更具体而言,指令被配置成使用存储目录36,识别66存储数据集14的所选存储组件18。指令也配置成通过根据请求存取在所选存储组件18中的数据集14而完成68该请求。已响应于该请求实现了从存储集16取回和提供数据集14,示例性方法60结束于70。又一个实施例涉及计算机可读介质,其包括被配置成采用本文所提出的技术的处理器可执行指令。这样的计算机可读介质可包括例如计算机可读存储介质,其涉及有形设备,诸如存储器半导体(例如,利用静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)和/或同步动态随机存取存储器(SDRAM)技术的半导体)、硬盘驱动器盘片、闪存设备或者磁盘或光盘(诸如CD-R、DVD-R或软盘);编码计算机可读指令的集合,这些指令当由设备的处理器执行时使得该设备实施本文所提出的技术。这种计算机可读介质还可包括(作为不同于计算机可读存储介质的技术类别)各种类型的通信介质,诸如可通过各种物理现象(例如,电磁信号、声波信号或光信号)和各种有线方案(例如,经由以太网或光纤电缆)和/或无线方案(例如,无线局域网(WLAN),诸如WiFi,个人局域网(PAN),诸如蓝牙或蜂窝或无线电网络)传播的信号,且其编码计算机可读指令的集合,其当由设备的处理器执行时使得该设备实施本文所提出的技术。可以这些方式设计的示例性计算机可读介质在图5中示出,其中实施方式80包括计算机可读介质82 (例如,⑶-R、DVD-R或硬盘驱动器盘片),在其上编码计算机可读数据84。而此计算机可读数据84又包括计算机指令的集合86,其被配置成根据本文所陈述的原理来操作。在一个这样的实施例中,处理器可执行的指令86可被配置成执行在存储集中存储数据集的方法,诸如图3的示例性方法40。在另一个这样的实施例中,处理器可执行的指令86可被配置成实施在存储集中存储数据集的系统,诸如图4的示例性方法60。这个计算机可读介质的某些实施例可包括非暂态计算机可读存储介质(例如,硬盘驱动器、光盘或闪存设备),其被配置成存储以此方式配置的处理器可执行的指令。许多这样的计算机可读介质可由本领域普通技术人员设计,其被配置成根据本文所提出的技术操作。本文所讨论的技术可设计为具有许多方面的变型,且某些变型可带来附加优点和/或减少关于这些和其它技术的其它变型的缺点。此外,某些变型可组合地实施且某些组合的特点可为通过协同合作的附加的优点和/或减少的缺点。这些变型可合并于各个实施例(例如图3的示例性方法40和图4的示例性方法60)中以给予这样的实施例的个别和/或协调的优点。可以在这些技术的实施例之间有所不同的第一方面涉及其中可利用这样的技术的方案。作为第一变型,这些技术可用于存储很多种数据集14,包括文件,文件包括计算机的操作环境、个人文献、媒体库、在一个或多个数据库表中的记录;以及包括电子邮件消息的电子邮件信箱。此外,这样的数据集14可包括选自存储因素集的很多种存储因素16,诸如数据集大小因素(例如,数据集14的总的当前或预测的大小);数据集类型因素(例如,存储于数据集中的数据类型);数据集查询因素(例如,各种类型的查询是否将应用于数据集14);数据集存取速率因素(例如,数据集14的最低可接受的存取速率);以及数据集安全因素(例如,将应用于数据集14的安全性的最小程度和性质)。作为此第一方面的第二变型,这些技术可用于在很多种存储组件18(例如,硬盘驱动器,固态存储系统、高性能存储器电路、云存储服务和带存档)上存储这样的数据集14。这样的存储组件18的特点可为各种类型的文件系统(例如,盘文件系统和网络文件系统)和/或协议(例如,文件传递协议(FTP)、服务器消息块(SMB)、超文本传递协议(HTTP)和基于Web的分布式创作和版本管理(WebDAV))。这样的存储组件18也可包括数据库服务器,其被配置成存储各种类型的关系和/或非关系数据库,包括各种类型的数据库对象,诸如记录、表、关系和存储的过程,以及被配置成在电子邮件信箱中存储电子邮件消息的电子邮件服务器。这些存储组件18的特点还可为选自存储能力集的各种类型的存储能力34,包括各种类型的特点,诸如存储组件类型因素(例如,存储组件18的类型);存储容量因素(例如,存储组件18的总、可用的或可实现的存储容量);存存储取速率因素(例如,上传和下载存取可实现的速率和存储组件18的延迟);存储查询接口因素(例如,存储组件18是否支持各种类型的查询);以及存储安全因素(例如,存储组件18的安全程度和细节,诸如加密和用户认证)。这种存储能力34的细节可包括除了设备之外的因素(例如,存储存取速率因素可限于将存储组件18连接到终端用户的网络的可实现的吞吐量,且存储安全因素可包括社会政策,诸如允许组织的哪些个人物理存取该存储组件18)。本领域普通技术人员可设计可采用本文所提出的技术的许多类型的数据集14和存储组件18。可在这些技术的实施例之间不同的第二方面涉及识别特定存储组件16的存储能力34的方式。作为第一变型,诸如管理员的用户20可向一个实施例指定存储组件16的存储能力。作为第二变型,存储组件16可向一个实施例指示存储组件16的存储能力。举例而言,存储组件16可以能够报告其存储能力34,诸如支持的协议的集合。作为第三变型,实施例可通过检测或监视来识别存储组件16的存储能力34。举例而言,实施例可对存储组件执行各种吞吐量测试来判断其在计算环境内实际可维持的吞吐速率。可替代地,实施例可存取存储日志,存储日志包括涉及至少一个存储组件的存储事件(例如,在网络上进行的数据传递的记录)且可以能够评估该存储日志来识别存储组件18的存储能力34。本领域普通技术人员可设计出根据本文所提出的技术来识别各个存储组件18的存储能力34的许多方式。可在这些技术的实施例之间不同的第三方面涉及选择存储组件18来存储任何特定数据集14的方式。作为第一变型,匹配可涉及许多类型的试探,其比较数据集14的存储因素32与相应存储组件18的存储能力34以做出合适匹配。作为第一实例,数据集14可包括第一实体,其与第二数据集中存储的第二实体具有关系(例如,在软件对象、嵌入于文档或应用中的资源、数据驱动的软件应用和相对应的数据集之间的依赖性,或者在关系数据库表之间的相互关系)。这些技术的实施例可以能够识别这些实体之间的实体关系且可将这种关系用作存储集16的存储因素32,诸如指定具有实体关系的数据集14在一起存储于相同存储组件18上的试探。作为第二实例,数据集14可具有特定使用映射,诸如利用数据集14的用户或软件过程的集合或者描述可存取数据集14的方式的存取模式。该设备因此可将这种使用映射用作存储集16的存储因素32,诸如指定了选择不仅满足数据集14的最低标准而且也(例如通过使使用映射方便)有助于使用映射的存储设备18的试探。作为第三实例,数据集14可具有特定逻辑模式。举例而言,该逻辑模式可限定数据集14包括两个或更多数据集成分(data set component),诸如具有分层次组织为文件夹的文件子集的文件系统或包括表集的数据库。因此该设备可利用此逻辑模式作为数据集16的存储因素32,诸如指定第一存储组件将存储于第一存储组件18上而第二存储组件将存储于不同于第一存储组件的第二存储组件18上的试探。作为此第三方面的第二变型,并非在特别的基础上对于每个数据集14选择存储组件18,一个实施例可全盘地评估数据集组12和存储集16以便识别物理模式观。作为一个这样的实例,该实施例可调用最佳拟合选择试探来选取物理模式28。举例而言,最佳拟合试探可首先选择具有大的或专门存储因素32的数据集14 (例如,很大的数据集14,涉及高同时性或具有涉及高存取速率的使用映射的数据集14,或者高度敏感的数据集14)的存储组件18且然后可选择具有更小和更一般化存储因素32的数据集14(例如,以一般方式存取且可放置于任何地方的小数据集14)的存储组件18。本领域普通技术人员可设计根据本文所提出的技术来选择用于数据集14的存储组件18的许多方式。可在这些技术的实施例之间不同的第四方面涉及实施针对数据集组12和存储集16选择的物理模式28的方式。作为第一变型,一个实施例可自动地实施物理模式观,例如,通过在存储组件18上自动地提供用于分配的数据集14的存储且自动地配置设备和软件过程来利用所提供的存储组件18。可替换地,该实施例可向一个或多个用户20(例如,管理员)通知物理模式观(例如,通过向该用户20提供存储目录36),且可能指导在存储组件18上实施物理模式28。作为第二变型,这些技术的实施例可参与实施,例如通过将数据消费者(例如,数据驱动的应用)持续地连接到其中存储了数据集14的数据成分18。作为第一这样的实例,一个实施例可在不同的存储组件18上存储不同的数据集成分,或者可在两个不同的存储组件18上存储有关系的两个数据集14。当用户20或应用提出指定数据集14的请求(诸如查询)时,该实施例可将数据集14表示为统一的数据集14,例如,通过接触第一存储组件14和第二存储组件14,存取存储于每个存储组件14上的数据集18 (例如,从第一存储组件14取回第一数据子集和从第二存储组件14取回第二数据子集),以及集合响应或数据来向用户20或应用给出组合的结果集(例如,单个查询响应或单个数据集18)。本领域普通技术人员可根据本文所提出的技术设计出涉及在实施自动选择的物理模式观中的这些技术中的实施例的各种方法。可在这些技术的实施例之间不同的第五方面涉及更新存储目录36来反映数据集组12和/或存储集16中的变化。作为第一实例,在接收到添加的存储组件18的通知时,一个实施例可检测添加的存储组件18的至少一个存储能力34且可在存储目录36中表示添加的存储组件18。相反,在接收到移除的存储组件18的通知时,一个实施例可从存储目录36移除该移除的存储组件18 (可选地将存储于其中的任何数据集14重新安置到其它存储组件18)。作为此第五方面的第二变型,一个实施例可偶尔重新评估存储目录36以识别可能的改进。举例而言,在在存储组件18上存储数据集14之后,一个实施例可比较用于存储数据集14的所选存储组件18的存储能力32与存储集16的其它存储组件18的存储能力32,且在识别出与所选存储组件18的存储能力34相比第二存储组件18的存储能力34具有与数据集的存储因素32的更高匹配时,可将数据集14重新安放到第二存储组件18且更新存储目录36以使得数据集14与第二存储组件18相关联。这种重新评估可偶尔地执行(例如,周期性地或者在检测到数据集组12和/或存储集16的变化时)以便在其中识别出可以提高存储集16的可用容量或性能的潜在改进。本领域普通技术人员可根据本文所提出的技术设计配置这些技术的实施例以更新数据目录36的许多方式。尽管已经用特定于结构特征和/或方法动作的语言描述了本主题,应了解在所附权利要求中限定的主题不必限于上文所述的具体特征或动作。然而,上文所述的具体特征和动作被公开为实施权利要求的实例形式。如在本申请中所用的那样,术语“组件”、“模块”、“系统”、“接口”和类似词语通常预期指计算机相关的实体,或者为硬件、硬件与软件的组合、软件或者执行中的软件。举例而言,组件可为但不限于在处理器上运行的过程、处理器、对象、可执行文件、执行的线程、程序和/或计算机。通过说明的方式,运行于控制器上的应用和控制器可为组件。一个或多个组件可驻留于过程和/或执行的线程内,且组件可局限于一个计算机上和/或分布在两个或更多计算机之间。而且,要求保护的主题可实施为使用标准编程和/或工程技术来产生软件、固件、硬件或其任何组合以控制计算机实施所公开的主题的方法、设备、或制件。如本文所用的术语“制件”旨在涵盖可从任何计算机可读的设备、载体或介质存取的计算机程序。当然,本领域技术人员将认识到在不偏离所要求保护的主题的范围或精神的情况下可对此配置做出许多修改。图6和下文的讨论提供用于实施本文所述措施中的一个或多个的实施例的合适计算环境的简要一般描述。图6的操作环境为合适操作环境的唯一实例且不旨在暗示对于操作环境的使用或功能范围的任何限制。实例计算设备包括但不限于个人计算机、服务器计算机、手持或膝上型设备、移动设备(诸如移动电话、个人数字助理(PDA)、媒体播放器和类似物)、多处理器系统、消费电子器件、微型计算机、大型计算机、包括上述系统或设备和类似物中任一个的分布式计算环境。尽管并非需要的,在由一个或多个计算设备执行的“计算机可读指令”的一般情况下描述实施例。计算机可读指令可经由计算机可读介质分布(在下文讨论)。计算机可读指令可实施为程序模块,诸如函数、对象、应用编程接口(API)、数据结构等等,其执行特定任务或实施特定抽象数据类型。通常,计算机可读指令的功能可在各种环境中根据需要组合或分布。图6示出系统90的实例,其包括被配置成实施本文所提供的一个或多个实施例的计算设备92。在一种配置中,计算设备92包括至少一个处理单元96和存储器98。取决于计算设备的确切配置和类型,存储器98可为易失性的(诸如例如RAM)、非易失性的(诸如例如ROM、闪存等)或二者的某种组合。这种配置在图6中以虚线94示出。在其它实施例中,设备92可包括附加特征和/或功能。举例而言,设备92还可包括附加存储设备(例如,可移动和/或不可移动),包括但不限于磁性存储设备、光学存储设备等等。这种附加存储设备在图6中图示为存储设备100。在一个实施例中,用于实施本文所提供的一个或多个实施例的计算机可读指令可在存储设备100中。存储设备100也可存储其它计算机可读指令以实施操作系统、应用程序等等。计算机可读指令可加载到存储器98中以例如由处理单元96来执行。如本文所用的术语“计算机可读介质”包括计算机存储介质。计算机存储介质包括以用于存储诸如计算机可读指令或其它数据的信息的任何方法或技术实施的易失性和非易失性、可移除和不可移除的介质。存储器98和存储设备100为计算机存储介质的实例。计算机存储介质包括但不限于RAM、ROM、ΕΕΗ 0Μ、闪速存储器或其它存储技术;CD-ROM、数字多用盘(DVD)或其它光学存储设备;磁盒、磁带、磁盘存储设备或其它磁性存储设备;或可用于存储期望的信息和可由设备92存取的任何其它介质。任何这样的计算机存储介质可为设备92的部分。设备92也可包括通信连接(一个或多个)106,其允许设备92与其它设备通信。通信连接(一个或多个)106可包括但不限于调制解调器、网络接口卡(NIC)、集成网络接口、射频发射器/接收器、红外端口、USB连接或用于将计算设备92连接到其它计算设备的其它接口。通信连接(一个或多个)106可包括有线连接或无线连接。通信连接(一个或多个)106可发射和/或接收通信介质。术语“计算机可读介质”可包括通信介质。通信介质通常以“调制的数据信号”(例如载波)或其它传输机制体现计算机可读指令或其它数据并包括任何信息传送介质。术语“调制的数据信号”可包括具有其特征集合中的一个或多个特征的或者被改变使得编码信号中的信息的信号。设备92可包括输入设备(一个或多个)104,诸如键盘、鼠标、笔、语音输入设备、触摸输入设备、红外照相机、视频输入设备和/或任何其它输入设备。输出设备(一个或多个)102,诸如一个或多个显示器,扬声器、打印机和/或任何其它输出设备也可包括于设备92中。输入设备(一个或多个)104和输出设备(一个或多个)102可经由有线连接、无线连接或其任何组合而连接到设备92。在一个实施例中,自另一计算设备的输入设备或输出设备可用作计算设备92的输入设备(一个或多个)104或输出设备(一个或多个)102。计算设备92的组件可由诸如总线的各种互连而连接。这种互连可包括外围组件互连(PCI),诸如PCI Express、通用串行总线(USB)、火线(IEEE 1394)和光学总线结构等等。在另一实施例中,计算设备92的组件可由网络互连。举例而言,存储器98可由位于由网络互连的不同物理位置的多个物理存储器单元构成。
12
本领域技术人员将认识到用于存储计算机可读指令的存储设备可跨网络而分布。举例而言,可经由网络108存取的计算设备110可存储用于实施本文所提供的一个或多个实施例的计算机可读指令。计算设备92可存取计算设备110且下载计算机可读指令的一部分或全部供执行。可替换地,计算设备92可根据需要下载计算机可读指令段,或者一些指令可在计算设备92处执行且一些指令在计算设备110处执行。在本发明中提供了实施例的各种操作。在一个实施例中,所描述的操作中的一个或多个可构成存储于一个或多个计算机可读介质上的计算机可读指令,其若由计算设备执行则将使计算设备执行所描述的操作。描述操作中的某些或全部的次序不应理解为暗示这些操作必需是次序依赖性的。受益于本描述的技术人员将理解替代次序。另外应了解并非所有的操作必须存在于本发明所提供的每个实施例中。此外,词语“示例性”在本文中用于表示用作实例、例子或说明。本文中描述为“示例性”的任何方面或设计不必解释为优于其它方面或设计。而是,使用词语示例性预期以具体方式表示概念。如在本申请中所用的,术语“或”预期表示包括性“或”而非排他性“或”。即,除非另外指定或者从上下文显然,“X采用A或B”预期表示自然的包容性置换中的任一个。即,如果X采用A ;X采用B ;或者X采用A和B 二者,那么在前述例子中的任何例子下满足“X采用A或B”。此外,如在本申请和所附权利要求中所用的冠词“一”可一般地理解为表示“一个或多个”,除非另外指定或从上下文显然指单数形式。而且,尽管已经关于一个或多个实施方式示出和描述了本公开,本领域技术人员可基于对于本说明书和附图的阅读和理解而想到等效的更改和修改。本公开包括所有这样的修改和更改且仅受到所附权利要求的范围限制。特别地关于由上文所述的组件(例如,元件、资源等)执行的各个功能,用于描述这样的组件的术语预期对应于(除非另外指示)执行所描述组件的指定功能的任何组件(例如,其为在功能上等效的),即使在结构上并不等效于执行本公开的这里图示的示例性实施方式中的功能的所公开的结构。此外,虽然已关于若干实施方式中的仅一个实施方式公开了本公开的特定特征,这样的特征可与其它实施方式的一个或多个其它特点组合,对于任何给定的或特定的应用,这可以是期望的和有益的。而且,就术语“包括”、“具有”、“具备”、“带有”或其变型被或者用在详细的说明书中或者用在权利要求中这一程度而言,这样的术语预期为以类似于术语“包括”的方式而为包容性的。
权利要求
1.一种在具有处理器和存储目录(36)的设备(92)上在存储集(16)中存储具有至少一个存储因素(3 的数据集(14)的方法(40),所述存储集(16)包括至少两个存储组件(18),这两个存储组件(18)分别具有至少一个存储能力(34),所述方法00)包括在处理器上执行G4)指令,所述指令被配置成识别G6)所述数据集(14)的至少一个存储因素(32);在所述存储组件之间,选择G8)具有匹配所述数据集(14)的所述存储因素(3 的存储能力(34)的被选择的存储组件(18);在所述存储目录(36)中使所述数据集(14)与所选存储组件(18)相关联(50);以及在所选存储组件(1 中存储(5 所述数据集(14)。
2.根据权利要求1所述的方法,选自存储因素集的所述数据集的存储因素包括数据集大小因素;数据集类型因素;数据集查询因素;数据集存取速率因素;以及数据集安全因素。
3.根据权利要求1所述的方法,选自存储能力集的相应存储组件的存储能力包括存储组件类型能力;存储容量能力;存储存取速率能力;存储查询接口能力;以及存储安全能力。
4.根据权利要求1所述的方法所述设备能存取存储日志,所述存储日志指示涉及至少一个存储组件的至少一个存储事件;以及所述指令被配置成评估所述存储日志来识别所述至少一个存储组件的至少一个存储能力。
5.根据权利要求1所述的方法所述设备具有至少一个试探,所述试探被配置成选择具有匹配所述数据集的存储因素的存储能力的被选择的存储组件;以及所述指令被配置成通过调用所述至少一个试探来选择用于所述数据集的被选择的存储组件。
6.根据权利要求5所述的方法所述数据集包括第一实体,所述第一实体与第二数据集的第二实体具有关系;所述设备包括指定所述第一实体与所述第二实体的关系的实体关系;以及所述指令被配置成根据所述实体关系来识别所述存储集的至少一个存储因素。
7.根据权利要求6所述的方法,至少一个试探被配置成选择存储组件来存储数据集和第二数据集。
8.根据权利要求5所述的方法所述设备包括识别数据集的至少一个使用的使用映射;以及所述指令被配置成根据所述使用映射来识别所述存储集的至少一个存储因素。
9.根据权利要求8所述的方法,至少一个试探被配置成选择具有便于所述数据集的至少一个使用的存储能力的存储组件。
10.根据权利要求5所述的方法所述设备包括识别所述数据集的逻辑存储结构的逻辑模式;以及所述指令被配置成根据所述逻辑模式来识别所述存储集的至少一个存储因素。
11.根据权利要求10所述的方法所述逻辑模式限定至少数据集成分;以及至少一个试探,其包括在第一存储组件上存储第一数据集成分;以及在不同于所述第一存储组件的第二存储组件上存储第二数据成分。
12.根据权利要求5所述的方法所述试探包括最佳拟合选择试探;以及所述指令被配置成通过调用最佳拟合选择试探来选择数据集的存储组件。
13.一种完成从具有处理器和存储目录(36)的设备(92)上的存储集(16)存取数据集(14)的请求的方法,所述存储集(16)包括至少两个存储组件(18),所述存储组件(18)分别具有至少一个存储能力(34),所述方法(60)包括在所述处理器上执行(64)指令,所述指令被配置成使用所述存储目录(36),识别(66)存储所述数据集(14)的被选择的存储组件(18);以及通过根据所述请求存取所选存储组件(18)中的所述数据集(14)来完成(68)所述请求。
14.根据权利要求13所述的方法所述请求包括指定至少两个数据集的查询,这两个数据集为存储于第一存储组件上的第一数据集和存储于不同于所述第一所选存储组件的第二所选存储组件上的第二数据集;以及完成所述请求包括对于相应数据集,根据查询来存取存储所述数据集的所选存储组件。
15.根据权利要求13所述的方法所述请求包括取回数据集的请求,所述数据集包括存储于第一存储组件上的第一数据子集和存储于不同于所述第一所选存储组件的第二所选存储组件上的第二数据子集;以及所述指令被配置成通过以下操作来完成所述请求从所述第一存储组件取回所述第一数据子集;从所述第二存储组件取回所述第二数据子集;以及集合所述第一数据子集和所述第二数据子集以生成所述数据集。
16.一种计算机可读介质,具有存储其上的指令,指令在由计算机执行时使计算机执行根据权利要求1-15中任一项所述的方法。
全文摘要
企业存储集的管理员可执行在大量和多种存储组件上存储大量和多种数据集的任务。但是,由管理员手动地选择物理模式可能是耗时的,可能生成无效的物理模式,且可能不易于随着数据集和存储集变化来重新评估。在本文中提出了用于通过以下操作自动地确定物理模式的技术比较每个数据集的存储因素(例如,数据大小、与其它数据集的关系和用户对数据集的使用)与存储组件的存储能力,选择合适的存储组件,以及在存储组件上实施数据集的存储。这些技术的实施例由此可实现具有物理模式的提高的效率和灵活性的物理模式的自动识别,同时保存了管理资源。
文档编号G06F17/30GK102567480SQ201110426190
公开日2012年7月11日 申请日期2011年12月19日 优先权日2010年12月17日
发明者M.A.摩西, N.萨劳吉, S.卡塔里亚, W.H.敖, Y.孙, Y.徐 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1