IP Library › Granted Patent US 9,495,468
Granted Patent B2
US 9,495,468 · App. 14/207,455 · Granted Nov 15, 2016

Methods and systems for aggregating and presenting large data sets

Inventors: Michael Edward Coyote (Seattle, WA); Matthew Greene (Seattle, WA); Marcellino Tanumihardja (Seattle, WA); Mei Chi Chin (Seattle, WA)
Assignee: VULCAN TECHNOLOGIES, LLC
G06F17/30873G06F3/0482G06F3/04842
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 9,495,468
App. No.
14/207,455
Granted
Nov 15, 2016
Kind
B2
Abstract

The current document is directed to methods and systems that aggregate data from multiple sources and that organize and efficiently present data obtained from the data sources to a user on a user, or client, device. In certain implementations, a client-side application communicates with one or more servers of a cloud-based data-aggregation system. A multi-rotor-data-carousel-based graphical user interface accommodates data items continuously received from the data-aggregation system and efficiently displays portions of the data items to the user.

Claims (64)

1. A system for aggregating data obtained from remote data sources and presenting the aggregated data in a data-carousel-based graphical user interface, the system comprising:

a data-aggregation system that receives requests for data items from a user device, accesses one or more internal data servers to retrieve the requested data, and returns the requested data to the user device; and

the user device having at least one processor, one or more memories, a network interface, an electronic display, and processor instructions, stored in one or more of the one or more memories that, when executed by the at least one processor, control the user device to

request a list of one or more data items for display to a user from the data-aggregation system, the list of one or more data items having a first data item and a last data item,

receive the list of requested data items in one or more response messages from the data-aggregation system, and

present the list of data items in a data-carousel-based graphical user interface on the electronic display, the data-carousel-based graphical user interface containing a top-level rotor and one or more result rotors each comprising multiple data bins, each data bin representing a single data item, the one or more result rotors automatically rotating, without user input to initiate rotation, in order to continuously display the list of data items and the one or more result rotors rotating at a rotational speed that is based on one of

a number of data items returned by the data-aggregation system,

a number of data items in the list,

a position of the result rotor within a set of displayed result rotors,

previous user input, and

current time with respect to a repeating time interval.

2. The system of claim 1 , wherein the data-aggregation system comprises one or more servers selected from among:

API server;

media-content cluster;

recommendation-engine servers;

staging database cluster;

logging server; and

user profile database server.

3. The system of claim 1 , wherein when the last data item in the list has been reached, the list is reset so that the first data item in the list is associated with a next available data bin and displayed in a result rotor.

4. The system of claim 1 , wherein the data-carousel-based graphical user interface further comprises one or more sub-rotors, each sub-rotor displaying sub-categories for categories displayed in a higher-level sub-rotor or the top-level rotor.

5. The system of claim 1 , wherein the one or more result rotors are concentrically stacked, with each result rotor automatically rotating at a particular rotational speed.

6. The system of claim 5 , wherein the rotational speed is selected from one of:

multiple discrete rotational speeds; and

a continuous range of rotational speeds.

7. The system of claim 1 , wherein a number of data items cumulatively displayed by a result rotor continuously increases, during display of data items by the result rotor, as additional date items are requested, by the user device, from the data-aggregation system and returned to the user device by the data-aggregation system.

8. The system of claim 1 , wherein the data-carousel-based graphical user interface, in response to a user input, interrupts the automatic rotation of one of the one or more result rotors and rotates the result rotor at a different rotational speed.

9. A method for aggregating data obtained from remote data sources and presenting the aggregated data in a data-carousel-based graphical user interface, the method comprising:

providing a data-aggregation system that receives requests for data items from a user device, accesses one or more internal data servers to retrieve the requested data, and returns the requested data to the user device; and

controlling the user device having at least one processor, one or more memories, a network interface, an electronic display, and processor instructions, stored in one or more of the one or more memories that, when executed by the at least one processor, to

