IP Library Granted Patent US 8,949,664
Granted Patent B2
US 8,949,664 · App. 13/299,698 · Granted Feb 3, 2015

Method and apparatus for providing information consistency in distributed computing environments

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,949,664
App. No.
13/299,698
Granted
Feb 3, 2015
Kind
B2
Abstract

An approach is provided for providing information consistency in distributed computing environments. An information consistency platform determines one or more finite state machines based, at least in part, on one or more states of one or more respective steps of at least one update operation operating on one or more data items, wherein the one or more finite state machines executes, at least in part, the at least one update operation, one or more other operations, or a combination thereof on the one or more data items.

Claims (42)

1. A method comprising facilitating a processing of and/or processing (1) data and/or (2) information and/or (3) at least one signal, the (1) data and/or (2) information and/or (3) at least one signal based, at least in part, on the following: at least one determination of one or more finite state machines based, at least in part, on one or more states of one or more respective steps of at least one update operation operating on one or more data items; and at least one determination that one or more moving flags associated with the one or more states has not expired, wherein the one or more finite state machines executes, at least in part, the at least one update operation, one or more other operations, or a combination thereof on the one or more data items, wherein the one or more other operations is a read operation, the method further comprising: at least one determination that the at least one update operation has failed if the one or more moving flags of the one or more old entries is expired; and a return of the one or more old entries in response to the read operation.

2. A method of claim 1 , wherein a first state of the one or more states is a successful setting of the one or more moving flags on (a) one or more old entries of the one or more data items, (b) one or more new entries of the one or more data items, or (c) a combination thereof; wherein a second state of the one or more states is a successful addition of the one or more new entries; wherein a third state of the one or more states is a successful deletion of the one or more old entries; and wherein a fourth state of the one or more states is a successful removal of the one or more moving flags from the one or more new entries.

3. A method of claim 2 , wherein the one or more other operations is a read operation, and wherein the (1) data and/or (2) information and/or (3) at least one signal are further based, at least in part, on the following:

at least one determination that the at least one update operation is ongoing if the one or more moving flags of the one or more old entries are not expired; and

a return of the one or more old entries in response to the read operation.

4. A method of claim 2 , wherein the one or more other operations is a read operation, and wherein the (1) data and/or (2) information and/or (3) at least one signal are further based, at least in part, on the following:

at least one determination that the at least one update operation is ongoing if the one or more moving flags are set for the one or more new entries;

a return of the one or more old entries if the one or more old entries exist, or the one or more new entries if the one or more old entries do not exist.

5. A method of claim 2 , wherein the one or more other operations is a delete operation, and wherein the (1) data and/or (2) information and/or (3) at least one signal are further based, at least in part, on the following:

at least one determination that the one or more moving flags are set for the one or more old entries; and

a marking of the one or more old entries for deletion without deleting the one or more old entries.

6. A method of claim 2 , wherein one or more other operations is a delete operation, and wherein the (1) data and/or (2) information and/or (3) at least one signal are further based, at least in part, on the following:

at least one determination that the one or more moving flags are set for the one or more new entries; and

a deletion of the one or more new entries if the one or more moving flags are expired, or a skipping of the delete operation if the one or more moving flags are not expired.

7. A method of claim 2 , wherein the one or more other operations is a repair operation, and wherein the (1) data and/or (2) information and/or (3) at least one signal are further based, at least in part, on the following:

at least one determination that the at least one update operation has failed if the one or more moving flags of the one or more old entries is not expired; and

a deletion of the one or more new entries.

8. A method of claim 2 , wherein the one or more other operations is a repair operation, and wherein the (1) data and/or (2) information and/or (3) at least one signal are further based, at least in part, on the following:

at least one determination that the at least one update operation has failed if the one or more moving flags of the one or more old entries is expired; and

a deletion of the one or more old entries, the one or more new entries, or a combination thereof based, at least in part, on the one or more states, the one or more moving flags, or a combination thereof.

9. A method of claim 2 , wherein the one or more moving flags include, at least in part, a timestamp information, and wherein an expiration of the one or more moving flags is determined based, at least in part, on a comparison of the timestamp information against a time period during which the at least one update operation, the one or more other operations or a combination thereof are estimated to be completed to a predetermined probability.

