IP Library Patent Application 14989654
Patent Application
App. No. 14/989,654

EMAIL RECOVERY VIA EMULATION AND INDEXING

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 None
App. No.
14/989,654
Abstract

Emails can be recovered in a quick and granular fashion by restoring an EDB within an emulated Exchange server environment and then creating a full-text index for each mailbox in the restored EDB. The full-text index could then be employed to perform searches for particular emails thereby leveraging the granular search capabilities that the full-text index provides. Any emails that are identified by searching the full-text index can then be retrieved from the restored EDB in the emulated Exchange environment and populated into the production Exchange environment. In this way, a user can restore specific emails to the production environment in a quick and efficient manner.

Claims (47)

1 . A method for restoring emails comprising:

creating an emulated Exchange environment that emulates a production Exchange environment;

restoring an EDB to the emulated Exchange environment from a backup that was created from an EDB in the production Exchange environment;

creating a full-text index for each of a number of mailboxes in the EDB that was restored to the emulated Exchange environment;

retrieving a particular email from the EDB that was restored to the emulated Exchange environment; and

restoring the particular email to the production Exchange environment.

2 . The method of claim 1 , further comprising:

querying at least one of the full-text indexes to produce a result set; and

obtaining an identifier of the particular email from the result set, wherein the particular email is retrieved using the identifier.

3 . The method of claim 1 , wherein creating a full-text index for each of a number of mailboxes in the EDB that was restored to the emulated Exchange environment comprises:

for each of the number of mailboxes, accessing the EDB to retrieve each email in the mailbox, at least some of the emails including content that is not formatted as plain text;

for each accessed email:

converting content of the email that is not formatted as plain text into plain text;

creating an indexing request that identifies a full-text index corresponding to the mailbox and that includes the content of the email in plain text format; and

submitting the indexing request to cause the content of the email to be stored in the full-text index.

4 . The method of claim 3 , wherein the content that is not formatted as plain text comprises a body of the email.

5 . The method of claim 3 , wherein the content that is not formatted as plain text comprises an attachment of the email.

6 . The method of claim 3 , wherein the content of the email is included in the indexing request as name/value pairs.

7 . The method of claim 6 , wherein the name/value pairs include an identifier of the email that is employed within the EDB to uniquely identify the email within the EDB.

8 . The method of claim 7 , wherein the particular email is retrieved from the EDB using the identifier.

9 . The method of claim 6 , wherein, for any email that includes an attachment, the indexing request is structured to cause the content of the attachment to be stored separately from but hierarchically associated with the content of the email.

10 . A recovery manager for restoring emails comprising:

an emulated Exchange environment that emulates a production Exchange environment and that is configured to interface with a data protection server to cause a backup of the production Exchange environment to be restored into the emulated Exchange environment, the backup including an EDB;

an indexing component configured to generate full-text indexes for mailboxes contained within the EDB once the EDB is restored into the emulated Exchange environment; and

a recovery console configured to query the full-text indexes to identify particular emails, to obtain the particular emails from the EDB in the emulated Exchange environment, and to restore the particular emails obtained from the EDB in the emulated Exchange environment into an EDB in the production Exchange environment.

11 . The recovery manager of claim 10 wherein the recovery console obtains the particular emails by employing identifiers of the particular emails that were obtained from the full-text indexes.

12 . The recovery manager of claim 10 , wherein generating full-text indexes comprises converting non-plain-text portions of emails or attachments into plain text.

13 . The recovery manager of claim 10 , wherein generating full-text indexes comprises submitting indexing requests that include content of emails in name/value pairs.

14 . The recovery manager of claim 13 , wherein the name/value pairs include a pair for a body of an email with the content of the body in plain text format and a pair for content of an attachment with the content of the attachment in plain text format.

15 . The recovery manager of claim 14 , wherein the name/value pairs include a pair for an identifier of an email that is employed within the EDB to uniquely identify the email.

16 . The recovery manager of claim 15 , wherein querying the full-text indexes to identify particular emails comprises retrieving the identifiers of the particular emails from corresponding name/value pairs, and wherein obtaining the particular emails from the EDB in the emulated Exchange environment comprises specifying the identifiers of the particular emails in one or more calls to an API for accessing the EDB.

17 . The recovery manager of claim 10 , wherein the indexing component comprises:

a database worker pool that is configured to launch a number of database mailbox enumerators, each database mailbox enumerator being configured to employ a database controller to access a particular mailbox within the EDB to retrieve emails from the particular mailbox, each database mailbox enumerator being further configured to convert each email into email data that is in plain text format; and

an index writer pool that is configured to launch a number of index writers, each index writer being configured to receive the email data from a corresponding database mailbox enumerator and to generate one or more indexing requests for storing the email data in a corresponding full-text index.

18 . A method for enabling individual emails to be restored, the method comprising:

creating an emulated Exchange environment that emulates a production Exchange environment;

restoring an EDB to the emulated Exchange environment from a backup that was created from an EDB in the production Exchange environment;

retrieving, from each of a plurality of mailboxes stored in the EDB restored to the emulated Exchange environment, each email stored in the mailbox;

