IP Library Granted Patent US 9,336,251
Granted Patent B2
US 9,336,251 · App. 13/683,849 · Granted May 10, 2016

System and method for SLA-aware database consolidation using per-tenant memory size configuration

Inventors: Hatem Abdelghani Mahmoud (Santa Barbara, CA); Hyun Jin Moon (Newark, CA); Yun Chi (Monte Sereno, CA); Vahit Hakan Hacigumus (San Jose, CA)
Assignee: NEC Corporation
G06F17/30306
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,336,251
App. No.
13/683,849
Granted
May 10, 2016
Kind
B2
Abstract

Systems and methods for consolidating workload on one or more computing devices, comprising: generating tenant performance profiles for at least one of a buffer memory size and a buffer warmness; assigning one or more tenants to a database management system (DBMS) instance; configuring the one or more tenants to minimize a total server count needed to host the one or more tenants; and reducing the total server count by adjusting of buffer sizes while satisfying Service Level Agreement (SLA) requirements.

Claims (68)

1. A method for consolidating workload on one or more computing devices, comprising:

generating tenant performance profiles for at least one of a buffer memory size and a buffer warmness;

assigning one or more tenants to a database management system (DBMS) instance;

configuring the one or more tenants to minimize a total server count needed to host the one or more tenants;

reducing the total server count by adjusting of buffer sizes while satisfying Service Level Agreement (SLA) requirements;

packing tenants as a two-dimensional vector packing problem (2-DVPP) where each tenant is represented by a 2-dimensional vector whose first dimension is a buffer size, and whose second dimension is a load; and

determining a minimum number of servers needed by determining a memory assignment function which assigns a buffer size to each tenant such that the optimum output of the tenant placement 2-DVPP is minimized; and

packing of tenants into servers, where buffer sizes m* of tenants are determined by a memory assignment function m

m

*

=

arg

min

m

{

Opt_

2

DV

P

(

m

)

}

2. The method as recited in claim 1 , further comprising adjusting of a private buffer size to achieve server count reduction.

3. The method as recited in claim 1 , further comprising buffer sharing among two or more tenants and adjusting of a shared buffer size to achieve server count reduction.

4. The method as recited in claim 1 , further comprising restricting the one or more tenants running on each disk to one tenant at a time.

5. The method as recited in claim 1 , further comprising employing multiple database management system (DBMS) instances on a same server to impose controlled boundaries between buffer pools of different tenants or groups of tenants.

6. A system for consolidating workload on one or more computing devices, comprising:

a profiler configured to generate tenant performance profiles, using a processor, for at least one of a buffer memory size and a buffer warmness;

one or more tenants assigned to a database management system (DBMS), the one or more tenants configured to minimize a total server count needed to host the one or more tenants, wherein tenants are packed as a two-dimensional vector packing problem (2-DVPP) where each tenant is represented by a 2-dimensional vector whose first dimension is a buffer size, and whose second dimension is a load;

code for determining a minimum number of servers needed by determining a memory assignment function which assigns a buffer size to each tenant such that the optimum output of the tenant placement 2-DVPP is minimized;

one or more buffer pools configured to reduce the total server count through optimization of buffer sizes while satisfying Service Level Agreement (SLA) requirements; and

packing of tenants into servers, where buffer sizes m* of tenants are determined by a memory assignment function m

m

*

=

arg

min

m

{

Opt_

2

DV

P

(

m

)

}

7. The system as recited in claim 6 , further comprising a buffer configured to adjust a private buffer size to achieve server count reduction.

8. The system as recited in claim 6 , further comprising a buffer configured to adjust a shared buffer size and to share the buffer among two or more tenants to achieve server count reduction.

9. The system as recited in claim 6 , further comprising one or more disks configured to restrict the one or more tenants running on each disk to one at a time.

10. The system as recited in claim 6 , further comprising a server configured to impose controlled boundaries between buffer pools of different tenants or groups of tenants by employing multiple database management system (DBMS) instances on the same server.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 17, 2016
From: NEC LABORATORIES AMERICA, INC.
To: NEC CORPORATION
Reel/Frame 038011/0263 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2012
From: MAHMOUD, HATEM ABDELGHANI; CHI, YUN; MOON, HYUN JIN; HACIGUMUS, VAHIT HAKAN
To: NEC LABORATORIES AMERICA, INC.
Reel/Frame 029339/0015 →
Continuity (2)
Provisional Application 61563160 · Nov 23, 2011
Related Publication 20130212064A1 · Aug 15, 2013