IP Library Granted Patent US 8,533,159
Granted Patent B2
US 8,533,159 · App. 13/165,885 · Granted Sep 10, 2013

Processing materialized tables in a multi-tenant application system

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 8,533,159
App. No.
13/165,885
Granted
Sep 10, 2013
Kind
B2
Abstract

A method, system and computer program for processing materialized tables in a multi-tenant application system, wherein in the multi-tenant application system, a plurality of tenants share one or more basic-tables. According to the data access history information of the plurality of tenants, an update pattern analyzer analyzes the similarity of the update patterns for one or more basic-tables by the plurality of tenants. Furthermore, according to the similarity analyzed by the update pattern analyzer, a tenant grouping means groups the plurality of tenants into a plurality of tenant groups. Additionally, according to the tenant groups grouped by the tenant grouping means, a materialized table constructor constructs the tenant group materialized tables from the one or more basic-tables.

Claims (46)

1. A method for processing materialized tables in a multi-tenant application system, wherein the multi-tenant application system, a plurality of tenants share one or more basic-tables, the methods comprising:

According to data access history information of said plurality of tenants, analyzing a similarity of update patterns for said one or more basic-tables by said plurality of tenants;

According to said similarity of update pattern analyzed, grouping said plurality of tenants into a plurality of tenant groups;

According to said similarity of update patterns, constructing, by a processor, tenant group materialized tables from said one or more basic-tables.

2. The method as recited in claim 1 further comprising:

Based on updates to said one or more basic-tables by a tenant, determining whether to enable or disable a corresponding tenant group materialized table.

3. The method as recited in claim 2 further comprising:

Based on a determining that currently at least one tenant in said plurality of tenants will perform updates to a basic-table, determining to disable the tenant group materialized table of a tenant group to which the tenant belongs.

4. The method as recited in claim 2 further comprising:

After at least one tenant in said plurality of tenants performed updates to a basic-table, enabling the tenant group materialized table of a tenant group to which the tenant belongs.

5. The method as recited in claim 1 , wherein the similarity of the update patterns includes adjacency in time of performing deletion, insertion or rewrite operations on records of an associated basic-table of a materialized table.

6. The method as recited in claim 1 , wherein constructing a tenant group materialized table from said one or more basic-tables includes constructing the tenant group materialized table corresponding to a tenant group by using DDL script.

7. The method as recited in claim 1 further comprising:

Storing at least one of the following:

Corresponding relationships between said plurality of tenants and said plurality of tenant groups; and

Times for said plurality of tenant's updates.

8. A computer program product embodied in a hardware computer readable storage medium for processing materialized tables in a multi-tenant application system, wherein in the multi-tenant application system, a plurality of tenants share one or more basic-tables, the computer program product comprising the program instruction for:

According to data access history information of said plurality of tenants, analyzing a similarity of update patterns for said one or more basic-tables by said plurality of tenants;

According to said similarity of update pattern analyzed, grouping said plurality of tenants into a plurality of tenant groups;

According to said plurality of tenant groups, constructing tenant group materialized tables from said one or more basic-tables.

9. The computer program product as recited in claim 8 further comprising the programming instruction for:

Based on updates to said one or more basic-table by tenant, determining whether to enable or disable a corresponding tenant group materialized table.

10. The computer program product as recited in claim 9 further comprising the programming instruction for:

Based on a determination that currently at least one tenant in said plurality of tenants will perform updates to a basic-table, determining to disable to tenant group materialized table of tenant group to which the tenants belongs.

11. The computer program product as recited in claim 9 further comprising the programming instruction for:

After at least one tenant in said plurality of tenants performs updates to a basic-table, enabling the tenant group materialized table of a tenant group to which the tenant belongs.

12. The computer program product as recited in claim 8 , wherein the similarity of the update patterns includes adjacency in time of performing deletion, insertion or rewrite operations on records of an associated basic-table of a materialized table.

13. The computer program product as recited in claim 8 , wherein constructing a tenant group materialized table from said one or more basic-tables includes constructing the tenant group materialized table corresponding to a tenant group by using a DDL script.

14. The computer program product as recited in claim 8 , further comprising the program instruction for:

Storing at least one of the following:

Corresponding relationship between said plurality of tenants and said plurality of tenant groups; and

times for said plurality of tenant's updates.

15. A system, comprising:

A memory unit for storing a computer program for processing materialized tables in a multi-tenant application system, wherein in the multi-tenant application system, a plurality of tenants share one or more basic-tables; and

Processor coupled to said memory unit, wherein said processor, responsive to said computer program, comprising:

According to data access history information of said plurality of tenants, circuitry for analyzing a similarity of update patterns for said one or more basic-tables by said plurality of tenants;

According to said similarity of update patterns analyzed, circuitry for grouping said plurality of tenants into a plurality of tenants into a plurality of tenant groups;

According to said plurality of tenant groups, circuitry for constructing tenant group materialized tables from said one or more basic-tables.

16. The system as recited in claim 15 , wherein said processor further comprises:

Circuitry for based on updates to said one or more basic-tables by a tenant, determining whether to enable or disable a corresponding tenant group materialized table.

17. The system as recited in claim 16 , wherein said processor further comprises:

Based on a determination that currently at least one tenant in said plurality of tenants will perform updates to a basic-table, circuitry for determining to disable the tenant group materialized table of a tenant group to which the tenant belongs.

18. The system as recited in claim 16 , wherein said processor further comprises:

after at least one tenant in said plurality of tenants performs updates to a basic-table, circuitry for enabling materialized table of a tenant group to which the tenant belongs.

19. The system as recited in claim 15 , wherein the similarity of the updates patterns includes adjacency in time of performing deletion, insertion or rewrite operations on records of an associated basic-table of a materialized table.

20. The system as recited in claim 15 , wherein constructing a tenant group materialized table from said one or more basic-tables includes constructing the tenant group materialized table corresponding to a tenant group by using a DDL script.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: SERVICENOW, INC.
Reel/Frame 055117/0022 →
CONVEYOR IS ASSIGNING UNDIVIDED 50% INTEREST Recorded Nov 8, 2017
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: SERVICENOW, INC.; INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 044413/0140 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 22, 2011
From: AN, WEN HAO; DUAN, NING; GAO, BO; GUO, CHANG JIE; WANG, ZHI HU
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 026503/0786 →