IP Library Granted Patent US 7,483,925
Granted Patent B2
US 7,483,925 · App. 11/124,658 · Granted Jan 27, 2009

Selecting data for synchronization

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,483,925
App. No.
11/124,658
Granted
Jan 27, 2009
Kind
B2
Abstract

A method for selecting a data set to be synchronized from databases of a data system, in which system metadata illustrating the relationships between data units of the data system are stored for the selection of the data set to be synchronized. The metadata comprises at least information on the relevance between the data units. When a first data set is to be synchronized, metadata associated with at least one initial data unit of the first data set is retrieved. Next, a second data set, which according to at least one metadata element comprises a data unit of maximum relevance to the initial data unit, is selected for synchronization.

Claims (68)

1. A method for selecting a data set to be synchronized from databases of a data system, the method comprising:

maintaining in the data system, metadata representing relationships between data units for the purpose of selecting the data set to be synchronized, the metadata comprising at least information on relevance of the data units with regard to one another, wherein the relevance includes a probability value that a data unit associated with an initial data unit will be needed;

retrieving metadata associated with at least one initial data unit of a first data set in response to a need to synchronize the first data set;

selecting a second data set for synchronization, the second data set comprising at least one data unit which, on the basis of the retrieved metadata, is most relevant to the initial data unit.

2. A method according to claim 1 , further comprising:

selecting one data unit at a time into the second data set in an order of relevance;

checking a size of the second data set after a new data unit has been added; and

initiating synchronization with the second data set in response to a predetermined size limit having been reached.

3. A method according to claim 1 , wherein only data units which exceed one or more predetermined exclusion criteria are selected into the second data set.

4. A method according to claim 1 , wherein the retrieved metadata further includes utility information representing utility provided by at least one data unit associated with an initial data unit in the retrieved metadata, either directly or through other data units, provided that the initial data unit has been selected.

5. A method according to claim 4 , further comprising:

determining numerical values representing relevance probabilities and utilities between the initial data units and other data units for the maintained metadata;

forming links between the data units in the maintained metadata, the links being associated with the numerical values of at least relevance probability and utility;

multiplying relevance values of the links along at least one path originating from the initial data unit and leading to other data units;

selecting the utility value of a last link leading to another separate data unit to be used as the utility of that data unit;

calculating an expected gained utility value for each one of the other data units by multiplying the utility value by the relevance value;

comparing the expected gained utility values of different data units; and

selecting at least one data unit with a highest expected gained utility value into the second data set.

6. A method according to claim 1 , further comprising:

updating the maintained metadata on the basis of user actions.

7. A method according to claim 1 , wherein

application-specific metadata are added to the data system in response to adoption of a new application; and

the metadata associated with the at least one initial data unit are retrieved as required by the application.

8. A method according to claim 1 , wherein

situation-specific metadata for at least two different synchronization situations are determined into the data system; and

the metadata associated with the at least one data unit are selected as required by a synchronization situation.

9. A method according to claim 1 , further comprising:

determining an expected gained utility value for initial data units in the first data set by experimentally adding initial data units, one by one, to the first data set; and

selecting into the second data set one or more of the initial data units the adding of which provides a highest expected gained utility value.

10. A method according to claim 1 , wherein

the data system includes at least one synchronization client device and synchronization server;

a request for selecting a data set in accordance with the method is sent from the synchronization client device to the synchronization server during an initialization of a synchronization session;

second data sets are selected in the synchronization client device and the synchronization server in accordance with the method;

modifications that have taken place in the second data set since a last synchronization session are sent from the synchronization client device to the at least one synchronization server; at least one

the modifications that have taken place in the second data set since the last synchronization session are sent from the at least one synchronization server to the at least one synchronization client device.

11. A method according to claim 1 , wherein a third data set is defined comprising one or more data items which are closely related to a data item currently selected into the second data set, and

new data items are selected to the second data set amongst the data items in the third data set.

12. A method according to claim 1 , wherein the third data set and relevance information of data items are updated after selection of a data item from the third data set to the second data set, wherein the relevance of a data item is combination of relevances of all paths leading from the first data set to the data item.

13. A synchronization system comprising:

means for synchronizing data of at least two databases;

means for maintaining metadata representing relationships between data units, the metadata comprising at least information on a relevance of the data units with regard to one another and wherein the relevance includes a probability value that a data unit associated with an initial data unit will be needed;

means for retrieving the metadata associated with at least one initial data unit of a first data set in response to a need to synchronize the first data set;

means for selecting a second data set for synchronization, the second data set comprising at least one data unit which, on the basis of the retrieved metadata, is most relevant to the at least one initial data unit.

14. A synchronization system according to claim 13 , further comprising:

means for selecting one data unit at a time into the second data set in the order of relevance;

means for checking a size of the second data set after a new data unit has been added; and

