CN103793457B - 用于使用利用率分析管理存储器利用率的系统和方法 - Google Patents

用于使用利用率分析管理存储器利用率的系统和方法 Download PDF

Info

Publication number
CN103793457B
CN103793457B CN201310529228.5A CN201310529228A CN103793457B CN 103793457 B CN103793457 B CN 103793457B CN 201310529228 A CN201310529228 A CN 201310529228A CN 103793457 B CN103793457 B CN 103793457B
Authority
CN
China
Prior art keywords
space
string field
tables
computer
virtual table
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.)
Active
Application number
CN201310529228.5A
Other languages
English (en)
Other versions
CN103793457A (zh
Inventor
A·库马拉
S·R·帕蒂尔
G·西瓦库马尔
M·A·特里
M·B·特雷瓦桑
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN103793457A publication Critical patent/CN103793457A/zh
Application granted granted Critical
Publication of CN103793457B publication Critical patent/CN103793457B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/256Integrating or interfacing systems involving database management systems in federated or virtual databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

公开了用于使用使用分析在云环境和传统环境中管理存储器使用的方法。所述方法可以在包括硬件和软件的组合的计算机基础结构中实现。所述方法包括确定空间在具有模式定义的一个或者多个表内可用,所述模式定义带有具有预定长度的字符串字段。所述方法进一步包括创建虚拟表和将可用空间映射至虚拟表以用于由一个或多个记录来填充。

Description

用于使用利用率分析管理存储器利用率的系统和方法
技术领域
本发明一般地涉及计算系统,并且更具体地,涉及用于使用利用率分析在云环境和传统环境中管理存储器利用率的方法和系统。
背景技术
数据库模式以字段具有足够空间来存储数据这样的方式来设计。然而,对于大多数实例,用于存储这些字段的空间比实际使用的多。当然,这样导致空间和资源的浪费。
例如,考虑用于存储客户地址信息的典型数据库模式如下:
Table CustmerAddress{
Addrlinel varchar(255),
AddrLine2varchar(255),
City varchar(100),
PinCode varchar(10),
Country varchar(50),
};
对于上述示例,计算机数据库应用可以从虚拟存储管理器(例如操作系统的组件)要求期望数量的字节用于存储客户地址。然而,在该示例中,CustmerAddress Table只有少数(如果有的话)实例将使用所有分配空间,特别是Addrline1和Addrline2字段。在这种情况下,由于并非用于存储客户地址的所有分配空间都被使用的事实,资源被浪费了。可以更好地实现这些资源(空间)以满足其它需要。同样,如这里所描述的,需要消耗大量的能量(即电力)以保持存储器中或者外部存储设备上的那些未使用的空间。
基于云的范例的关键特征是高效的资源利用(例如,通过虚拟化实现)。许多算法存在用于高水平的有效存储器分配利用。然而,有下列方面的差距:
由程序静态使用的数据块可能具有以下特征:“客户”表具有char30的名字、char10的中间名和char50的姓氏。由于缺乏定义数据长度的标准,设计者任意地指定数据长度并且大部分时间降低相关风险总是期望的。在现实中,由于整个预留空间可能根本不会被使用,因此浪费了空间和资源;以及
商业现货供应的产品(COTS)具有预定义的数据表;理想地,将单独使用各子集域和相关的表。例如,用于库存管理的COTS应用将具有预定管理功能和相关的数据库表,这些可能根本不会被企业使用。
在上述所有情况下,额外的能量被用于维持空的未使用的存储器,即没有最佳地利用存储器资源。事实上,众所周知,现代的1太字节驱动器每兆字节消耗大约38毫瓦。根据这个度量,1字节将消耗0.036毫微瓦。在包括多个应用的大生态系统中,未使用存储器的比例越大,接下来导致使用多得多的能量消耗。
发明内容
在本发明的第一方面中,在包括硬件和软件的组合的计算机基础结构中实现了方法。方法包括确定空间在具有模式定义的一个或者多个表内可用,该模式定义带有具有预定长度的字符串字段。方法进一步包括创建虚拟表和将可用空间映射至虚拟表以用于由一个或多个记录来填充。
在本发明的另一个方面中,系统在硬件中实现并且包括计算机基础结构,可操作用于:跟踪一个或者多个定义表的字段内的空间;创建一个或者多个定义表内所有可用空间的跟踪器表;创建虚拟表;以及将可用空间映射至虚拟表。
在本发明的另一方面中,计算机程序产品包括具有体现在存储介质中的可读程序代码的计算机可用存储介质。计算机程序产品包括至少一个组件,可操作用于监控具有模式定义的一个或者多个表的字段内的空间,该模式定义具有第一空间分配。计算机程序产品进一步包括至少一个组件,可操作用于确定一个或者多个字段内需要的额外空间。计算机程序产品进一步包括至少一个组件,可操作用于增加一个或者多个字段内的值以提供额外空间。
在本发明的进一步方面中,方法包括提供计算机基础结构,可操作用于确定空间在具有模式定义的一个或者多个表内可用,该模式定义带有具有预定长度的字符串字段。计算机基础结构进一步可操作用于将可用空间映射至虚拟表以用于由一个或多个记录来填充,并且根据需要释放映射至用于一个或者多个表内的虚拟表的任何空间。
在本发明的另一个方面中,计算机系统存储管理包括CPU、计算机可读存储器和计算机可读存储介质。所述系统包括第一程序指令,用以确定空间在具有模式定义的一个或者多个表内可用,该模式定义带有具有预定长度的字符串字段。系统包括第二程序指令,用以创建虚拟表。系统包括第三程序指令,用以将可用空间映射至虚拟表以用于由一个或多个记录来填充。系统包括第四程序指令,用以根据需要释放映射至用于一个或者多个表内的虚拟表的任何空间。第一至第四程序指令存储在所述计算机可读存储介质上由所述CPU通过所述计算机可读存储器执行。
附图说明
参考提到的多个附图,通过本发明的示例性实施例的非限制性示例,在随后的详细说明中描述了本发明。
图1描绘了根据本发明实施例的云计算节点;
图2描绘了根据本发明实施例的云计算环境;
图3描绘了根据本发明实施例的抽象模型层;
图4示出了根据本发明的各方面的实现框图;
图5示出了为了实现本发明的各方面,针对一段时间利用的实际空间和能量的显示;
图6示出了为了实现本发明的各方面,保留(和/或可用)的存储器与实际使用的存储器的显示;
图7描绘了根据本发明的各方面,在一个或者多个定义表中使用可用空间的示例性流程图;
图8示出了根据本发明的各方面,动态授权处理的示例性流程图;以及
图9示出了根据本发明的各方面固定利用水平的处理的示例性流程图。
具体实施方式
本发明一般地涉及计算系统,并且更具体,涉及用于使用使用分析在云环境和传统环境中管理存储器使用的方法和系统。根据本发明的各方面,有利地可操作、构造和/或设计本发明的方法和系统以有效地利用分配存储器和/或外部存储设备的空间(例如,存储器),这反过来将允许高效管理功率消耗。例如,通过实现本发明,现在有可能使用定义模式内的所有可用空间,例如,通过创建虚拟表并且将可用空间映射至虚拟表。
在一个使用示例中,提供实用程序(例如,存储管理引擎)作为数据库系统的一部分,以更高效和更有效地管理数据库内使用和未使用的空间。示例性地,在实施例中,实用程序管理数据库系统中的空间,在该数据库系统中,数据库管理员用具有一定长度的字符串字段定义模式,并且并非所有分配的长度(按照每个模式定义的长度)都被记录中的每个条目使用。基于用户的许可,这可以在传统环境或者基于云的环境内实现。
在更具体的实施例中,空间的管理可以以在使用端提供所有空间(按照每个模式的定义)这种方式执行。这可以通过指定定义表内的可用空间用于虚拟表,并且当表再次需要的时候在虚拟表内释放这种空间来完成。例如,本发明的实用程序可以跟踪数据库内的可用(未使用)空间,并且将可用空间指定或映射至虚拟表。当需要时,可用空间可以接着按照原始模式定义释放和使用,从而确保按照定义模式的所有空间可以由终端用户使用,例如,终端用户可以使用原始模式定义中定义的字符串的全部或者一部分。相应地,在实现中,当用户没有按照允许的模式定义占据所有空间时,本发明的实用程序将释放空间至虚拟表,例如,以便可以更高效地使用空间,然后当在后来的时间需要时,从虚拟表释放该空间返回至原始表。
在实施例中,本发明的实用程序可以是数据库系统的组件。以这种方式,数据库系统管理员可以利用针对他们选择的模式的实用程序,从而确认针对具体模式的空间的管理。对于数据库的终端用户,该功能的使用将是透明的。也就是说,终端用户仍将按照模式定义获得可用空间;然而,实用程序将维持管理模式的空间的实际使用的跟踪,并将使用未使用的空间满足其它需求。
云计算
首先应当理解,尽管本公开包括关于云计算的详细描述,但其中记载的技术方案的实现却不限于云计算环境,而是能够结合现在已知或以后开发的任何其它类型的计算环境而实现。
为了方便起见,详细描述包括从2009年10月7日Peter Mell和Tim Grance的“Draft NIST Working Definition of Cloud Computing”获得的下列定义,其在随附提交的IDS中引用,并且其副本被附加于此。
云计算是一种服务交付模式,用于对共享的可配置计算资源池进行方便、按需的网络访问。可配置计算资源是能够以最小的管理成本或与服务提供者进行最少的交互就能快速部署和释放的资源,例如可以是网络、网络带宽、服务器、处理、内存、存储、应用、虚拟机和服务。这种云模式可以包括至少五个特征、至少三个服务模型和至少四个部署模型。
特征包括:
按需自助式服务:云的消费者在无需与服务提供者进行人为交互的情况下能够单方面自动地按需部署诸如服务器时间和网络存储等的计算能力。
广泛的网络接入:计算能力可以通过标准机制在网络上获取,这种标准机制促进了通过不同种类的瘦客户机平台或厚客户机平台(例如移动电话、膝上型电脑、个人数字助理PDA)对云的使用。
资源池:提供者的计算资源被归入资源池并通过多租户(multi-tenant)模式服务于多重消费者,其中按需将不同的实体资源和虚拟资源动态地分配和再分配。一般情况下,消费者不能控制或甚至并不知晓所提供的资源的确切位置,但可以在较高抽象程度上指定位置(例如国家、州或数据中心),因此具有位置无关性。
迅速弹性:能够迅速、有弹性地(有时是自动地)部署计算能力,以实现快速扩展,并且能迅速释放来快速缩小。在消费者看来,用于部署的可用计算能力往往显得是无限的,并能在任意时候都能获取任意数量的计算能力。
可测量的服务:云系统通过利用适于服务类型(例如存储、处理、带宽和活跃用户帐号)的某种抽象程度的计量能力,自动地控制和优化资源效用。可以监测、控制和报告资源使用情况,为服务提供者和消费者双方提供透明度。
服务模型如下:
软件即服务(SaaS):向消费者提供的能力是使用提供者在云基础架构上运行的应用。可以通过诸如网络浏览器的瘦客户机接口(例如基于网络的电子邮件)从各种客户机设备访问应用。除了有限的特定于用户的应用配置设置外,消费者既不管理也不控制包括网络、服务器、操作系统、存储、乃至单个应用能力等的底层云基础架构。
平台即服务(PaaS):向消费者提供的能力是在云基础架构上部署消费者创建或获得的应用,这些应用利用提供者支持的程序设计语言和工具创建。消费者既不管理也不控制包括网络、服务器、操作系统或存储的底层云基础架构,但对其部署的应用具有控制权,对应用托管环境配置可能也具有控制权。
基础架构即服务(IaaS):向消费者提供的能力是消费者能够在其中部署并运行包括操作系统和应用的任意软件的处理、存储、网络和其他基础计算资源。消费者既不管理也不控制底层的云基础架构,但是对操作系统、存储和其部署的应用具有控制权,对选择的网络组件(例如主机防火墙)可能具有有限的控制权。
部署模型如下:
私有云:云基础架构单独为某个组织运行。云基础架构可以由该组织或第三方管理并且可以存在于该组织内部或外部。
共同体云:云基础架构被若干组织共享并支持有共同利害关系(例如任务使命、安全要求、政策和合规考虑)的特定共同体。共同体云可以由共同体内的多个组织或第三方管理并且可以存在于该共同体内部或外部。
公共云:云基础架构向公众或大型产业群提供并由出售云服务的组织拥有。
混合云:云基础架构由两个或更多部署模型的云(私有云、共同体云或公共云)组成,这些云依然是独特的实体,但是通过使数据和应用能够移植的标准化技术或私有技术(例如用于云之间的负载平衡的云突发流量分担技术)绑定在一起。
云计算环境是面向服务的,特点集中在无状态性、低耦合性、模块性和语意的互操作性。云计算的核心是包含互连节点网络的基础架构。
现在参照图1,示出了云计算节点示例的示意图。云计算节点10仅仅是适当云计算节点的一个示例,并且不旨在就此处描述的本发明实施例的功能或者使用范围提出任何限制。无论如何,云计算节点10能够被实现和/或执行如前所述的功能中的任何一个。图1也可以表示能够执行和/或实现此处描述的方法的任务和/或功能的计算基础结构。
云计算节点10具有计算机系统/服务器12,其可与众多其它通用或专用计算系统环境或配置一起操作。众所周知,适于与计算机系统/服务器12一起操作的计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统﹑大型计算机系统和包括上述任意系统的分布式云计算技术环境,等等。
计算机系统/服务器12可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括执行特定的任务或者实现特定的抽象数据类型的例程、程序、目标程序、组件、逻辑、数据结构等。计算机系统/服务器12可以在通过通信网络链接的远程处理设备执行任务的分布式云计算环境中实施。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
如图1中所示,云计算节点10中的计算机系统/服务器12以通用计算设备的形式示出。计算机系统/服务器12的组件可以包括但不限于:一个或者多个处理器或者处理单元16、系统存储器28以及将包括系统存储器28的各种系统组件耦合至处理器16的总线18。在实施例中,如此处更为详细的描述,计算机系统/服务器12包括存储管理引擎80(也称为“存储器能量优化器”(EOFM))或者与其通信。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是能够被计算机系统/服务器12访问的任意可获得的介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机系统/服务器12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图1未显示,通常称为“硬盘驱动器”)。尽管图1中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
与操作系统、一个或者多个应用程序、其它程序模块和程序数据一样,具有一组(至少一个)程序模块42的程序/实用程序40可以通过示例而并非限制的方式存储在存储器28中。操作系统、一个或者多个应用程序、其它程序模块和程序数据或者其某种组合可以包括网络环境的实现。程序模块42通常完成如此处描述的本发明的实施例的功能和/或方法。例如,可以将存储管理引擎80的一些或者全部功能实现为程序模块42中的一个或者多个。另外,可以将存储管理引擎80实现为单独的专用处理器或者单个或若干处理器以提供此处描述的功能。作为示例,可以在例如图1中示出的驻留于任何计算系统中的图形用户接口(GUI)(例如,显示器24)中实现存储管理引擎80。显示器24可以包括例如键盘、鼠标和/或触摸屏的用户接口。
在实施例中,存储管理引擎80使用利用率分析在云环境和传统环境中管理存储器利用率。在实施例中,存储管理引擎80可以驻留于存储系统34中;例如,(在美国和/或世界范围内,IBM和Blue Stack是国际商用机器的商标)或者独立软件供应商(ISV)数据库服务器。在实现中,存储管理引擎80在存储系统中管理空间,其中开发者和/或管理员使用具有一定长度的字符串字段定义模式,并且并非所有分配长度(按照模式定义的长度)都被记录中的每个条目使用。可选地,如此处更详细地讨论的,当必要时,存储管理引擎80可以将额外空间分配至字符串字段。
在实施例中,存储管理引擎80可以基于用户的许可管理未使用的空间。这通过维持管理模式的空间的实际利用率的跟踪(至少部分地)来完成。更具体地,在实现中,存储管理引擎80包括内部映射器,该内部映射器以基于范围的格式(例如,起始位置、长度等)维持关于未使用空间的信息并且将该信息映射至虚拟表。以这种方式,存储管理引擎80可以以动态方式使用虚拟表中的可用空间。在进一步的实施例中,存储管理引擎80可以创建可变长度字符字段以更有效地在定义模式内使用空间。
在更具体的实施例中,可操作、构建和/或设计存储管理引擎80用以提供下列功能:
跟踪相对于保留空间的实际使用的存储器空间,并且当需要时,将未使用的空间分配至一个或者多个虚拟表,或者从一个或者多个虚拟表分配未使用的空间;
当由用户触发时,显示针对一段时间利用的实际空间和能量(参见例如,图5);
允许用户选择节省的百分比和内部补充未使用空间,从而节省空间和成本;
允许用户定义哪个字段和/或特定字段内的空间可以或者不可以被释放用以在其它地方利用;以及
容易看出实际的预留的存储器和/或未使用的存储器(参见,例如,附图6)。
相应地,通过实现本发明的存储管理引擎80,现在有可能克服在维持这种未使用存储器和/或存储空间时低效的存储器利用和相关的能量耗费的基本问题。就能量消耗而言,由于存储系统(例如,数据库)不再需要被消耗用以在存储器或外部存储设备中保持那些未使用的空间,因此将节省大量的能量(即,电力)。
计算机系统/服务器12还可以与一个或者多个外部设备14(例如键盘、指示设备、显示器24等)、使用户能够与计算机系统/服务器12交互的一个或者多个设备、和/或使计算机系统/服务器12能够与一个或者多个其它计算设备通信的任何设备(例如网卡、调制解调器等)通信。这种通信可以通过I/O接口22发生。而且,计算机系统/服务器12可以通过网络适配器20与一个或者多个网络(例如局域网(LAN)、一般广域网(WAN)和/或公共网络(例如,因特网))通信。如所描绘的,网络适配器20通过总线18与计算机系统/服务器12的其它组件通信。应当理解,尽管未示出,其它硬件和/或软件组件可以与计算机系统/服务器12结合使用。示例包括,但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动器阵列、RAID(廉价磁盘冗余阵列或者独立磁盘冗余阵列)系统、磁带驱动器和数据存档存储系统等。
下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,创建了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。
也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、其它可编程数据处理装置、或其他设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品。
也可以将计算机程序指令加载至计算机、其它可编程数据处理装置或者其它设备上以使得在计算机、其它可编程装置或者其它设备上执行一系列操作步骤,以产生计算机实现过程,从而在计算机或者其它可编程装置上执行的指令提供用于实现流程图和/或框图中的一个或者多个方框中规定的功能/动作的过程。
现在参考图2,其中显示了示例性的云计算环境50。如图所示,云计算环境50包括云计算消费者使用的本地计算设备可以与其相通信的一个或者多个云计算节点10,本地计算设备例如可以是个人数字助理(PDA)或移动电话54A,台式电脑54B、笔记本电脑54C和/或汽车计算机系统54N。云计算节点10之间可以相互通信。可以在包括但不限于如上所述的私有云、共同体云、公共云或混合云或者它们的组合的一个或者多个网络中将云计算节点10进行物理或虚拟分组(图中未显示)。这样,云的消费者无需在本地计算设备上维护资源就能请求云计算环境50提供的基础架构即服务(IaaS)、平台即服务(PaaS)和/或软件即服务(SaaS)。应当理解,图2显示的各类计算设备54A-N仅仅是示意性的,云计算节点10以及云计算环境50可以与任意类型网络上和/或网络可寻址连接的任意类型的计算设备(例如使用网络浏览器)通信。
现在参考图3,其中显示了云计算环境50(图2)提供的一组功能抽象层。首先应当理解,图3所示的组件、层以及功能都仅仅是示意性的,本发明的实施例不限于此。如图3所示,提供下列层和对应功能:
硬件和软件层60包括硬件和软件组件。硬件组件的例子包括:主机,例如 系统;基于RISC(精简指令集计算机)体系结构的服务器,例如IBM系统;IBM系统;IBM系统;存储设备;网络和网络组件。软件组件的例子包括:网络应用服务器软件,例如IBM应用服务器软件;数据库软件,例如IBM数据库软件。(IBM,zSeries,pSeries,xSeries,BladeCenter,WebSphere以及DB2是国际商业机器公司在全世界各地的注册商标)。
虚拟层62提供一个抽象层,该层可以提供下列虚拟实体的例子:虚拟服务器、虚拟存储、虚拟网络(包括虚拟私有网络)、虚拟应用和操作系统,以及虚拟客户端。
在一个示例中,管理层64可以提供下述功能:资源供应功能:提供用于在云计算环境中执行任务的计算资源和其它资源的动态获取;计量和定价功能:在云计算环境内对资源的使用进行成本跟踪,并为此提供帐单和发票。在一个例子中,该资源可以包括应用软件许可。安全功能:为云的消费者和任务提供身份认证,为数据和其它资源提供保护。用户门户功能:为消费者和系统管理员提供对云计算环境的访问。服务水平管理功能:提供云计算资源的分配和管理,以满足必需的服务水平。服务水平协议(SLA)计划和履行功能:为根据SLA预测的对云计算资源未来需求提供预先安排和供应。
工作负载层66提供可以利用云计算环境的功能的示例。可以由该层提供的工作负载和功能的示例包括:映射和导航、软件开发和生命周期管理、虚拟教室教育传送、数据分析处理、交易处理和未使用空间的管理。根据本发明的各方面,未使用空间工作负载/功能的管理操作以执行此处描述的过程中的一个或多个,包括但不限于:
跟踪相对于保留和/或未使用空间实际使用的存储器空间,并且当需要时,将未使用的空间分配至一个或者多个虚拟表,或者从一个或者多个虚拟表分配未使用的空间;
当由用户触发时,显示针对一段时间利用的实际空间和能量;
允许用户选择节省的百分比和内部利用未使用空间,从而节省空间和成本;
允许用户定义哪个字段和/或特定字段内的空间可以或者不可以被释放用以在其它地方利用;以及
容易形象化实际相对预留的存储器。
本领域的技术人员应当理解,本发明的方面(包括此处提供的存储管理引擎80和功能)可以体现为系统、方法或者计算机程序产品。相应地,本发明的方面可以采用全部硬件实施例、全部软件实施例(包括固件、驻留软件、微代码等)或者组合软件和硬件方面的实施例的形式,它们全部在此可以通称为“电路”、“模块”或“系统”。此外,本发明的方面可以采用体现在一个或者多个计算机可读介质中的计算机程序产品的形式,所述计算机可读介质具有体现在其中的计算机可读程序代码。
可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者上述的任意的合适组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括以下:具有一条或多条导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式光盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括例如在基带中或者作为载波一部分传播的数据信号,其中承载了被体现的计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
体现在计算机可读介质上的程序代码可以用任何适当的介质传输,包括——但不限于——无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行为本发明的方面操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++等,以及常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
图4示出了实现本发明的各方面的框图。具体地,在图4中,示出了在存储系统34中实现的存储管理引擎80。例如,存储系统34可以是任何数据库系统。存储管理引擎80的功能可以与包括任何类型用户接口(例如,键盘、鼠标和/或触摸屏实现)的显示设备24相连接。
在非限制性示例性实施例中,存储管理引擎80将监控由数据库管理者或者管理员创建的表100a、100b和100c。尽管示出了三个表,如由数据库管理员针对特定的数据库配置定义的,本领域的技术人员应当理解数据库可以包括任何数量的表,具有任何数量字符长度的任何数量字段。在实施例中,表100a为用户信息定义了字段,例如:除标识符(identifier)之外,还有名字(first name)、中间名(middle name)和姓氏(last name)。在实施例中,根据数据库管理者的定义,定义字段中的每一个可以包括一定字符长度。例如在表100a中,first name=30、middle name=30、last name=50以及identifier=40。表100b为用户信息定义字段,其包括,例如,driver license(驾照)=50、passport(护照)=30、socialsecurity number(社会保险号)=50以及senior citizen number(老年市民号)=40。表100c为用户地址定义字段,其包括,例如,door number(门牌号)=50、street first(街道名1)=30、street middle(街道名2)=50、city(城市)=40、postcode(邮编)=10以及country(国家)=50。
本领域的技术人员应当理解,可以设计每一个表的每一个字段以提供足够的空间给数据条目;然而,数据库管理员为了降低风险为这些字段中的每一个提供比典型地需要的空间更多的空间是很常见的。同样地,数据库将具有可用(例如,未使用的)空间是常见的,该可用空间现在可以通过实现如下面进一步描述的本发明被分配给其它需要。具体地,仍然参照图4,存储管理引擎80将创建将从表100a-100c(例如,100a-100n)收集信息的跟踪表110。更具体地,跟踪表110将跟踪所有使用的(或者未使用的)空间(例如,表100a-100c的输入记录),包括用于每个字段的字符量。例如,在所示的图示中,跟踪表110记录了下列空间(例如,字符长度)可用于用户信息(表100a):first name=15、middle name=5、last name=30以及identifier=20。还示出了可用于表100b和100c的额外空间。
通过减法,存储管理引擎80将确定存在可用于从表100a再分配的未使用空间;也就是说,基于表100a中定义的原始字符长度,下列是使用的空间:first name=15、middlename=25、last name=20以及identifier=20。在实施例中,显示器24可以在视觉上表示相对于保留的存储器的未使用空间,以及针对一段时间利用的实际空间和能量。(参见,例如图5和6)
在实施例中,使用显示器和附随的用户接口,用户现在可以为了管理表100a-100c的未使用的空间选择某些选项。例如,用户可以选择选项以使用表100a-100c的一定比例的未使用空间。在图4的说明性示例中,例如,基于用户选择的选项,存储管理引擎80可以从可用空间创建虚拟表115。为了做到这一点,内部映射器120将把表100a-100c中的未使用的空间映射至虚拟表115(例如,标记为客户联系方式(Customer Contact))。因此,可以定义虚拟表115以包括虚拟地映射至表100a-100c内的可用空间的字段。在实施例中,内部映射器120可以通过分割机构映射需要的空间,例如,合并两个可用空间以满足一个记录需要。本领域的技术人员应当理解,为了更有效地使用能量,可以在每个时间表的非高峰时间期间或者当峰值负荷降低时创建虚拟表。
在进一步的实施例中,本发明的处理可以通过动态授权处理自动操作。在动态授权处理中,可以为表100a-100c中的任何一个的某些字段配置最小值和增量值。例如,对于表中的每个字段,管理员可以为字段设置大小的上限和下限,其允许系统通过动态创建/更改处理动态地改变字段的大小。这允许数据库管理员基于由数据库管理员(或者开发者)定义的参数首先创建具有最小长度的字段和增加字段的大小。可以为存储器的分配扩展该类型的处理(例如算法)以变得复杂,并且因此节省更多的能量。
作为非限制性说明性示例:
CREATE TABLE CustomerAddress
(
DoorNumber varchar(255)lower(50)increment(25),
StreetFirst varchar(255)lower(30)increment(2),
StreetMiddle varchar(255)lower(50)increment(10),
City varchar(255)lower(40)increment(10),
PostCode(varcharl0),
Country varchar(50)
)
在上述示例中,将首先创建大小为50的DoorNumber(门牌号)。当针对Doornumber字段的插入请求到来时,数据库可以更改其自身以使字段的大小增加25或者它可以创建称为CustomerAddressTMP的临时表,其允许数据库具有带有DoorNumber varchar(75)或者DoorNumber(255)的临时表。这将允许数据库或者分配全字段或者增加字段。数据库还可以在每个时间表的非高峰时间期间或者当峰值负荷降低时合并表格。在实施例中,一些字段可以不是可变的,例如,PostCode(邮编)和Country(国家)字段。相反,由于具有预设的、不可变的字段长度可以是有利的,因此这些字段是硬集合并且不能更改。
动态授权处理也可以与虚拟表的使用一起实现。例如,在扩容某个字段之后,跟踪表可以用于确定是否有任何可用空间,并且内部映射器120可以映射定义模式内的可用(例如,未使用的)空间至虚拟表。以这种方式,由于通过本发明的扩容处理的增加,可以通过分配这种空间至虚拟表来使用任何未使用的空间。这将最小化需要维持未使用空间的任何能量消耗。
相应地,在本发明的实施例中,现在可以由云(通过分布式和网格计算)提供和/或利用资源共享以有效和高效地管理资源利用。例如,使用本发明的处理,现在有可能以上述处理指定的动态方式分配数据空间。相应的,这导致了存储器和/或存储装置和相关维持功率的适当利用,以及允许更改基于现货供应的产品,该基于现货供应的产品默认配备不能高效管理和使用的预定义数据库表,从而影响有效资源利用和相关功率。
图5示出了针对一段时间利用的实际空间和能量的显示。更具体地,图5表示如何能再使用利用水平值和存储器,以及如何随时间线波动。应当理解,图5的显示可以用于允许用户选择节省的百分比,以使得本发明的系统和处理可以在内部利用未使用的空间,从而节省空间和成本。该显示还可以用于确定在每个时间表的非高峰时间期间或者当峰值负荷降低时何时合并表格。
在一个实现中,图5可以表示随运行时间的值;定义的表需要的存储器,以及利用率水平是多少。在实施例中,利用率水平将提供关于未使用存储器的多少百分比被利用于其它需求的管理员信息。作为示例,0%的利用率水平可以指基本上禁用的EOFM以及100%意味着所有未使用的存储器都由本发明所利用。在实施例中,EOFM将从内部跟踪器收集关于存储器(如下面提到的)的各种值的数据。例如,可以跟踪下列信息:
(i)定义的表需要的存储器;
(ii)实际上由EOFM利用以满足其它需要的存储器;以及
(iii)在其它地方仍然可以被再次使用的存储器。
在实施例中,用户可以使用本发明的图形用户接口(GUI)(例如显示器24)以改变利用率水平(例如,从0%-100%),其中0表示未使用的存储器不用于虚拟表,以及100表示可以从定义的表使用所有未使用的存储器。因此,根据本发明的各方面,管理员可以为EOFM设置存储器利用率水平是可能的。
图6示出了保留的存储器(例如,在图4中,可以分配至如图所示虚拟表的存储器)与实际使用的存储器的显示。应当理解,图6的显示可以用于允许用户选择应当和不应当映射至虚拟表的百分比或者具体未使用的分配区域。该显示也可以用于确定在每个时间表的非高峰时间期间或者当峰值负荷降低时何时合并表格。
更具体地,在图6中,非阴影区域表示可以分配给任何数量的表和/或功能的存储器区域。另一方面,浅阴影区域表示分配给具体表(例如,图4中示出的customer address(客户地址)表)并且在使用中的存储器区域;然而,深阴影区域表示分配给具体表(例如,图4中示出的customer address(客户地址)表)并且没有在使用中的存储器区域。在实施例中,这些未使用的分配区域可以表示全部未使用的字段或者字段内的若干字符,这些字符没有被使用并且现在可以由存储管理引擎分配和映射至虚拟表。以这种方式,本发明的系统和处理现在可以管理和高效使用未使用的分配区域。当确定在一个或多个特定表的特定字段内需要额外空间时,该表也可以用于增加值。
流程图
图7-9示出了用于执行本发明的方面的示例性流程。例如,图7-9的步骤可以在图1-4的环境中的任何一个中实现。图中的流程图和框图图示了根据本发明的各种实施例的系统、方法和计算机程序产品可能实现的架构、功能和操作。就此而言,流程图或者框图中的每个框可以表示模块、代码段或者部分代码,其包括一个或多个用于实现(一个或者多个)指定逻辑功能的可执行指令。还应当注意,在一些可替换的实现中,框中标注的功能可以不按图中标注的顺序发生。例如,实际上可基本上同时地执行连续示出的两个框,或者取决于所包含的功能,有时可以相反的顺序执行所述框。还应注意,框图和/或流程图图示的每个框以及框图和/或流程图图示的框的组合,可通过执行指定功能或动作的基于专用硬件的系统或者专用硬件和计算机指令的组合来实现。
此外,本发明可以采用计算机程序产品的形式,所述计算机程序产品可从计算机可用的或计算机可读的介质访问,所述介质提供由计算机或者任何指令执行系统使用或与其结合使用的程序代码。软件和/或计算机程序产品可以在图1-4的环境中实现。出于此描述的目的,计算机可用或者计算机可读介质可以是任何装置,其可以包含、存储、通信、传播或传送程序以用于由指令执行系统、装置或设备使用或者结合指令执行系统、装置或设备来使用。介质可以是电、磁、光、电磁、红外或半导体系统(装置或设备)或传播介质。计算机可读介质的例子包括半导体或固态存储器、磁带、可移除计算机磁盘、随机访问存储器(RAM)、只读存储器(ROM)、硬磁盘和光盘。光盘当前的例子包括光盘-只读存储器(CD-ROM)、光盘-读/写(CD-R/W)和DVD。
根据本发明的各方面,图7描绘了用于在一个或多个定义的表中使用可用空间的示例性流程。在步骤700处,本发明的处理监控或者跟踪具有定义模式的一个或者多个表的一个或者多个定义字段内的空间。在步骤705处,处理创建一个或多个表内的所有可用空间的跟踪器表。在步骤710处,本发明的处理确定每一个表的字段内哪些空间是可用的(例如未使用的)并且映射这些可用空间至虚拟表。在715处,虚拟表可以用记录来填充。在720处,做出关于在(一个或者多个)原始定义的表中是否需要任何空间的判断。如果需要,那么在步骤725处,本发明的处理将从虚拟表中释放空间,以用于(一个或者多个)原始定义的表中。如果在步骤720处判断是否定的,那么处理可以回到步骤700。在可选步骤730处,本发明的处理可以在每个时间表的非高峰时间期间或者当峰值负荷降低时合并表。处理接着可以回到步骤700。
图8示出了根据本发明的各方面的动态授权处理的流程图。在步骤800处,本发明的处理监控或者跟踪一个或多个定义的表(其具有空间的第一提供值)的字段内的空间。在步骤805处,做出关于一个或多个表内是否需要额外空间的判断。如果不需要,那么处理将在步骤810处结束。可选地,处理可以继续至图7的步骤710。如果在一个或多个表的任何字段中需要额外空间,那么在步骤815处,处理将以预定的字符长度(例如,提供额外的25个字符)增加定义字段内的值。在步骤820处,可以在可用空间内用记录填充表。步骤805-820可以重复。在可选步骤825处,本发明的处理可以在每个时间表的非高峰时间期间或者当峰值负荷降低时合并表。
图9示出了根据本发明的各方面固定利用率水平的处理的示例性流程图。更具体地,可以为实现本发明的EOFM的数据库管理员提供图9中示出的处理以固定利用率水平。在实施例中,可以在EOFM组件的前端上提供处理。在步骤900处,处理开始。在步骤905处,做出关于利用率是否将要改变的决定。如果不改变,那么处理在步骤910处结束。如果将要改变,那么在步骤915处,本发明的处理将提供利用率水平值。在步骤920处,做出关于利用率是否在预定的值的集合内(例如1和100)的判断。如果是,利用率水平值将被传递到管理引擎,在步骤925处知道正在利用多少存储器,以及多少存储器仍然未使用并且可以利用。在实施例中,根据哪个管理引擎将试图再使用未使用的存储器,利用率水平值将作为参数。如果该值不在预定的值的集合之间,那么处理返回至步骤915。
在实施例中,服务提供商(例如解决方案集成商)可以提议执行此处描述的处理。在该情况下,服务提供商可以创建、维护、部署、支持等计算机基础结构,该计算机基础结构为一个或多个客户执行本发明的处理步骤。例如,这些客户可以是使用技术并且提供或者利用服务的任何企业。作为回报,服务提供商可以根据订阅和/或费用协议向(一个或者多个)客户收取费用,和/或服务提供商可以从广告内容出售给一个或者多个第三方中收取费用。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (16)

