IP Library Granted Patent US 7,577,656
Granted Patent B2
US 7,577,656 · App. 11/410,370 · Granted Aug 18, 2009

System and method for identifying and categorizing messages extracted from archived message stores

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 7,577,656
App. No.
11/410,370
Granted
Aug 18, 2009
Kind
B2
Abstract

A system and method for identifying messages in a message store is provided. At least part of metadata associated with and at least part of content contained in each of a plurality of messages in a message store are encoded by generating a metadata sequence and a content sequence for each message. The messages are grouped into sets by similar metadata sequences and similar content sequences. The messages in each set are compared. Each such message not matching any other such message in the set is marked as a unique message. Each such message matching at least one other such message in the set is marked as an exact duplicate message. Each such message including a subset of at least one other such message in the set is marked as a near duplicate message.

Claims (52)

1. A computer-implemented system for identifying messages in a message store, comprising:

a digester module configured to encode at least part of metadata associated with and at least part of content contained in each of a plurality of messages in a message store by generating a metadata sequence and a content sequence for each message; and

a comparer module configured to group the messages into sets by similar metadata sequences and similar content sequences and to compare the messages in each set, comprising:

a unique marker module configured to mark each such message not matching any other such message in the set as a unique message;

an exact duplicate marker module configured to mark each such message matching at least one other such message in the set as an exact duplicate message; and

a near duplicate marker module configured to mark each such message comprising a subset of at least one other such message in the set as a near duplicate message;

an attachment digester module configured to encode at least part of at least one attachment associated with one or more of the messages by generating an attachment sequence for each attachment;

a concatenator module configured to concatenate the metadata sequence and the content sequence for the message and the attachment sequence for the at least one attachment into a compound sequence;

an attachment comparer module configured to compare the compound sequences for the messages;

an attachment marker module configured to mark each exact duplicate message and each near duplicate message having a compound sequence not matching any other compound sequence in the set as a unique message; and

a processor to execute each of the modules, which are stored on a computer-readable storage medium.

2. A computer-implemented system according to claim 1 , wherein the metadata sequences, the content sequences, and attachment sequences comprise hash code digests respectively formed over the metadata associated with, the content contained in, and the attachments attached to, each message.

3. A computer-implemented method for identifying messages in a message store, comprising:

maintaining a plurality of messages in a message store;

retrieving the messages from the message store and extracting at least part of metadata associated with and at least part of content contained in each of the messages into a memory;

encoding the at least part of metadata associated with and the at least part of content contained in each of the messages by generating a metadata sequence and a content sequence for each message and storing the metadata sequence and content sequence in the memory;

within the memory, grouping the messages into sets by similar metadata sequences and similar content sequences and comparing the messages in each set, comprising:

marking each such message not matching any other such message in the set as a unique message;

marking each such message matching at least one other such message in the set as an exact duplicate message; and

marking each such message comprising a subset of at least one other such message in the set as a near duplicate message;

encoding at least part of at least one attachment associated with one or more of the messages by generating an attachment sequence for each attachment and storing the attachment sequence for each attachment in the memory;

concatenating the metadata sequence and the content sequence for the message and the attachment sequence for the at least one attachment in the memory into a compound sequence;

comparing the compound sequences for the messages in the memory;

within the memory, marking each exact duplicate message and each near duplicate message having a compound sequence not matching any other compound sequence in the set as a unique message; and

outputting the unique, exact duplicate, and near duplicate message markings to the message store.

4. A computer-implemented method according to claim 3 , wherein the metadata sequences, the content sequences, and attachment sequences comprise hash code digests respectively formed over the metadata associated with, the content contained in, and the attachments attached to, each message.

5. A computer-readable storage medium holding code for performing the method according to claim 3 .

6. A set of stored functions for processing a plurality of messages in a message store, comprising:

a metadata digester function module configured to generate a metadata signature over at least part of message metadata;

a content digester function module configured to generate a content signature over at least part of message content;

a comparator function module configured to compare the metadata signatures and the content signatures to identify matches between messages;

a categorizer function module configured to group messages into sets based upon the matches of the metadata signatures and the content signatures;