10. An apparatus comprising: at least one processor; and at least one memory including computer program code for one or more programs, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to perform at least the following, determine one or more finite state machines based, at least in part, on one or more states of one or more respective steps of at least one update operation operating on one or more data items; and determine that one or more moving flags associated with the one or more states has not expired, wherein the one or more finite state machines executes, at least in part, the at least one update operation, one or more other operations, or a combination thereof on the one or more data items, wherein the one or more other operations is a read operation, the apparatus is further caused to: determine that the at least one update operation has failed if the one or more moving flags of the one or more old entries is expired; and cause, at least in part, a return of the one or more old entries in response to the read operation.

11. An apparatus of claim 10 , wherein a first state of the one or more states is a successful setting of the one or more moving flags on (a) one or more old entries of the one or more data items, (b) one or more new entries of the one or more data items, or (c) a combination thereof; wherein a second state of the one or more states is a successful addition of the one or more new entries; wherein a third state of the one or more states is a successful deletion of the one or more old entries; and wherein a fourth state of the one or more states is a successful removal of the one or more moving flags from the one or more new entries.

12. An apparatus of claim 11 , wherein the one or more other operations is a read operation, the apparatus is further caused to:

determine that the at least one update operation is ongoing if the one or more moving flags of the one or more old entries are not expired; and

cause, at least in part, a return of the one or more old entries in response to the read operation.

13. An apparatus of claim 11 , wherein the one or more other operations is a read operation, the apparatus is further caused to:

determine that the at least one update operation is ongoing if the one or more moving flags are set for the one or more new entries;

cause, at least in part, a return of the one or more old entries if the one or more old entries exist, or the one or more new entries if the one or more old entries do not exist.

14. An apparatus of claim 11 , wherein the one or more other operations is a delete operation, the apparatus is further caused to:

determine that the one or more moving flags are set for the one or more old entries; and

cause, at least in part, a marking of the one or more old entries for deletion without deleting the one or more old entries.

15. An apparatus of claim 11 , wherein one or more other operations is a delete operation, the apparatus is further caused to:

determine that the one or more moving flags are set for the one or more new entries; and

cause, at least in part, a deletion of the one or more new entries if the one or more moving flags are expired, or a skipping of the delete operation if the one or more moving flags are not expired.

16. An apparatus of claim 11 , wherein the one or more other operations is a repair operation, the apparatus is further caused to:

determine that the at least one update operation has failed if the one or more moving flags of the one or more old entries is not expired; and

cause, at least in part, a deletion of the one or more new entries.

17. An apparatus of claim 11 , wherein the one or more other operations is a repair operation, the apparatus is further caused to:

determine that the at least one update operation has failed if the one or more moving flags of the one or more old entries is expired; and

cause, at least in part, a deletion of the one or more old entries, the one or more new entries, or a combination thereof based, at least in part, on the one or more states, the one or more moving flags, or a combination thereof.

18. An apparatus of claim 11 , wherein the one or more moving flags include, at least in part, a timestamp information, and wherein an expiration of the one or more moving flags is determined based, at least in part, on a comparison of the timestamp information against a time period during which the at least one update operation, the one or more other operations or a combination thereof are estimated to be completed to a predetermined probability.

Assignments (6)
SECURITY INTEREST Recorded Jun 1, 2021
From: WSOU INVESTMENTS, LLC
To: OT WSOU TERRIER HOLDINGS, LLC
Reel/Frame 056990/0081 →
RELEASE OF SECURITY INTEREST Recorded May 21, 2019
From: OCO OPPORTUNITIES MASTER FUND, L.P. (F/K/A OMEGA CREDIT OPPORTUNITIES MASTER FUND LP
To: WSOU INVESTMENTS, LLC
Reel/Frame 049246/0405 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2017
From: NOKIA TECHNOLOGIES OY
To: WSOU INVESTMENTS, LLC
Reel/Frame 043953/0822 →
SECURITY INTEREST Recorded Sep 21, 2017
From: WSOU INVESTMENTS, LLC
To: OMEGA CREDIT OPPORTUNITIES MASTER FUND, LP
Reel/Frame 043966/0574 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 1, 2015
From: NOKIA CORPORATION
To: NOKIA TECHNOLOGIES OY
Reel/Frame 035305/0626 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 17, 2012
From: PAN, ZANE ZHENG YAN; YANG, FUJIAN
To: NOKIA CORPORATION
Reel/Frame 028807/0362 →