1.一种在包括硬件和软件的组合的计算机基础结构中实现的方法,所述方法包括:
确定在具有模式定义的一个或者多个表内的字符串字段的可用空间,所述模式定义带有具有预定长度的字符串字段,其中,根据在所述一个或者多个表内的字符串字段的预定长度以及在所述一个或者多个表内的字符串字段的已用空间,来确定所述字符串字段的可用空间;
创建跟踪所述可用空间的跟踪器表;
创建虚拟表;以及
将所述字符串字段的可用空间映射至所述虚拟表,以便由一个或者多个记录来填充所述虚拟表,其中,所述一个或者多个记录具有对应于所述字符串字段的可用空间的空间。
2.根据权利要求1所述的方法,其中所述跟踪器表由减法创建。
3.根据权利要求1所述的方法,其中根据需要,通过释放映射至所述虚拟表的用于所述一个或者多个表内的任何空间在使用端处提供按照所述模式定义的所有空间。
4.根据权利要求1所述的方法,进一步包括当所述一个或者多个表的一个或者多个字段需要额外空间时,增加所述一个或者多个表的值。
5.根据权利要求1所述的方法,进一步包括提供能够映射至所述虚拟表的所述可用空间的一定百分比。
6.根据权利要求1所述的方法,进一步包括在每个时间表的非高峰时间期间或者当峰值负荷降低时合并所述一个或者多个表。
7.根据权利要求1所述的方法,进一步包括为所述一个或者多个表内需要的额外空间创建可变长度字符字段。
8.根据权利要求1所述的方法,进一步包括显示针对一段时间利用的实际空间和能量。
9.根据权利要求1所述的方法,进一步包括在云环境中执行权利要求1所述的步骤。
10.根据权利要求1所述的方法,其中服务提供商对所述计算机基础结构进行创建、维护、配置和支持中的至少一个。
11.根据权利要求1所述的方法,其中权利要求1所述的步骤由服务提供商在订阅、广告和/或收费基础上提供。
12.一种在硬件中实现并且包括计算机基础结构的系统,能够操作用于:
跟踪具有模式定义的一个或者多个定义表内的字符串字段的已用空间,所述模式定义带有具有预定长度的字符串字段;
根据在所述一个或者多个表内的字符串字段的预定长度以及在所述一个或者多个表内的字符串字段的已用空间,创建所述一个或者多个定义表内的字符串字段的可用空间的跟踪器表;
创建虚拟表;以及
将所述字符串字段的可用空间映射至所述虚拟表,以便由一个或者多个记录来填充所述虚拟表,其中,所述一个或者多个记录具有对应于所述字符串字段的可用空间的空间。
13.根据权利要求12所述的系统,其中所述计算机基础结构进一步能够操作用于确定在所述一个或者多个定义表中需要额外空间以及释放来自所述虚拟表的映射空间。
14.根据权利要求12所述的系统,其中所述计算机基础结构进一步能够操作用于在每个时间表的非峰值时间期间或者当峰值负荷降低时合并所述一个或者多个定义表。
15.根据权利要求12所述的系统,其中所述计算机基础结构进一步能够操作用于当需要额外空间时,增加所述一个或者多个定义表内字段的值。
16.一种计算机可读存储介质,其上存储有用于存储管理的计算机程序,所述计算机程序包括;
第一程序指令,用以确定在具有模式定义的一个或者多个表内的字符串字段的可用空间,所述模式定义带有具有预定长度的字符串字段,其中,根据在所述一个或者多个表内的字符串字段的预定长度以及在所述一个或者多个表内的字符串字段的已用空间,来确定所述字符串字段的可用空间;
第二程序指令,用以创建跟踪所述可用空间的跟踪器表;
第三程序指令,用以创建虚拟表;
第四程序指令,用以将所述字符串字段的可用空间映射至虚拟表以用于由一个或者多个记录来填充,其中,所述一个或者多个记录具有对应于所述字符串字段的可用空间的空间;以及
第五程序指令,用以根据需要释放映射至所述虚拟表的用于所述一个或者多个表内的任何空间。
CN201310529228.5A 2012-10-31 2013-10-31 用于使用利用率分析管理存储器利用率的系统和方法 Active CN103793457B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/664,756 US9342547B2 (en) 2012-10-31 2012-10-31 Management of memory usage using usage analytics
US13/664,756 2012-10-31

