IP Library Granted Patent US 9,910,601
Granted Patent B2
US 9,910,601 · App. 15/180,551 · Granted Mar 6, 2018

Systems and methods for managing information objects in dynamic data storage devices

Inventors: Brian John Cepuran (Mississauga, CA); David Robert Lockhart (Waterloo, CA); Ali Ghassemi (Waterloo, CA); Dariusz Grabka (Kitchener, CA)
Assignee: D2L Corporation
G06F3/061G06F3/0605G06F3/0649G06F3/0665G06F3/0685G06F13/18
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,910,601
App. No.
15/180,551
Granted
Mar 6, 2018
Kind
B2
Abstract

According to one aspect, a system for managing information objects in dynamic data storage devices including a first data storage device having a plurality of information objects, a second data storage device operatively connectable to an output device for providing at least some of the information objects to at least one user, and at least one processor operatively coupled to the first data storage device and the second data storage device. The at least one processor is configured to automatically divide the plurality of information objects in the first data storage device to form at least one data subdivision based on division criteria, and repeatedly, in response to a dynamic operating condition determine a relevance value of at least one of the data subdivisions in the first data storage device and the second data storage device indicative of the relevance of those data subdivision to the user, and based on the relevance value, perform at least one of loading those data subdivision to the second data storage, or unloading those data subdivision from the second data storage.

Claims (35)

1. A system for managing information objects in dynamic data storage devices comprising:

a) a first data storage device having a plurality of information objects;

b) a second data storage device operatively connected to an output device for providing at least some of the information objects to at least one user; and

c) at least one processor operatively coupled to the first data storage device and the second data storage device, the at least one processor configured to:

i) organize the plurality of information objects in the first data storage device to form a plurality of subsets of information objects based at least in part on a division criteria;

ii) determine, based on a dynamic operating condition, a relevance value of the at least one of the plurality of subsets of information objects; and

iii) in response to the dynamic operating condition:

(1) re-determine the relevance value of the plurality of subsets of information objects;

(2) determine whether to re-organize the plurality of information objects based at least in part on the relevance value of the plurality of subsets of information objects, and a threshold, wherein the threshold is based at least in part on one or more operating characteristics of the system; and

(3) in the event that it is determined to re-organize the plurality of information objects, re-organizing the plurality of information objects into a new plurality of subsets of information objects.

2. The system of claim 1 , wherein the relevance value is indicative of a relevance of a corresponding one of the plurality of subsets of information objects to the at least one user.

3. The system of claim 1 , wherein the relevance value is computed based at least in part on a request for at least one information object from the at least one user.

4. The system of claim 1 , wherein the at least one processor is further configured to load the at least one of the plurality of subsets of information objects to the second data storage device in the event that the relevance value associated with those plurality of subsets of information objects is outside the threshold.

5. The system of claim 1 , wherein the at least one processor is further configured to unload the at least one of the plurality of subsets of information objects from the second data storage device in the event that the relevance value associated with those plurality of subsets of information objects is outside the threshold.

6. The system of claim 1 , wherein the at least one processor is further configured to re-divide the plurality of information objects in response to the dynamic operating condition.

7. The system of claim 1 , wherein each of the plurality of subsets of information objects comprises metadata associated with the subset of information objects indicative of the at least one of the plurality of information objects associated with the subset.

8. The system of claim 7 , wherein whether each of the plurality of subsets of information objects comprises the metadata associated with at least one of the plurality of information objects, or whether each of the plurality of subsets of information objects comprises the plurality of information objects is determined based on the quantity of information objects to be displayed.

9. The system of claim 7 , wherein when the subset of information objects comprises metadata, the at least one of the plurality information objects associated with that subset of information objects is loaded to the second data storage device based on the relevance value of that subset of information objects.

10. The system of claim 7 , wherein when the subset of information objects comprises metadata, the at least one of the plurality information objects associated with that subset of information objects is unloaded from the second data storage device based on the relevance value of that subset of information objects.

11. The system of claim 1 , wherein the division criteria includes a memory size value indicative of available memory size for the second data storage device, wherein the memory size value is dynamic.

12. The system of claim 1 , wherein when the output device is a display device, the division criteria include a display size value indicative of the size of the output display.

13. The system of claim 1 , wherein the division criteria includes the size of the at least one subset of information objects.

14. The system of claim 1 , wherein the division criteria include the speed of transfer between the first data storage device and the second data device.

15. The system of claim 1 , wherein the division criteria include preference settings, the preference settings being indicative of the user's preference as to at least one of the plurality of subsets of information objects based on the division criteria and the determination of the relevance value.

16. The system of claim 1 , wherein the relevance value of the at least one of the plurality of subsets of information objects is determined based on an interaction frequency value indicative of the frequency of user interaction with that subset of information objects.

17. The system of claim 1 , wherein the relevance value of the plurality of subsets of information objects is determined based on preference settings, the preference settings being indicative of the user's preference as to the plurality of subsets of information objects based on division criteria and the determination of the relevance value.

18. The system of claim 1 , wherein the relevance value of at least one of the plurality of subsets of information objects is determined based at least in part on a temporal value indicative of the length of time that the subset of information objects has been in the second data storage device.

19. The system of claim 1 , wherein the relevance value of at least one of the plurality of subsets of information objects is based at least in part on the size of the corresponding subset of information object.

20. A method for managing information objects in dynamic data storage devices comprising:

organizing a plurality of information objects in a first data storage device, including using at least one processor to form a plurality of subsets of information objects based on a division criteria, the processor being operatively coupled to the first data storage device and a second data storage device, the second data storage being connected to an output device for providing at least some of the information objects to at least one user;

using the at least one processor to determine, based on a dynamic operating condition, a relevance value of the plurality of subsets of information objects; and

in response to the dynamic operating condition using the at least one processor to:

re-determine the relevance value of plurality of subsets of information objects;

determining whether to re-organize the plurality of information objects based at least in part on the relevance value of the plurality of subsets of information objects, and a threshold, wherein the threshold is based at least in part on one or more operating characteristics of the system; and

in the event that it is determined to re-organize the plurality of information objects, re-organizing the plurality of information objects into a new plurality of subsets of information objects.

Assignments (3)
NUNC PRO TUNC ASSIGNMENT Recorded Jan 31, 2017
From: CEPURAN, BRIAN JOHN; GHASSEMI, ALI; LOCKHART, DAVID ROBERT; GRABKA, DARIUSZ
To: DESIRE2LEARN INCORPORATION
Reel/Frame 041132/0467 →
CHANGE OF NAME Recorded Jan 31, 2017
From: DESIRE2LEARN INCORPORATION
To: D2L INCORPORATED
Reel/Frame 041567/0353 →
CHANGE OF NAME Recorded Jan 31, 2017
From: D2L INCORPORATED
To: D2L CORPORATION
Reel/Frame 041567/0356 →
Continuity (3)
Continuation 13096171 · Apr 28, 2011
Provisional Application 61330295 · Apr 30, 2010
Related Publication 20160299691A1 · Oct 13, 2016