request a list of one or more data items for display to a user from the data-aggregation system, the list of one or more data items having a first data item and a last data item,

receive the list of requested data items in one or more response messages from the data-aggregation system, and

present the list of data items in a data-carousel-based graphical user interface on the electronic display, the data-carousel-based graphical user interface containing a top-level rotor and one or more result rotors each comprising multiple data bins, each data bin representing a single data item, the one or more result rotors automatically rotating, without user input to initiate rotation, in order to continuously display the list of data items and the one or more result rotors rotating at a rotational speed that is based on one of

a number of data items returned by the data-aggregation system,

a number of data items in the list,

a position of the result rotor within a set of displayed result rotors,

previous user input, and

current time with respect to a repeating time interval.

10. The method of claim 9 , wherein the data-aggregation system comprises one or more servers selected from among:

API server;

media-content cluster;

recommendation-engine servers;

staging database cluster;

logging server; and

user profile database server.

11. The method of claim 9 , wherein when the last data item in the list has been reached, the list is reset so that the first data item in the list is associated with a next available data bin and displayed in a result rotor.

12. The method of claim 9 , wherein the data-carousel-based graphical user interface further comprises one or more sub-rotors, each sub-rotor displaying sub-categories for categories displayed in a higher-level sub-rotor or the top-level rotor.

13. The method of claim 9 , wherein the one or more result rotors are concentrically stacked, with each result rotor automatically rotating at a particular rotational speed.

14. The method of claim 13 , wherein the rotational speed is selected from one of:

multiple discrete rotational speeds; and

a continuous range of rotational speeds.

15. The method of claim 9 , wherein a number of data items cumulatively displayed by a result rotor continuously increases, during display of data items by the result rotor, as additional data items are requested, by the user device, from the data-aggregation system and returned to the user device by the data-aggregation system.

16. The method of claim 9 , wherein the data-carousel-based graphical user interface, in response to a user input, interrupts the automatic rotation of one of the one or more result rotors and rotates the result rotor at a different rotational speed.

17. A system for aggregating data obtained from remote data sources and presenting the aggregated data in a data-carousel-based graphical user interface, the system comprising:

a data-aggregation system that receives requests for data items from a user device, accesses one or more internal data servers to retrieve the requested data, and returns the requested data to the user device; and

the user device having at least one processor, one or more memories, a network interface, an electronic display, and processor instructions, stored in one or more of the one or more memories that, when executed by the at least one processor, control the user device to

request a list of one or more data items for display to a user from the data-aggregation system, the list of one or more data items having a first data item and a last data item,

receive the list of requested data items in one or more response messages from the data-aggregation system, and

present the list of data items in a data-carousel-based graphical user interface on the electronic display, the data-carousel-based graphical user interface containing a top-level rotor and one or more result rotors each comprising multiple data bins, each data bin representing a single data item, each data bin reused, after display of a data item associated with the data bin, to display an additional data item received from the data-aggregation system following initiation of presentation of the data items by the data-carousel-based graphical user interface, the one or more result rotors rotating at a rotational speed that is based on one of

a number of data items returned by the data-aggregation system,

a number of data items in the list,

a position of the result rotor within a set of displayed result rotors,

previous user input, and

current time with respect to a repeating time interval.

18. The system of claim 17 , wherein the data-carousel-based graphical user interface further comprises one or more sub-rotors, each sub-rotor displaying sub-categories for categories displayed in a higher-level sub-rotor or the top-level rotor.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 13, 2014
From: COYOTE, MICHAEL EDWARD; GREENE, MATTHEW; TANUMIHARDJA, MARCELLINO; CHIN, MEI CHI
To: VULCAN TECHNOLOGIES LLC
Reel/Frame 033530/0924 →
Continuity (2)
Provisional Application 61777802 · Mar 12, 2013
Related Publication 20140337321A1 · Nov 13, 2014