Publications (2)

Publication Number Publication Date
CN103793457A CN103793457A (zh) 2014-05-14
CN103793457B true CN103793457B (zh) 2017-07-11

Family

ID=50548561

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310529228.5A Active CN103793457B (zh) 2012-10-31 2013-10-31 用于使用利用率分析管理存储器利用率的系统和方法

Country Status (2)

Country Link
US (4) US9342547B2 (zh)
CN (1) CN103793457B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10282350B1 (en) * 2013-06-21 2019-05-07 Amazon Technologies, Inc. Data store optimizer
US9715513B2 (en) * 2014-02-19 2017-07-25 Cellos Software Limited System, method and computing apparatus to isolate a database in a database system
US9769642B2 (en) * 2015-02-20 2017-09-19 Tracfone Wireless, Inc. Method and system for family plan sharing of wireless services
US10102046B2 (en) 2016-03-24 2018-10-16 Oracle International Corporation In-memory data analytic system that provides an integrated tracking mechanism for explicit memory resources
CN108960510B (zh) * 2018-07-04 2021-11-26 四川大学 一种基于两阶段随机规划的虚拟电厂优化交易策略装置
US11061932B2 (en) * 2018-10-06 2021-07-13 Teradata Us, Inc. Methods and system for managing storage with multiple simultaneous data temperature models

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1361890A (zh) * 1999-07-20 2002-07-31 计算机联合思想公司 观察改变索引对查询优化方案的影响的数据库系统

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03266039A (ja) 1990-03-16 1991-11-27 Fujitsu Ltd フリーフォーマットデータリンク処理方式
US7082435B1 (en) * 2000-01-03 2006-07-25 Oracle International Corporation Method and mechanism for implementing and accessing virtual database table structures
US7216092B1 (en) * 2000-04-14 2007-05-08 Deluxe Corporation Intelligent personalization system and method
US20040117408A1 (en) * 2002-12-17 2004-06-17 Capital One Financial Corporation Systems, methods and articles of manufacture for determining available space in a database
US7664798B2 (en) 2003-09-04 2010-02-16 Oracle International Corporation Database performance baselines
US9081836B2 (en) * 2004-06-28 2015-07-14 Oracle International Corporation Method and system for implementing and accessing a virtual table on data from a central server
US7913184B1 (en) * 2005-01-20 2011-03-22 Verizon Laboratories Inc. Intelligent auto-tabbing systems and methods
US7769778B2 (en) * 2007-06-29 2010-08-03 United States Postal Service Systems and methods for validating an address
WO2009005492A1 (en) * 2007-06-29 2009-01-08 United States Postal Service Systems and methods for validating an address
US7870164B2 (en) 2007-11-20 2011-01-11 Microsoft Corporation Database part creation, merge and reuse
US9292582B2 (en) * 2009-05-27 2016-03-22 International Business Machines Corporation Rendering a database record in a fixed display space
US8831409B1 (en) * 2010-06-07 2014-09-09 Purplecomm Inc. Storage management technology
US9497136B1 (en) * 2011-09-28 2016-11-15 Emc Corporation Method and system for providing usage metrics to manage utilzation of cloud computing resources
US8996787B2 (en) * 2012-02-06 2015-03-31 Sandisk Technologies Inc. Storage device aware of I/O transaction and stored data
US8918579B2 (en) * 2012-02-06 2014-12-23 Sandisk Technologies Inc. Storage device and method for selective data compression
US9047176B2 (en) * 2012-02-06 2015-06-02 Sandisk Technologies Inc. Storage device and method for utilizing unused storage space

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1361890A (zh) * 1999-07-20 2002-07-31 计算机联合思想公司 观察改变索引对查询优化方案的影响的数据库系统

