Distributed database management system
First Claim
1. A system comprising:
- a database system configured to store a central database comprising database objects;
one or more server-side computing devices communicatively coupled to the database system and configured to;
access the central database;
divide the central database into slices, each of the slices comprising at least a portion of one or more of the database objects; and
transmit individual slices of the slices from the one or more server-side computing devices to client-side computing devices;
receive, from the client-side computing devices, data indicating inventories of slices that have been received by the client-side computing devices;
compare the inventories to lists of slices that should have been received by the client-side computing devices;
based on the comparing, identify, for a given client-side computing device, one or more of the slices that should have been received by the given client-side computing device, but have not been received by the given client-side computing device; and
retransmit the one or more of the slices from the server to the given client-side computing device;
said client-side computing devices, communicatively coupled to the one or more server-side computing devices via one or more networks, each client of the client-side computing devices configured to;
receive a set of the slices from the one or more server-side computing devices;
generate a local database of particular database objects from the central database based on the set of slices received by the client; and
transmit data indicating inventories of slices that have been received by the client.
3 Assignments
0 Petitions
Accused Products
Abstract
A distributed database management system provides a central database resident on a server that contains database objects. Objects, e.g., program guide data, to be replicated are gathered together into distribution packages called “slices,” that are transmitted to client devices. A slice is a subset of the central database which is relevant to clients within a specific domain, such as a geographic region, or under the footprint of a satellite transmitter. The viewer selects television programs and Web content from displayed sections of the program guide data which are recorded to a storage device. The program guide data are used to determine when to start and end recordings. Client devices periodically connect to the server using a phone line and upload information of interest which is combined with information uploaded from other client devices for statistical, operational, or viewing models.
-
Citations
25 Claims
-
1. A system comprising:
-
a database system configured to store a central database comprising database objects; one or more server-side computing devices communicatively coupled to the database system and configured to; access the central database; divide the central database into slices, each of the slices comprising at least a portion of one or more of the database objects; and transmit individual slices of the slices from the one or more server-side computing devices to client-side computing devices; receive, from the client-side computing devices, data indicating inventories of slices that have been received by the client-side computing devices; compare the inventories to lists of slices that should have been received by the client-side computing devices; based on the comparing, identify, for a given client-side computing device, one or more of the slices that should have been received by the given client-side computing device, but have not been received by the given client-side computing device; and retransmit the one or more of the slices from the server to the given client-side computing device; said client-side computing devices, communicatively coupled to the one or more server-side computing devices via one or more networks, each client of the client-side computing devices configured to; receive a set of the slices from the one or more server-side computing devices; generate a local database of particular database objects from the central database based on the set of slices received by the client; and transmit data indicating inventories of slices that have been received by the client. - View Dependent Claims (2)
-
-
3. A method comprising:
-
accessing, at a server, a central database comprising database objects; dividing the central database into slices, each of the slices comprising at least a portion of one or more of the database objects; transmitting individual slices of the slices from the server to clients; receiving, from the clients, data indicating inventories of slices that have been received by the clients; comparing the inventories to lists of slices that should have been received by the clients; based on the comparing, identifying, for a given client, one or more of the slices that should have been received by the given client, but have not been received by the given client; retransmitting the one or more of the slices from the server to the given client. - View Dependent Claims (4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. One or more non-transitory computer-readable media storing instructions that, when executed by one or more computing devices, cause performance of:
-
accessing, at a server, a central database comprising database objects; dividing the central database into slices, each of the slices comprising at least a portion of one or more of the database objects; transmitting individual slices of the slices from the server to clients; receiving, from the clients, data indicating inventories of slices that have been received by the clients; comparing the inventories to lists of slices that should have been received by the clients; based on the comparing, identifying, for a given client, one or more of the slices that should have been received by the given client, but have not been received by the given client; retransmitting the one or more of the slices from the server to the given client. - View Dependent Claims (16, 17, 18, 19)
-
-
20. A system comprising:
-
a subsystem, implemented at least partially by computing hardware, configured to access, at a server, a central database comprising database objects; a subsystem, implemented at least partially by computing hardware, configured to divide the central database into slices, each of the slices comprising at least a portion of one or more of the database objects; a subsystem, implemented at least partially by computing hardware, configured to transmit individual slices of the slices from the server to clients; a subsystem, implemented at least partially by computing hardware, configured to receive, from the clients, data indicating inventories of slices that have been received by the clients; a subsystem, implemented at least partially by computing hardware, configured to compare the inventories to lists of slices that should have been received by the clients; a subsystem, implemented at least partially by computing hardware, configured to based on the comparing, identify, for a given client, one or more of the slices that should have been received by the given client, but have not been received by the given client; a subsystem, implemented at least partially by computing hardware, configured to retransmit the one or more of the slices from the server to the given client. - View Dependent Claims (21, 22, 23, 24, 25)
-
Specification