IP Library Granted Patent US 11,677,820
Granted Patent B2
US 11,677,820 · App. 17/578,948 · Granted Jun 13, 2023

Peer-to-peer syncable storage system

Inventors: Himabindu Pucha (Mountain View, CA); Raja Daoud (Mountain View, CA); Michael Burrows (Mountain View, CA)
Assignee: Google LLC
H04L67/1044G06F16/176G06F16/178G06F16/182G06F16/188H04L61/5069H04L63/101H04L67/1095H04L67/1097H04L67/133H04W4/80
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 11,677,820
App. No.
17/578,948
Granted
Jun 13, 2023
Kind
B2
Abstract

A system for creating a sync group in a distributed system may include an offline electronic device having a short range communication transmitter and a storage service, and a computer-readable storage medium comprising one or more programming instructions. The system may receive a request from an application to create a sync group, and verify that the application has read access to the storage service. In response to verifying that the application has read access to the storage service, the system may create the sync group by receiving an indication of one or more objects stored in the storage service that are to be shared, identifying one or more members of the sync group, and assigning one or more permissions to the one or more members that are identified. The system may synchronize access to the objects among the electronic device and one or more member electronic devices.

Claims (28)

1. A method for synchronizing offline data in a computing system, comprising:

receiving, at a server associated with a storage service, a request from an application to create a synchronization group associated with a plurality of member electronic devices,

generating, at the server, the synchronization group, the synchronization group having one or more data prefix-access control lists sets, the one or more data prefix-access control lists providing an indication that specifies a subset of data or the access control lists to synchronize;

receiving, at the server, one or more objects stored by the storage service that are to be shared by the plurality of member electronic devices,

receiving, at the server, an indication that a first member electronic device modified a first object of the one or more objects while the first member electronic device was operating offline, and

synchronizing, by the server, one or more storage devices on one or more other member electronic devices of the synchronization group such that the first object in the one or more storage devices is updated to include a modification to the first object made by the first member electronic device.

2. The method of claim 1 , wherein the first member electronic device maintains a local log that records modifications to the first object while operating offline.

3. The method of claim 2 , wherein the local log associates a unique generation number with a modification of a given data object.

4. The method of claim 3 , wherein the indication received at the server includes the unique generation number.

5. The method of claim 1 , wherein the indication received at the server includes a unique generation number retrieved from a local storage on the first member electronic device.

6. The method of claim 1 , wherein the synchronization group comprises metadata defining permissions associated with the plurality of member electronic devices.

7. The method of claim 6 , wherein the permissions define membership to the synchronization group based on a particular application.

8. The method of claim 7 , wherein the particular application is one of an online gaming application, a document sharing application or a photo editing application.

9. A system for synchronizing offline data in a computing system, comprising:

a memory storing instructions;

one or more computing devices coupled to the memory, the instructions causing the one or computing devices to operate as a server that provides a storage service, the server when operated using the instructions function to:

receive a request from an application to create a synchronization group associated with a plurality of member electronic devices,

generate the synchronization group, the synchronization group having one or more data prefix-access control lists sets, the one or more data prefix-access control lists providing an indication that specifies a subset of data or the access control lists to synchronize;

receive one or more objects stored by the storage service that are to be shared by the plurality of member electronic devices,

receive an indication that a first member electronic device modified a first object of the one or more objects while the first member electronic device was operating offline, and

synchronize one or more storage devices on one or more other member electronic devices of the synchronization group such that the first object in the one or more storage devices is updated to include a modification to the first object made by the first member electronic device.

10. The system of claim 9 , wherein the first member electronic device maintains a local log that records modifications to the first object while operating offline.

11. The system of claim 10 , wherein the local log associates a unique generation number with a modification of a given data object.

12. The system of claim 11 , wherein the indication received at the server includes the unique generation number.

13. The system of claim 9 , wherein the indication received at the server includes a unique generation number retrieved from a local storage on the first member electronic device.

14. The system of claim 9 , wherein the synchronization group comprises metadata defining permissions associated with the plurality of member electronic devices.

15. The system of claim 14 , wherein the permissions define membership to the synchronization group based on a particular application.

16. The system of claim 15 , wherein the particular application is one of an online gaming application, a document sharing application or a photo editing application.

Assignments (2)
CHANGE OF NAME Recorded Mar 28, 2022
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 059513/0581 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 25, 2022
From: PUCHA, HIMABINDU; DAOUD, RAJA; BURROWS, MICHAEL
To: GOOGLE INC.
Reel/Frame 059401/0076 →
Continuity (3)
Continuation 15284078 · Oct 3, 2016
Provisional Application 62236480 · Oct 2, 2015
Related Publication 20220217203A1 · Jul 7, 2022