converting content of a body or of an attachment of at least some of the emails into a plain text format;

for each mailbox, generating one or more indexing requests for storing the emails of the mailbox in a full-text index, the one or more indexing requests including content of the emails represented as name/value pairs where the value of each name/value pair is in plain text format; and

submitting the one or more indexing requests for each mailbox to thereby cause a full-text index to be created for each mailbox.

19 . The method of claim 18 , further comprising:

receiving a request to query at least one full-text index; and

returning results of the query, the results including an identifier employed within the EDB to uniquely identify a particular email.

20 . The method of claim 19 , further comprising:

employing the identifier to retrieve the particular email from the EDB in the emulated Exchange environment; and

restoring the particular email to an EDB in the production Exchange environment.

Assignments (31)
RELEASE OF SECURITY INTEREST Recorded Nov 19, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; BINARYTREE.COM LLC; ERWIN, INC.
Reel/Frame 073606/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 18, 2025
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; BINARYTREE.COM LLC; ERWIN, INC.
Reel/Frame 073613/0326 →
FIRST LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Feb 2, 2022
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; BINARYTREE.COM LLC; ERWIN, INC.; ONE IDENTITY LLC; ONELOGIN, INC.; ONE IDENTITY SOFTWARE INTERNATIONAL DESIGNATED ACTIVITY COMPANY
To: GOLDMAN SACHS BANK USA
Reel/Frame 058945/0778 →
SECOND LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Feb 2, 2022
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; BINARYTREE.COM LLC; ERWIN, INC.; ONE IDENTITY LLC; ONELOGIN, INC.; ONE IDENTITY SOFTWARE INTERNATIONAL DESIGNATED ACTIVITY COMPANY
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 058952/0279 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN PATENTS Recorded Feb 2, 2022
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC.
Reel/Frame 059096/0683 →
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS Recorded Feb 2, 2022
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC.
Reel/Frame 059105/0479 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jun 7, 2018
From: QUEST SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046327/0347 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jun 7, 2018
From: QUEST SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046327/0486 →
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS RECORDED AT R/F 040581/0850 Recorded May 22, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC. (F/K/A DELL SOFTWARE INC.); AVENTAIL LLC
Reel/Frame 046211/0735 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE PREVIOUSLY RECORDED AT REEL: 040587 FRAME: 0624. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Nov 28, 2017
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: QUEST SOFTWARE INC. (F/K/A DELL SOFTWARE INC.); AVENTAIL LLC
Reel/Frame 044811/0598 →
CHANGE OF NAME Recorded Sep 13, 2017
From: DELL SOFTWARE INC.
To: QUEST SOFTWARE INC.
Reel/Frame 043834/0852 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Nov 10, 2016
From: DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040587/0624 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Nov 9, 2016
From: DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040581/0850 →
RELEASE OF SECURITY INTEREST Recorded Oct 31, 2016
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: AVENTAIL LLC; DELL PRODUCTS, L.P.; DELL SOFTWARE INC.
Reel/Frame 040521/0467 →
RELEASE OF SECURITY INTEREST IN CERTAIN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040039/0642) Recorded Oct 31, 2016
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.
Reel/Frame 040521/0016 →
SECURITY AGREEMENT Recorded Sep 14, 2016
From: AVENTAIL LLC; DELL PRODUCTS, L.P.; DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040030/0187 →
RELEASE OF REEL 037848 FRAME 0210 (NOTE) Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040031/0725 →
RELEASE OF REEL 038664 FRAME 0908 (NOTE) Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; SECUREWORKS, CORP.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040027/0390 →
RELEASE OF REEL 038665 FRAME 0041 (TL) Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; SECUREWORKS, CORP.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040028/0375 →
SECURITY AGREEMENT Recorded Sep 14, 2016
From: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040039/0642 →
RELEASE OF REEL 037848 FRAME 0001 (TL) Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040028/0152 →
RELEASE OF REEL 037847 FRAME 0843 (ABL) Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040017/0366 →
RELEASE OF REEL 038665 FRAME 0001 (ABL) Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; SECUREWORKS, CORP.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040021/0348 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (NOTES) Recorded May 11, 2016
From: DELL SOFTWARE INC.; WYSE TECHNOLOGY, L.L.C.; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT
Reel/Frame 038664/0908 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (TERM LOAN) Recorded May 11, 2016
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; WYSE TECHNOLOGY, L.L.C.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 038665/0041 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (ABL) Recorded May 11, 2016
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; WYSE TECHNOLOGY, L.L.C.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 038665/0001 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (NOTES) Recorded Feb 18, 2016
From: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 037848/0210 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Feb 18, 2016
From: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037848/0001 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (ABL) Recorded Feb 18, 2016
From: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 037847/0843 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 14, 2016
From: DELL PRODUCTS L.P.
To: DELL SOFTWARE, INC.
Reel/Frame 037492/0312 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 7, 2016
From: STEPANOFF, ALEXANDER GENNADIEVICH; VARTANOV, SERGEY ROMANOVICH; ZALYADEEV, SERGEY EVGENIEVICH
To: DELL PRODUCTS L.P.
Reel/Frame 037429/0435 →