Also Published As

Publication number Publication date
CN103793457A (zh) 2014-05-14
US20200278956A1 (en) 2020-09-03
US11573946B2 (en) 2023-02-07
US9830347B2 (en) 2017-11-28
US9342547B2 (en) 2016-05-17
US10698875B2 (en) 2020-06-30
US20140122827A1 (en) 2014-05-01
US20160217168A1 (en) 2016-07-28
US20180004788A1 (en) 2018-01-04

Similar Documents

Publication Publication Date Title
CN103365725B (zh) 在多个云之间动态分配工作负荷部署单元的方法和系统
CN103793457B (zh) 用于使用利用率分析管理存储器利用率的系统和方法
CN104660669B (zh) 针对应用模式组件从多个主机选择一个主机的方法和系统
CN103299274B (zh) 确定运行图像的最佳计算环境的系统和方法
CN103946831B (zh) 用于模板的成本感知的选择以供应共享资源的系统和方法
CN104205056B (zh) 跨多个云的工作负荷的动态分配的方法和系统
CN106020940B (zh) 用于确定数据集的放置的存储层级的方法和系统
CN104424013B (zh) 在计算环境中部署虚拟机的方法和设备
CN103455486B (zh) 安置数据库的方法和系统
CN104160381B (zh) 多租户环境中租户特定数据集的管理方法及其系统
US8914469B2 (en) Negotiating agreements within a cloud computing environment
CN105335207B (zh) 用于管理虚拟机实例的方法和装置
CN103106098B (zh) 用于在联网计算环境中预先供应虚拟机的方法和系统
CN103959264B (zh) 在存储云中使用去重复来管理不可变冗余文件
CN103297496A (zh) 用于云计算系统的增强存储配额管理的方法和系统
CN103853596A (zh) 公共相邻存储区域优化长距离虚拟机迁移方法和系统
CN104253831A (zh) 一种用于在云计算环境中部署应用的方法和系统
CN103677998A (zh) 虚拟化计算环境中的资源分配方法和系统
CN103814358A (zh) 服务器群内的虚拟机放置
CN105938525B (zh) 虚拟机设备的基于目录的发现
CN105359088A (zh) 使用动态生成的虚拟磁盘内容优化供应时间的方法
CN104252345A (zh) 在云环境中管理复杂对象的方法及系统
CN103973641B (zh) 管理不同网站的会话的方法及装置
Liu et al. SDMS-O: A service deployment management system for optimization in clouds while guaranteeing users’ QoS requirements
CN109445711A (zh) 一种基于云平台的业务处理方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant