US8131674B2ExpiredUtilityA1

Methods and systems for managing data

77
Assignee: ARROUYE YANPriority: Jun 25, 2004Filed: Apr 22, 2005Granted: Mar 6, 2012
Est. expiryJun 25, 2024(expired)· nominal 20-yr term from priority
G06F 16/13G06F 16/328G06F 16/164G06F 16/14G06F 16/168G06F 16/134
77
PatentIndex Score
6
Cited by
101
References
21
Claims

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

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A computing system implemented method of processing data, the method comprising:
 receiving, by an indexing software component, an index notification that an existing file has been modified or that a new file has been created; 
 in response to the index notification, causing an index entry, representing the existing file or the new file, to be added to an index queue, the addition of the index entry being a change to the index queue; 
 saving the index queue in a nonvolatile storage; 
 entering the change to the index queue into an index log, the index queue being separate from the index log, and saving the index log with the change onto the nonvolatile storage; 
 receiving, by a meta data software component, a meta data notification that meta data is to be changed or added; 
 in response to the meta data notification, causing a meta data entry, representing the meta data to be changed or added, to be added to a meta data queue, the addition of the meta data entry being a change to the meta data queue; 
 saving the meta data queue in the nonvolatile storage; 
 entering the change to the meta data queue into a meta data log, the meta data queue being separate from the meta data log, and saving the meta data log, with the change, onto the nonvolatile storage; 
 forming updated index queues by removing from the index queues entries for files, indexing the files represented by the removed index queue entries, and entering into the index log changes made to the index queues; 
 forming updated meta data queues by removing from the meta data queues entries for meta data, changing or adding meta data represented by the removed entries in the meta data queue, and entering into the meta data log changes made to the meta data queues; 
 in response to an increase in detected user activity, reducing indexing activity more than meta data change/addition activity. 
 
     
     
       2. The computing system implemented method of  claim 1  wherein the index notification is provided by an operating system of the computing system. 
     
     
       3. The computing system implemented method of  claim 2  wherein the meta data notification is provided by the operating system of the computing system. 
     
     
       4. The computing system implemented method of  claim 1  wherein the index log is saved to the non volatile storage before the index queue. 
     
     
       5. The computing system implemented method of  claim 4  wherein the meta data log is saved to the non volatile storage before the meta data queue. 
     
     
       6. The computing system implemented method of  claim 1  wherein said index and meta data logs are used to at least partially restore said computing system's state after said computing system crashes. 
     
     
       7. The computing system implemented method of  claim 1  wherein said index and meta data logics are implemented as ACID compliant journals. 
     
     
       8. A computing system having a tangible storage medium with program code stored thereon, said computing system having a processing unit coupled to said storage medium, said processing unit to process said program code to perform a method, said method comprising:
 receiving, by an indexing software component, an index notification that an existing file has been modified or that a new file has been created; 
 in response to the index notification, causing an index entry, representing the existing file or the new file, to be added to an index queue, the addition of the index entry being a change to the index queue; 
 saving the index queue in a nonvolatile storage; 
 entering the change to the index queue into an index log, the index queue being separate from the index log, and saving the index log with the change onto the nonvolatile storage; 
 receiving, by a meta data software component, a meta data notification that meta data is to be changed or added; 
 in response to the meta data notification, causing a meta data entry, representing the meta data to be changed or added, to be added to a meta data queue, the addition of the meta data entry being a change to the meta data queue; 
 saving the meta data queue in the nonvolatile storage; 
 entering the change to the meta data queue into a meta data log, the meta data queue being separate from the meta data log, and saving the meta data log, with the change, onto the nonvolatile storage; 
 forming updated index queues by removing from the index queues entries for files, indexing the files represented by the removed index queue entries, and entering into the index log changes made to the index queues; 
 forming updated meta data queues by removing from the meta data queues entries for meta data, changing or adding meta data represented by the removed entries in the meta data queue, and entering into the meta data log changes made to the meta data queues; 
 in response to an increase in detected user activity, reducing indexing activity more than meta data change/addition activity. 
 
     
     
       9. The computing system of  claim 8  wherein the index notification is provided by an operating system of the computing system. 
     
     
       10. The computing system of  claim 9  wherein the meta data notification is provided by the operating system of the computing system. 
     
     
       11. The computing system of  claim 8  wherein the index log is saved to the non volatile storage before the index queue. 
     
     
       12. The computing system of  claim 11  wherein the meta data log is saved to the non volatile storage before the meta data queue. 
     
     
       13. The computing system of  claim 8  wherein said index and meta data logs are used to at least partially restore said computing system's state after said computing system crashes. 
     
     
       14. The computing system of  claim 8  wherein said index and meta data logics are implemented as ACID compliant journals. 
     
     
       15. A tangible computer readable storage medium storing program code that when processed by a processing unit performs a method, comprising:
 receiving, by an indexing software component, an index notification that an existing file has been modified or that a new file has been created; 
 in response to the index notification, causing an index entry, representing the existing file or the new file, to be added to an index queue, the addition of the index entry being a change to the index queue; 
 saving the index queue in a nonvolatile storage; 
 entering the change to the index queue into an index log, the index queue being separate from the index log, and saving the index log with the change onto the nonvolatile storage; 
 receiving, by a meta data software component, a meta data notification that meta data is to be changed or added; 
 in response to the meta data notification, causing a meta data entry, representing the meta data to be changed or added, to be added to a meta data queue, the addition of the meta data entry being a change to the meta data queue; 
 saving the meta data queue in the nonvolatile storage; 
 entering the change to the meta data queue into a meta data log, the meta data queue being separate from the meta data log, and saving the meta data log, with the change, onto the nonvolatile storage; 
 forming updated index queues by removing from the index queues entries for files, indexing the files represented by the removed index queue entries, and entering into the index log changes made to the index queues; 
 forming updated meta data queues by removing from the meta data queues entries for meta data, changing or adding meta data represented by the removed entries in the meta data queue, and entering into the meta data log changes made to the meta data queues; 
 in response to an increase in detected user activity, reducing indexing activity more than meta data change/addition activity. 
 
     
     
       16. The tangible computer readable storage medium of  claim 15  wherein the index notification is provided by an operating system of the computing system. 
     
     
       17. The tangible computer readable storage medium of  claim 16  wherein the meta data notification is provided by the operating system of the computing system. 
     
     
       18. The tangible computer readable storage medium of  claim 15  wherein the index log is saved to the non volatile storage before the index queue. 
     
     
       19. The tangible computer readable storage medium of  claim 18  wherein the meta data log is saved to the non volatile storage before the meta data queue. 
     
     
       20. The tangible computer readable storage medium of  claim 15  wherein said index and meta data logs are used to at least partially restore said computing system's state after said computing system crashes. 
     
     
       21. The tangible computer readable storage medium of  claim 15  wherein said index and meta data logics are implemented as ACID compliant journals.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.