IP Library Granted Patent US 11,036,800
Granted Patent B1
US 11,036,800 · App. 15/141,868 · Granted Jun 15, 2021

Systems and methods for clustering data to improve data analytics

Inventors: Ashwin Kayyoor (Sunnyvale, CA); Henry Aloysius (San Jose, CA); Bashyam Tca (Saratoga, CA)
Assignee: Veritas Technologies LLC
G06F16/9024G06F16/287H04L51/32
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 11,036,800
App. No.
15/141,868
Granted
Jun 15, 2021
Kind
B1
Abstract

A computer-implemented method for clustering data to improve data analytics may include (1) extracting a social graph from a data set of messages, the social graph indicating messages as edges such that nodes of the edges indicate corresponding senders and recipients in sender-recipient relationships, (2) detecting communities of collaborators by identifying clusters of nodes within the social graph, (3) applying the identified clusters of nodes within the social graph to a grouping calculation to group the messages of the data set into groups of messages, and (4) providing, through a computing interface, results of a data analytics operation to an end user based at least in part on applying the identified clusters of nodes within the social graph to the grouping calculation. Various other methods, systems, and computer-readable media are also disclosed.

Claims (54)

1. A computer-implemented method for clustering data to improve data analytics, at least a portion of the method being performed by a computing device comprising at least one processor, the method comprising:

extracting a social graph from a data set of messages, the social graph indicating messages as edges within the social graph such that nodes of the edges indicate corresponding senders and recipients in sender-recipient relationships;

detecting communities of collaborators by identifying clusters of nodes within the social graph by minimizing a number of edges that cross between the clusters by performing a smart user replication operation to replicate a user between clusters such that there are no edges that cross between different clusters;

applying the identified clusters of nodes within the social graph to a grouping calculation to group the messages of the data set into groups of messages at least in part by creating, for each respective one of the identified clusters of nodes within the social graph, a respective group of messages by adding each message that identifies two separate users from the respective one of the identified clusters in at least one address field of the message to the respective group of messages;

providing, through a computing interface, results of a data analytics operation to an end user based at least in part on applying the identified clusters of nodes within the social graph to the grouping calculation to group the messages of the data set into the groups of messages;

wherein:

the method further comprises decoupling a user plane from a data plane;

the user plane includes meta-data indicating sender-recipient relationships; and

the data plane includes actual underlying content of the messages.

2. The computer-implemented method of claim 1 , wherein performing the method improves an efficiency of data clustering according to the Davies-Bouldin index in comparison to another clustering system.

3. The computer-implemented method of claim 2 , wherein performing the method improves the efficiency of data clustering according to the Davies-Bouldin index in comparison to CLUTO.

4. The computer-implemented method of claim 1 , wherein creating each respective group of messages is performed based on an analysis of just address field values for the messages rather than an analysis of bodies of the messages.

5. The computer-implemented method of claim 1 , wherein the method operates as a single pass algorithm rather than an iterative clustering algorithm.

6. The computer-implemented method of claim 1 , wherein the data analytics operation identifies the top N closest collaborators to a specified user where N is an arbitrary natural number.

7. The method of claim 1 , wherein the data analytics operation comprises an e-discovery operation.

8. The method of claim 1 , the data analytics operation comprises a digital forensics operation.

9. The method of claim 8 , wherein the data analytics operation further comprises an e-discovery operation.

10. The method of claim 1 , wherein the data analytics operation comprises a data retention operation.

11. A system for clustering data to improve data analytics, the system comprising:

an extraction module, stored in memory, that extracts a social graph from a data set of messages, the social graph indicating messages as edges within the social graph such that nodes of the edges indicate corresponding senders and recipients in sender-recipient relationships;

a detection module, stored in memory, that detects communities of collaborators by identifying clusters of nodes within the social graph by minimizing a number of edges that cross between the clusters by performing a smart user replication operation to replicate a user between clusters such that there are no edges that cross between different clusters;

an application module, stored in memory, that applies the identified clusters of nodes within the social graph to a grouping calculation to group the messages of the data set into groups of messages at least in part by creating, for each respective one of the identified clusters of nodes within the social graph, a respective group of messages by adding each message that identifies two separate users from the respective one of the identified clusters in at least one address field of the message to the respective group of messages;

a provisioning module, stored in memory, that provides, through a computing interface, results of a data analytics operation to an end user based at least in part on applying the identified clusters of nodes within the social graph to the grouping calculation to group the messages of the data set into the groups of messages;

at least one physical processor configured to execute the extraction module, the detection module, the application module, and the provisioning module;

wherein:

the extraction module further decouples a user plane from a data plane;

the user plane includes meta-data indicating sender-recipient relationships; and

the data plane includes actual underlying content of the messages.

12. The system of claim 11 , wherein the messages comprise at least one of:

emails;

email attachments.

13. The system of claim 11 , wherein the data analytics operation comprises at least one of:

an e-discovery operation;

a digital forensics operation;

a data retention operation.

14. The system of claim 13 , wherein the data analytics operation comprises the e-discovery operation.

15. The system of claim 13 , wherein the data analytics operation comprises the digital forensics operation.