means for initiating synchronization with the second data set in response to a predetermined size having been reached.

15. A synchronization system according to claim 13 , wherein

the retrieved metadata also contains utility information representing utility provided by at least one data unit associated with an initial data unit in the retrieved metadata, either directly or through other data units, provided that the initial data unit has been selected.

16. A synchronization system according to claim 13 , further comprising:

means for taking application-specific metadata in use in response to adoption of a new application; and

means for retrieving the metadata associated with at least one initial data unit as required by the new application.

17. A synchronization device comprising:

means for sending modifications made to a data set to be synchronized of at least one database to at least one second party involved in the synchronization;

means for storing metadata representing relationships between data units, the metadata comprising at least information on relevance of the data units with regard to one another and wherein the relevance includes a probability value that a data unit associated with an initial data unit will be needed;

means for retrieving metadata associated with at least one initial data unit of a first data set in response to a need to synchronize the first data set; and

means for selecting a second data set for synchronization, the second data set comprising at least one data unit which, on the basis of the retrieved metadata, is most relevant to the initial data unit.

18. A synchronization device according to claim 17 , wherein

the retrieved metadata also contains utility information representing utility provided by the at least one data unit associated with an initial data unit in the retrieved metadata, either directly or through other data units, provided that the initial data unit has been selected.

19. A synchronization device according to claim 17 , wherein the synchronization device is configured to define a third data set comprising one or more data items which are closely related to data items currently selected into the second data set, and

the synchronization device is configured to select new data items to the second data set amongst the data items in the third data set.

20. A synchronization device according to claim 19 , wherein the synchronization device is configured to update the third data set and relevance information of data items after selection of a data item from the third data set to the second data set, wherein the relevance of a data item is combination of relevances of all paths leading from the first data set to the data item.

21. A computer software product stored in a memory for controlling a synchronization device, comprising program code which, when executed in the synchronization device, causes the synchronization device to:

store metadata representing relationships between data units for selection of a data set to be synchronized, the metadata comprising at least information on relevance of the data units with regard to one another and wherein the relevance includes a probability value that a data unit associated with an initial data unit will be needed;

retrieve metadata associated with at least one initial data unit of a first data set in response to a need to synchronize the first data set;

select a second data set for synchronization, the second data set comprising at least one data unit which, on the basis of the retrieved metadata, is most relevant to the initial data unit.

22. A computer software product according to claim 21 , wherein

the retrieved metadata also comprises utility information representing utility provided by the at least one data unit associated with an initial data unit in the retrieved metadata, either directly or through other data units, provided that the initial data unit has been selected.

Assignments (10)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 2, 2023
From: CONVERSANT WIRELESS LICENSING S.A R.L.
To: CONVERSANT WIRELESS LICENSING LTD.
Reel/Frame 063508/0309 →
RELEASE OF SECURITY INTEREST Recorded Mar 30, 2021
From: CPPIB CREDIT INVESTMENTS INC.
To: CONVERSANT WIRELESS LICENSING S.A R.L.
Reel/Frame 057204/0857 →
AMENDED AND RESTATED U.S. PATENT SECURITY AGREEMENT (FOR NON-U.S. GRANTORS) Recorded Aug 22, 2018
From: CONVERSANT WIRELESS LICENSING S.A R.L.
To: CPPIB CREDIT INVESTMENTS, INC.
Reel/Frame 046897/0001 →
CHANGE OF NAME Recorded Oct 18, 2017
From: CORE WIRELESS LICENSING S.A.R.L.
To: CONVERSANT WIRELESS LICENSING S.A R.L.
Reel/Frame 044901/0590 →
UCC FINANCING STATEMENT AMENDMENT - DELETION OF SECURED PARTY Recorded Aug 30, 2016
From: NOKIA CORPORATION
To: MICROSOFT CORPORATION
Reel/Frame 039872/0112 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 4, 2012
From: 2011 INTELLECTUAL PROPERTY ASSET TRUST
To: CORE WIRELESS LICENSING S.A.R.L
Reel/Frame 027484/0797 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2011
From: NOKIA CORPORATION
To: NOKIA 2011 PATENT TRUST
Reel/Frame 027120/0608 →
CHANGE OF NAME Recorded Oct 26, 2011
From: NOKIA 2011 PATENT TRUST
To: 2011 INTELLECTUAL PROPERTY ASSET TRUST
Reel/Frame 027121/0353 →
SHORT FORM PATENT SECURITY AGREEMENT Recorded Sep 13, 2011
From: CORE WIRELESS LICENSING S.A.R.L.
To: NOKIA CORPORATION; MICROSOFT CORPORATION
Reel/Frame 026894/0665 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 5, 2011
From: KOSKIMIES, OSKARI; JUHOLA, JANNE
To: NOKIA CORPORATION
Reel/Frame 026232/0907 →