IP Library Granted Patent US 10,706,010
Granted Patent B2
US 10,706,010 · App. 15/075,042 · Granted Jul 7, 2020

Methods and systems for managing data

Inventors: Yan Arrouye (Los Altos, CA); Dominic Giampaolo (Lewiston, ME); Andrew Carol (Half Moon Bay, CA); Steve Zellers (Fremont, CA)
Assignee: Apple Inc.
G06F16/134G06F16/13G06F16/14G06F16/164G06F16/168G06F16/328
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 10,706,010
App. No.
15/075,042
Granted
Jul 7, 2020
Kind
B2
Abstract

Systems and methods for managing data, such as metadata or index databases. In one exemplary method, a notification that an existing file has been modified or that a new file has been created is received by an indexing software component, which then, in response to the notification performs an indexing operation, where the notification is either not based solely on time or user input or the notification includes an identifier that identifies the file. Other methods in data processing systems and machine readable media are also described.

Claims (77)

1. A machine implemented method of processing data on a data processing system, the method comprising:

determining a file is to be indexed into an indexing database;

adding an entry representing the file into an indexing queue for indexing operations;

saving the indexing queue to a nonvolatile storage;

monitoring an amount of user activity associated with the data processing system to determine whether the amount of user activity exceeds a threshold;

performing indexing operations on the file specified in the indexing queue to index content of the file into the indexing database;

interrupting the indexing operations in response to determining, from the monitoring, that the amount of user activity associated with the data processing system exceeds the threshold;

resuming the indexing operations in response to determining, from the monitoring, that the amount of user activity associated with the data processing system is below the threshold; and

searching, using a system wide interface, the indexed content of the file in response to a search query, wherein the search query is entered into the system wide interface through a single command and a name of the file is displayed as the user enters the search query.

2. The machine implemented method as in claim 1 further comprising:

removing effectively the entry from the indexing queue after indexing the file to create an updated indexing queue; and

saving the updated indexing queue to the nonvolatile storage.

3. The method as in claim 2 , wherein the determining comprises receiving a notification that the file is to be indexed, the notification being from an operating system component to an indexing component.

4. The method as in claim 3 , wherein the notification is not based solely on time or a user input and a transaction log shows changes to the indexing queue.

5. The method as in claim 1 further comprising:

determining a file type of the file;

selecting an importer for the determined file type; and

capturing metadata for the file using the selected importer.

6. A machine readable medium providing instructions which when executed by a data processing system cause the data processing system to perform a method of processing data, the method comprising:

determining a file is to be indexed into an indexing database;

adding an entry representing the file into an indexing queue for indexing operations;

saving the indexing queue to a nonvolatile storage;

monitoring an amount of user activity associated with the data processing system to determine whether the amount of user activity exceeds a threshold;

performing indexing operations on the file specified in the indexing queue to index content of the file into an indexing database;

interrupting the indexing operations in response to determining, from the monitoring, that the amount of user activity associated with the data processing system exceeds the threshold;

resuming the indexing operations in response to determining, from the monitoring, that the amount of user activity associated with the data processing system is below the threshold; and

searching, using a system wide interface, the indexed content of the file in response to a search query, wherein the search query is entered into the system wide interface through a single command and a name of the file is displayed as the user enters the search query.

7. The medium as in claim 6 , wherein the method further comprises:

removing effectively the entry from the indexing queue after indexing the file to create an updated indexing queue; and

saving the updated indexing queue to the nonvolatile storage.

8. The medium as in claim 7 , wherein the determining comprises receiving a notification that the file is to be indexed, the notification being from an operating system component to an indexing component.

9. The medium as in claim 8 , wherein the notification is not based solely on time or a user input and a transaction log shows changes to the indexing queue.

10. The medium as in claim 6 , wherein the method further comprises:

determining a file type of the file;

selecting an importer for the determined file type; and

capturing metadata for the file using the selected importer.

11. A data processing system comprising:

means for determining a file is to be indexed into an indexing database;