16. The system of claim 13 , wherein the data analytics operation comprises the data retention operation.

17. The system of claim 11 , wherein the extraction module extracts the social graph based on a value in at least one of the following fields:

a sender address field in a message in the messages;

a recipient address field in the message in the messages;

a carbon copy address field in the message in the messages;

a blind carbon copy address field in the message in the messages.

18. The system of claim 11 , wherein the identified clusters of nodes within the social graph indicate separate departments within an enterprise organization such that members of a department tend to message other members within the same department rather than a different department according to a statistical measurement.

19. The system of claim 18 , wherein the data analytics operation discovers departments within the enterprise organization that were previously unknown to the system performing the data analytics operation.

20. A non-transitory computer-readable medium comprising one or more computer-readable instructions that, when executed by at least one processor of a computing device, cause the computing device to:

extract a social graph from a data set of messages, the social graph indicating messages as edges within the social graph such that nodes of the edges indicate corresponding senders and recipients in sender-recipient relationships;

detect communities of collaborators by identifying clusters of nodes within the social graph by minimizing a number of edges that cross between the clusters by performing a smart user replication operation to replicate a user between clusters such that there are no edges that cross between different clusters;

apply the identified clusters of nodes within the social graph to a grouping calculation to group the messages of the data set into groups of messages at least in part by creating, for each respective one of the identified clusters of nodes within the social graph, a respective group of messages, by adding each message that identifies two separate users from the respective one of the identified clusters in at least one address field of the message to the respective group of messages;

provide, through a computing interface, results of a data analytics operation to an end user based at least in part on applying the identified clusters of nodes within the social graph to the grouping calculation to group the messages of the data set into the groups of messages;

wherein:

the instructions cause the computing device to decouple a user plane from a data plane;

the user plane includes meta-data indicating sender-recipient relationships; and

the data plane includes actual underlying content of the messages.

Assignments (14)
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY DATA AND CORRECT THE PATENT NUMBERS PREVIOUSLY RECORDED AT REEL: 69548 FRAME: 468. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Feb 4, 2026
From: VERITAS TECHNOLOGIES LLC
To: ARCTERA US LLC
Reel/Frame 074876/0584 →
SECURITY INTEREST Recorded Dec 12, 2025
From: ARCTERA US LLC
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 073951/0470 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 070530/0497 Recorded Dec 1, 2025
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: ARCTERA US LLC
Reel/Frame 073833/0730 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 069585/0150 Recorded Dec 1, 2025
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: ARCTERA US LLC
Reel/Frame 073833/0848 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069634/0584 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069632/0613 →
SECURITY INTEREST Recorded Dec 10, 2024
From: ARCTERA US LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 069563/0243 →
PATENT SECURITY AGREEMENT Recorded Dec 10, 2024
From: ARCTERA US LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 069585/0150 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC
To: ARCTERA US LLC
Reel/Frame 069548/0468 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS AT R/F 052426/0001 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 054535/0565 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
PATENT SECURITY AGREEMENT SUPPLEMENT Recorded Apr 16, 2020
From: VERITAS TECHNOLOGIES, LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 052426/0001 →
PATENT SECURITY AGREEMENT Recorded Nov 23, 2016
From: VERITAS TECHNOLOGIES LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 040679/0466 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 9, 2016
From: KAYYOOR, ASHWIN; ALOYSIUS, HENRY; TCA, BASHYAM
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 038511/0275 →
Cited By (86)
US 12,206,696 US 12,244,621 US 12,267,345 US 12,309,185 US 12,323,449 US 12,335,286 US 12,335,348 US 12,341,797 US 12,348,545 US 12,355,626 US 12,355,787 US 12,355,793 US 12,363,148 US 12,368,745 US 12,368,746 US 12,368,747 US 12,375,573 US 12,395,573 US 12,401,669 US 12,405,849 US 12,407,701 US 12,407,702 US 12,418,552 US 12,418,555 US 12,425,428 US 12,425,430 US 12,445,474 US 12,452,279 US 12,457,231 US 12,463,995 US 12,463,996 US 12,463,997 US 12,464,003 US 12,470,577 US 12,470,578 US 12,483,576 US 12,489,770 US 12,495,052 US 12,500,910 US 12,500,911 US 12,500,912 US 12,505,126 US 12,506,762 US 12,513,221 US 12,537,836 US 12,537,837 US 12,537,839 US 12,537,840 US 12,537,884 US 12,549,575 US 12,549,577 US 12,556,548 US 12,556,559 US 12,563,060 US 12,563,064 US 12,563,071 US 12,563,072 US 12,580,934 US 12,580,935 US 12,580,936 US 12,580,937 US 12,587,553 US 12,592,950 US 12,598,205 US 12,613,930 US 12,615,271 US 12,621,324 US 12,621,329 US 12,627,686 US 12,627,687 US 12,627,690 US 12,634,312 US 12,634,376 US 12,652,302 US 12,659,325 US 12,659,326 US 12,659,327 US 12,659,333 US 12,676,874 US 12,689,638 US 12,689,640 US 12,695,768 US 12,706,932 US 12,706,933 US 12,712,897 US 12,719,896