a marker function module configured to mark messages in each set with classifications corresponding to unique, exact duplicate, and near duplicate, comprising:

a unique marker function module configured to mark each such message not matching any other such message in the set as a unique message;

an exact duplicate marker function module configured to mark each such message matching at least one other such message in the set as an exact duplicate message; and

a near duplicate marker function module configured to mark each such message comprising a subset of at least one other such message in the set as a near duplicate message;

an attachment digester function module configured to generate an attachment signature over at least part of at least one message attachment;

a concatenator function module configured to concatenate the metadata signature and the content signature for the message and the attachment signature for the at least one attachment into a compound signature,

wherein the comparator function module is further configured to compare the compound signatures to identify matches between messages, and the categorizer function module is further configured to group the messages into sets based upon the matches of the compound signatures by marking each exact duplicate message and each near duplicate message having a compound signature not matching any other compound signature in the set as a unique message; and

a processor to execute each of the modules, which are stored on a computer-readable storage medium.

7. A computer-readable storage medium storing code for processing messages, the code comprising:

a structured message store comprising messages, which each comprise:

metadata describing at least part of the message; and

content contained in the message,

wherein one or more of the messages further comprise at least one attachment associated with each of the messages; and

discrimination information for each of the messages, comprising:

a metadata signature for the metadata of the message;

a content signature for the content of each message;

an attachment signature for the at least one attachment of the messages having the at least one attachment; and

a compound signature concatenated from the metadata signature and the content signature for the message and the attachment signature for the at least one attachment,

wherein those messages having metadata signatures matching for only at least part of the metadata and content signatures matching for only at least part of the content of the other messages comprise near duplicate messages, and wherein further those messages having the at least one attachment and having compound signatures not matching the compound signatures of the other messages comprise unique messages.

8. A computer-readable storage medium storing code for processing messages according to claim 7 , wherein those messages having metadata signatures not matching for any of the metadata and content signatures not matching for any of the content of the other messages comprise unique messages.

Assignments (12)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 14, 2019
From: KAWAI, KENJI; MCDONALD, DAVID T
To: ATTENEX CORPORATION
Reel/Frame 050707/0112 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 15, 2018
From: FTI CONSULTING TECHNOLOGY LLC
To: NUIX NORTH AMERICA INC.
Reel/Frame 047237/0019 →
RELEASE OF SECURITY INTEREST IN PATENT RIGHTS AT REEL/FRAME 036031/0637 Recorded Sep 12, 2018
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: FTI CONSULTING TECHNOLOGY LLC
Reel/Frame 047060/0107 →
CHANGE OF NAME Recorded Apr 20, 2018
From: FTI TECHNOLOGY LLC
To: FTI CONSULTING TECHNOLOGY LLC
Reel/Frame 045785/0645 →
RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jun 29, 2015
From: BANK OF AMERICA, N.A.
To: FTI CONSULTING, INC.; FTI CONSULTING TECHNOLOGY LLC
Reel/Frame 036029/0233 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Jun 29, 2015
From: FTI CONSULTING, INC.; FTI CONSULTING TECHNOLOGY LLC; FTI CONSULTING TECHNOLOGY SOFTWARE CORP
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 036031/0637 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Dec 11, 2012
From: BANK OF AMERICA, N.A.
To: FTI CONSULTING, INC.; FTI TECHNOLOGY LLC; ATTENEX CORPORATION
Reel/Frame 029449/0389 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Dec 10, 2012
From: FTI CONSULTING, INC.; FTI CONSULTING TECHNOLOGY LLC
To: BANK OF AMERICA, N.A.
Reel/Frame 029434/0087 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Mar 14, 2011
From: FTI CONSULTING, INC.; FTI TECHNOLOGY LLC; ATTENEX CORPORATION
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 025943/0038 →
RELEASE OF SECURITY INTEREST Recorded Oct 12, 2010
From: BANK OF AMERICA, N.A.
To: FTI TECHNOLOGY LLC
Reel/Frame 025126/0069 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 31, 2010
From: ATTENEX CORPORATION
To: FTI TECHNOLOGY LLC
Reel/Frame 024170/0049 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Oct 1, 2008
From: ATTENEX CORPORATION
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 021603/0622 →