US2019251204A1PendingUtilityA1

Targeted search of backup data using calendar event data

Assignee: COMMVAULT SYSTEMS INCPriority: Feb 14, 2018Filed: Feb 14, 2018Published: Aug 15, 2019
Est. expiryFeb 14, 2038(~11.5 yrs left)· nominal 20-yr term from priority
G06F 16/21G06F 16/335G06F 16/3331G06F 16/5866G06F 16/23G06F 16/34G06K 9/00221G06F 17/30002G06F 17/30716G06F 17/30268G06F 17/30699G06F 17/30657G06F 16/2455G06V 40/16
55
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

This application relates to targeted search of backup data. A data storage system can provide a targeted search of backup data based on events associated with the backup data. Upon receiving a search query that identifies an event stored in an event database, the data storage system can determine an event location and an event time associated with the identified event by accessing the event database and output a search result including a portion of the backup data that is associated with the event location and the event time.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A computer-implemented method for performing a targeted search on backup data, the method comprising:
 receiving a request to create a backup copy of primary data stored on one or more primary storage devices associated with a client computing device in a primary storage subsystem onto one or more secondary storage devices in a secondary storage subsystem, wherein the client computing device is associated with a requesting user;   identifying, based at least on the primary data, a first event included in an electronic calendar associated with the requesting user, wherein the first event is associated with an event name, an event location, and an event time;   storing the first event in association with the event name, the event location, and the event time in an event database maintained in the secondary storage subsystem;   creating the backup copy of the primary data in the secondary storage subsystem, the backup copy including secondary data corresponding to the primary data stored on the one or more primary storage devices;   subsequent to the creation of the backup copy in the secondary storage subsystem, receiving, from the client computing device, a request to search the backup copy, the request including a search query;   extracting a plurality of blocks of content from the search query;   identifying at least (i) a first block of the plurality of blocks that indicates the first event stored in the event database and (ii) a second block of the plurality of blocks that indicates a data type associated with at least some of the secondary data included in the backup copy stored in the one or more secondary storage devices;   accessing the event database to identify the event time associated with the first event and the event location associated with the first event;   filtering the secondary data included in the backup copy based at least on the event time, the event location, and the data type; and   transmitting a search result including the filtered secondary data to the client computing device associated with the requesting user.   
     
     
         2 . The computer-implemented method of  claim 1 , wherein the primary data comprises a plurality of files, the method further comprising:
 identifying, for each respective file of the plurality of files, global positioning system (GPS) coordinates associated with the respective file and a time value associated with the respective file; and   storing the respective file in the one or more secondary storage devices in association with the GPS coordinates and the time value.   
     
     
         3 . The computer-implemented method of  claim 1 , wherein the electronic calendar is associated with a mail application installed on the client computing device, the method further comprising:
 extracting a plurality of attendees associated with the first event; and   storing the first event in the event database in association with the plurality of attendees.   
     
     
         4 . The computer-implemented method of  claim 1 , wherein the electronic calendar is associated with a mail application installed on the client computing device, the method further comprising:
 identifying the first event based on a meeting invitation received by the requesting user via the mail application; and   extracting the event name, the event location, and the event time from the meeting invitation.   
     
     
         5 . The computer-implemented method of  claim 4 , further comprising:
 determining that each recipient of the meeting invitation is associated with a predetermined domain name; and   based on the determination that each recipient of the meeting invitation is associated with the predetermined domain name, storing the first event in the event database.   
     
     
         6 . The computer-implemented method of  claim 5 , further comprising:
 identifying a second event based on another meeting invitation received by the requesting user;   determining that at least one recipient of said another meeting invitation is not associated with the predetermined domain name; and   based on the determination that the at least one recipient is not associated with the predetermined domain name, refraining from storing the second event in the event database.   
     
     
         7 . The computer-implemented method of  claim 1 , further comprising:
 processing a plurality of email objects included in the primary data, wherein each email object of the plurality of email objects is received or sent by the requesting user;   identifying one or more events referenced in the plurality of email objects, wherein the one or more events are each associated with a corresponding event name, a corresponding event location, and a corresponding event time; and   storing each respective event of the one or more events referenced in the plurality of email objects in the event database in association with the corresponding event name, the corresponding event location, and the corresponding event time.   
     
     
         8 . The computer-implemented method of  claim 1 , wherein the primary data comprises a plurality of files, the method further comprising:
 identifying a third block of the plurality of blocks that indicates a specific user associated with at least some of the secondary data included in the backup copy stored in the one or more secondary storage devices; and   filtering the secondary data such that each file included in the search result is associated with the specific user.   
     
     
         9 . The computer-implemented method of  claim 1 , further comprising:
 receiving the request via a graphical user interface presented on the client computing device; and   causing the search result to be displayed on the graphical user interface presented on the client computing device.   
     
     
         10 . The computer-implemented method of  claim 1 , further comprising:
 identifying a plurality of events stored in the event database, the plurality of events including the first event and a second event different than the first event;   determining that the first block of the plurality of blocks extracted from the search query does not match the second event; and   subsequent to determining that the first block does not match the second event, determining that the first block matches the first event.   
     
     
         11 . A system for performing a targeted search on backup data, the system comprising:
 a client computing device comprising computer hardware and associated with one or more primary storage devices storing primary data, wherein the client computing device is in a primary storage subsystem and associated with a requesting user;   one or more secondary storage devices comprising computer hardware and residing in a secondary storage subsystem, wherein the one or more secondary storage devices are configured to store secondary data associated with the client computing device; and   one or more secondary storage computing devices comprising computer hardware and residing in a secondary storage subsystem, wherein the one or more secondary storage computing devices are configured to:
 receive a request to create a backup copy of the primary data stored on the one or more primary storage devices onto the one or more secondary storage devices; 
 identify, based at least on the primary data, a first event included in an electronic calendar associated with the requesting user, wherein the first event is associated with an event name, an event location, and an event time; 
 store the first event in association with the event name, the event location, and the event time in an event database maintained in the secondary storage subsystem; 
 create the backup copy of the primary data in the secondary storage subsystem, the backup copy including secondary data corresponding to the primary data stored on the one or more primary storage devices; 
 subsequent to the creation of the backup copy in the secondary storage subsystem, receive, from the client computing device, a request to search the backup copy, the request including a search query; 
 extract a plurality of blocks of content from the search query; 
 identify at least (i) a first block of the plurality of blocks that indicates the first event stored in the event database and (ii) a second block of the plurality of blocks that indicates a data type associated with at least some of the secondary data included in the backup copy stored in the one or more secondary storage devices; 
 access the event database to identify the event time associated with the event and the event location associated with the first event; 
 filter the secondary data included in the backup copy based at least on the event time, the event location, and the data type; and 
 transmit a search result including the filtered secondary data to the client computing device associated with the requesting user. 
   
     
     
         12 . The system of  claim 11 , wherein the primary data comprises a plurality of files, the one or more secondary storage computing devices further configured to:
 identify, for each respective file of the plurality of files, global positioning system (GPS) coordinates associated with the respective file and a time value associated with the respective file; and   store the respective file in the one or more secondary storage devices in association with the GPS coordinates and the time value.   
     
     
         13 . The system of  claim 11 , wherein the electronic calendar is associated with a mail application installed on the client computing device, the one or more secondary storage computing devices further configured to:
 extract a plurality of attendees associated with the first event; and   store the first event in the event database in association with the plurality of attendees.   
     
     
         14 . The system of  claim 11 , wherein the electronic calendar is associated with a mail application installed on the client computing device, the one or more secondary storage computing devices further configured to:
 identify the first event based on a meeting invitation received by the requesting user via the mail application; and   extract the event name, the event location, and the event time from the meeting invitation.   
     
     
         15 . The system of  claim 14 , wherein the one or more secondary storage computing devices are further configured to:
 determine that each recipient of the meeting invitation is associated with a predetermined domain name; and   based on the determination that each recipient of the meeting invitation is associated with the predetermined domain name, store the first event in the event database.   
     
     
         16 . The system of  claim 15 , wherein the one or more secondary storage computing devices are further configured to:
 identify a second event based on another meeting invitation received by the requesting user;   determine that at least one recipient of said another meeting invitation is not associated with the predetermined domain name; and   based on the determination that the at least one recipient is not associated with the predetermined domain name, refrain from storing the second event in the event database.   
     
     
         17 . The system of  claim 11 , wherein the one or more secondary storage computing devices are further configured to:
 process a plurality of email objects included in the primary data, wherein each email object of the plurality of email objects is received or sent by the requesting user;   identify one or more events referenced in the plurality of email objects, wherein the one or more events are each associated with a corresponding event name, a corresponding event location, and a corresponding event time; and   store each respective event of the one or more events referenced in the plurality of email objects in the event database in association with the corresponding event name, the corresponding event location, and the corresponding event time.   
     
     
         18 . The system of  claim 11 , wherein the primary data comprises a plurality of files, the one or more secondary storage computing devices further configured to:
 identify a third block of the plurality of blocks that indicates a specific user associated with at least some of the secondary data included in the backup copy stored in the one or more secondary storage devices; and   filter the secondary data such that each file included in the search result is associated with the specific user.   
     
     
         19 . The system of  claim 11 , wherein the one or more secondary storage computing devices are further configured to:
 receive the request via a graphical user interface presented on the client computing device; and   cause the search result to be displayed on the graphical user interface presented on the client computing device.   
     
     
         20 . The system of  claim 11 , wherein the one or more secondary storage computing devices are further configured to:
 identify a plurality of events stored in the event database, the plurality of events including the first event and a second event different than the first event;   determine that the first block of the plurality of blocks extracted from the search query does not match the second event; and   subsequent to determining that the first block does not match the second event, determine that the first block matches the first event.

Join the waitlist — get patent alerts

Track US2019251204A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.