IP Library Granted Patent US 7,761,420
Granted Patent B2
US 7,761,420 · App. 11/872,930 · Granted Jul 20, 2010

Method and system for replicating objects

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,761,420
App. No.
11/872,930
Granted
Jul 20, 2010
Kind
B2
Abstract

A method and system for method for replicating object consisting of creating a group of objects at a first location; transmitting the group of objects from a first location to a second location over a network coupling the first location to the second location, such that the number of transmissions is minimized receiving the group of objects at the second location; and storing the group of objects at the second location. The objects are preferably data objects and are collated into group based on a probability score is computed for each data object centered on an access pattern. Advantages include minimizing the number of transmission of the group of objects thereby reducing network traffic and failure of operation during replication of the objects.

Claims (530)

1. A computer-implemented method for replicating objects, the method comprising:

creating groups of objects for transmitting at a first location by a computing device; and

transmitting the groups of objects from said first location to a second location over a network coupling the first location to the second location by said computing device, such that a number of transmissions is minimized,

wherein each of said groups of objects satisfy the following constraints:

i

=

1

N

a

ij

s

i

<

_

TXNBYTELIMIT

,

j

=

1

,

2

,

,

N

G

,

(

1

)

i

=

1

N

a

ij

<

_

TXNGROUPMAX

,

j

=

1

,

2

,

,

N

G

,

(

2

)

j

=

1

N

G

a

ij

=

1

,

i

=

1

,

2

,

,

N

,

(

3

)

a

ij

<

_

b

j

,

i

=

1

,

2

,

,

N

,

j

=

1

,

2

,

,

N

G

,

and

(

4

)

a

ij

{

0

,

1

}

,

b

j

{

0

,

1

}

,

i

,

j

,

(

5

)

wherein N is a total number of objects for transmission,

wherein s i is a size in bytes of an object,

wherein N G is a number of groups of objects for transmission,

wherein a is an occupancy matrix, where object i is in group j,

wherein b j =1, if batch j is non-empty, else 0,

wherein TXNBYTELIMIT equals the sum of all objects in a group less than or equal to a fixed threshold,

wherein TXNGROUPMAX equals the number of objects within a group less than or equal to a fixed number; and

wherein an expected number of atomic retransmissions for each of said groups of objects are substantially equal.

2. The method of claim 1 , further comprising:

receiving the groups of objects at the second location; and

storing the groups of objects at the second location by said computing device, thereby completing the replication process.

3. The method of claim 1 , wherein the groups of objects includes data objects.

4. The method of claim 1 , wherein a probability score computed by said computing device for each data object is based on an object update/change probability value for each object.

5. The method of claim 4 , further comprising:

monitoring access patterns of the data object over a period of time by said computing device, wherein the access patterns are extracted by recording an access timestamp and an access type of the data object.

6. The method of claim 5 , wherein the grouping the data objects based on the probability score is defined by the user.

7. The method of claim 4 , wherein the grouping of the data objects on their probability score is defined based on predefined criteria.

8. A system comprising a processor;

a computer readable medium coupled to the processor; and

computer code encoded in the computer readable medium and executable by the processor to cause the processor to:

create groups of objects for transmitting at a first location;

transmit the groups of objects from said first location to a second location over a network coupling the first location to the second location, such that a number of transmissions is minimized,

wherein each of said groups of objects satisfy the following constraints:

i

=

1

N

a

ij

s

i

<

_

TXNBYTELIMIT

,

j

=

1

,

2

,

,

N

G

,

(

1

)

i

=

1

N

a

ij

<

_

TXNGROUPMAX

,

j

=

1

,

2

,

,

N

G

,

(

2

)

j

=

1

N

G

a

ij

=

1

,

i

=

1

,

2

,

,

N

,

(

3

)

a

ij

<

_

b

j

,

i

=

1

,

2

,

,

N

,

j

=

1

,

2

,

,

N

G

,

and

(

4

)

a

ij

{

0

,

1

}

,

b

j

{

0

,

1

}

,

i

,

j

,

(

5

)

wherein N is a total number of objects for transmission,

wherein s i , is a size in bytes of an object,

wherein N G is a number of groups of objects for transmission,

wherein a is an occupancy matrix, where object i is in group j,

wherein b j =1, if batch j is non-empty, else 0,

wherein TXNBYTELIMIT equals the sum of all objects in a group less than or equal to a fixed threshold,

wherein TXNGROUPMAX equals the number of objects within a group less than or equal to a fixed number, and

wherein an expected number of atomic retransmissions for each of said groups of objects are substantially equal.

9. The system of claim 8 , wherein said computer code further causes said processor to:

receive the groups of objects at the second location; and

store the groups of objects at the second location.

10. The system of claim 9 , wherein the groups of objects includes data objects.

11. The system of claim 10 , wherein a probability score computed for each data object is based on an object update/change probability value for each object.

12. The system of claim 11 , wherein the data objects are collated into groups based on their probability score.

13. The system of claim 11 , wherein access patterns of the data object are monitored over a period of time, the access patterns can be extracted by recording an access timestamp and an access type of the data object.

14. The system of claim 12 , wherein the grouping the data objects based on the probability score is defined by the user.

15. The system of claim 12 , wherein the grouping the data objects on their probability score defined by the system based on predefined criteria.

16. A computer storage medium readable by a computer tangibly embodying a program of instructions executable by said computer for performing a method comprising:

creating groups of objects at a first location; and

transmitting the groups of objects from said first location to a second location over a network coupling the first location to the second location, such that a number of transmissions is minimized,

wherein each of said groups of objects satisfy the following constraints:

i

=

1

N

a

ij

s

i

<

_

TXNBYTELIMIT

,

j

=

1

,

2

,

,

N

G

,

(

1

)

i

=

1

N

a

ij

<

_

TXNGROUPMAX

,

j

=

1

,

2

,

,

N

G

,

(

2

)

j

=

1

N

G

a

ij

=

1

,

i

=

1

,

2

,

,

N

,

(

3

)

a

ij

<

_

b

j

,

i

=

1

,

2

,

,

N

,

j

=

1

,

2

,

,

N

G

,

and

(

4

)

a

ij

{

0

,

1

}

,

b

j

{

0

,

1

}

,

i

,

j

,

(

5

)

wherein N is a total number of objects for transmission,

wherein s i is a size in bytes of an object,

wherein N G is a number of groups of objects for transmission,

wherein a is an occupancy matrix, where object i is in group j,

wherein b j =1, if batch j is non-empty, else 0,

wherein TXNBYTELIMIT equals the sum of all objects in a group less than or equal to a fixed threshold,

wherein TXNGROUPMAX equals the number of objects within a group less than or equal to a fixed number, and

wherein an expected number of atomic retransmissions for each of said groups of objects are substantially equal.

Assignments (3)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0334 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 12, 2012
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: SAP AG
Reel/Frame 028540/0522 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 16, 2007
From: SHARMA, UPENDRA; NAYAK, TAPAN K.; JAIN, ROHIT
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 019969/0057 →