means for adding an entry representing the file into an indexing queue for indexing operations;

means for saving the indexing queue to a nonvolatile storage;

means for monitoring an amount of user activity associated with the data processing system to determine whether the amount of user activity exceeds a threshold;

means for performing indexing operations on the file specified in the indexing queue to index content of the file into an indexing database;

means for interrupting the indexing operations in response to determining, from the monitoring, that the amount of user activity associated with the data processing system exceeds the threshold;

means for resuming the indexing operations in response to determining, from the monitoring, that the amount of user activity associated with the data processing system is below the threshold; and

searching, using a system wide interface, the indexed content of the file in response to a search query, wherein the search query is entered into the system wide interface through a single command and a name of the file is displayed as the user enters the search query.

12. The system as in claim 11 further comprising:

means for removing effectively the entry from the indexing queue after indexing the file to create an updated indexing queue; and

means for saving the updated indexing queue to the nonvolatile storage.

13. The system as in claim 12 , wherein the determining comprises receiving a notification being from an operating system component to an indexing component.

14. The system as in claim 13 , wherein the notification is not based solely on time or a user input and a transaction log shows changes to the indexing queue.

15. A machine readable medium providing instructions which when executed by a data processing system cause the data processing system to perform a method of processing data, the method comprising:

determining a file is to have metadata for the file to be added into a metadata database;

adding an entry representing the file into a queue for metadata processing operations;

saving the queue to a nonvolatile storage;

monitoring an amount of user activity associated with the data processing system to determine whether the amount of user activity exceeds a threshold;

performing metadata processing operations on the file specified in the queue to add metadata for the file into the metadata database;

interrupting the metadata processing operations in response to determining, from the monitoring, that the amount of user activity associated with the data processing system exceeds the threshold;

resuming the metadata processing in response to determining, from the monitoring, that the amount of user activity associated with the data processing system is below the threshold; and

searching, using a system wide interface, the added metadata for the file in response to a search query, wherein the search query is entered into the system wide interface through a single command and a name of the file is displayed as the user enters the search query.

16. The medium as in claim 15 , wherein the method further comprises:

removing effectively the entry from the queue after adding metadata for the file to the metadata database to create an updated queue; and

saving the updated queue to the nonvolatile storage.

17. The medium as in claim 16 , wherein the determining comprises receiving a notification that the file is new or modified, the notification being from an operating system component to a metadata software component.

18. The medium as in claim 17 , wherein the notification is not based solely on time or a user input and a transaction log shows changes to the queue.

19. The medium as in claim 15 , wherein the method further comprises:

determining a file type of the file;

selecting an importer for the determined file type; and

capturing metadata into the metadata database for the file using the selected importer.

20. The medium as in claim 15 , wherein performing metadata processing operations on the file specified in the queue further comprises:

importing metadata associated with the file specified in the queue into the metadata database.

21. The medium as in claim 20 , wherein the metadata is different for different types of files.

22. The medium as in claim 21 , further comprising:

storing indexed content of the file specified in the queue and the metadata associated with the file; and

searching the indexed content of the file in response to the search query.

23. The medium as in claim 22 , wherein search results from searching the indexed content of the file and the added metadata are displayed in a single window, and wherein the indexed content comprises the full text of the file.

24. The medium as in claim 20 , wherein a first importer, in response to a first notification, captures metadata for a first file type and a second importer, in response to a second notification, captures metadata for a second file type which is different than the first file type.

25. The medium as in claim 24 , wherein prior to capturing metadata for the file, a type of the file is determined and used to select an importer from a set of metadata importers to capture metadata from the file.

Continuity (6)
Continuation 14295886 · Jun 4, 2014
Continuation 13408107 · Feb 29, 2012
Division 11112280 · Apr 22, 2005
Continuation In Part 10877584 · Jun 25, 2004
Provisional Application 60643087 · Jan 7, 2005
Related Publication 20160239507A1 · Aug 18, 2016