IP Library Granted Patent US 7,933,869
Granted Patent B2
US 7,933,869 · App. 11/647,569 · Granted Apr 26, 2011

Method and system for cloning a tenant database in a multi-tenant system

Assignee: SAP AG
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 7,933,869
App. No.
11/647,569
Granted
Apr 26, 2011
Kind
B2
Abstract

Exemplary methods and systems may clone a tenant database and send updates to the clone. By doing so, methods and systems may determine a difference between the clone and the tenant, making it possible to test upgrades for a tenant based on the difference. With this capability, a provider-tenant system may upgrade tenant business applications and customize tenant databases.

Claims (64)

1. A method for copying a tenant database in a provider-tenant system where a provider communicates with a plurality of tenants over a network, the method comprising:

storing a plurality of data structures at the provider;

selecting a tenant from the plurality of tenants, the provider hosting application software used by the plurality of tenants;

generating a tenant-specific designation to identify a data structure of the plurality of data structures as being specific to the selected tenant, and generating a shared designation to identify a data structure of the plurality of data structures as being common to the plurality of tenants;

determining which of the plurality of data structures are specific to the selected tenant and which of the plurality of data structures are common to the plurality of tenants based on attributes of the plurality of data structures;

appending the tenant-specific designation to tenant-specific data structures determined as being specific to the selected tenant, and appending the shared designation to shared data structures determined as being common to the plurality of tenants;

storing, in the tenant database, a copy of the tenant-specific data structures having the tenant-specific designation and links to the shared data structures having the shared designation;

copying the tenant database of the selected tenant from a first data storage device;

moving the copied tenant database to a second data storage device, wherein the second data storage device is associated with a tenant server;

initializing the copied tenant database on the second data storage device; and

using the copied tenant database on the second data storage device to implement a system management function.

2. The method of claim 1 , wherein selecting comprises:

identifying the tenant based on a client request.

3. The method of claim 1 , further comprising:

shutting down the tenant database of the selected tenant.

4. The method of claim 3 , further comprising:

restarting the tenant database of the selected tenant after copying the tenant database.

5. The method of claim 1 , wherein the second data storage device is configured to include a directory structure and an instance name of the first data storage device.

6. The method of claim 1 , further comprising:

determining a difference between the copied tenant database and the tenant database of the selected tenant.

7. The method of claim 1 , further comprising:

linking the copied tenant database to a provider server.

8. A method for cloning a first tenant database of a plurality of tenant databases in a provider-tenant system where a provider communicates with the plurality of tenant databases over a network, the method comprising:

storing a plurality of data structures at the provider;

identifying the first tenant database from the plurality of tenant databases, the provider hosting application software used by the plurality of tenant databases;

generating a tenant-specific designation to identify a data structure of the plurality of data structures as being specific to the first tenant database, and generating a shared designation to identify a data structure of the plurality of data structures as being common to the plurality of tenant databases;

determining which of the plurality of data structures are specific to the first tenant database and which of the plurality of data structures are common to the plurality of tenant databases based on attributes of the plurality of data structures;

appending the tenant-specific designation to tenant-specific data structures determined as being specific to the first tenant database, and appending the shared designation to shared data structures determined as being common to the plurality of tenant databases;

storing, in the first tenant database, a copy of the tenant-specific data structures having the tenant-specific designation and links to the shared data structures having the shared designation;

shutting down the first tenant database;

copying the tenant-specific data structures and the links from the first tenant database to create a clone of the first tenant database;

restarting the first tenant database;

locating the clone on a second data storage device;

initializing the clone on the second data storage device; and

sending an upgrade to the clone for testing of the upgrade.

9. The method of claim 8 , further comprising:

associating the clone with a tenant server.

10. The method of claim 8 , further comprising:

linking the clone to a provider database; and

wherein the upgrade is sent to the clone from the provider database based on the tenant-specific data structures.

11. The method of claim 8 , further comprising:

granting a user access to the clone.

12. A system for copying a tenant database in a provider-tenant system where a provider communicates with a plurality of tenants over a network, the system comprising:

means for storing a plurality of data structures at the provider;

means for selecting a tenant from the plurality of tenants, the provider hosting application software used by the plurality of tenants;

means for generating a tenant-specific designation to identify a data structure of the plurality of data structures as being specific to the selected tenant, and generating a shared designation to identify a data structure of the plurality of data structures as being common to the plurality of tenants;

means for determining which of the plurality of data structures are specific to the selected tenant and which of the plurality of data structures are common to the plurality of tenants based on attributes of the plurality of data structures;

means for appending the tenant-specific designation to tenant-specific data structures determined as being specific to the selected tenant, and appending the shared designation to shared data structures determined as being common to the plurality of tenants;

means for storing, in the tenant database, a copy of the tenant-specific data structures having the tenant-specific designation and links to the shared data structures having the shared designation;

means for copying the tenant database of the selected tenant from a first data storage device;

means for moving the copied tenant database to a second data storage device, wherein the second data storage device is associated with a tenant server;

means for initializing the copied tenant database on the second data storage device; and

means for using the copied tenant database on the second data storage device to implement a system management function.

13. The system of claim 12 , wherein the means for selecting comprises:

means for identifying the tenant based on a client request.

14. The system of claim 12 , further comprising:

means for shutting down the tenant database of the selected tenant.

15. The system of claim 14 , further comprising:

means for restarting the tenant database of the selected tenant after copying the tenant database.

16. The system of claim 12 , wherein the second data storage device is configured to include a directory structure and an instance name of the first data storage device.

17. The system of claim 12 , further comprising:

means for determining a difference between the copied tenant database and the tenant database of the selected tenant.

18. The system of claim 12 , further comprising:

means for linking the copied tenant database to a provider server.

Assignments (2)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0334 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 13, 2007
From: BECKER, WOLFGANG; GRUENER, ALEX
To: SAP AG
Reel/Frame 019453/0162 →
Continuity (1)
Related Publication 20080162491A1 · Jul 3, 2008