Data discovery of personal data in relational databases

US11762833B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11762833-B2
Application numberUS-202217705836-A
CountryUS
Kind codeB2
Filing dateMar 28, 2022
Priority dateJun 22, 2018
Publication dateSep 19, 2023
Grant dateSep 19, 2023

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Described herein is a system that processes personal data in databases. The system samples data stored in columns of data tables and analyzes the sampled data to determine whether the sampled data includes personal data. Based on the analysis, the system marks which data tables and which columns of the data tables store personal data. The system receives a request to process personal data for a subject. From data tables that are marked as storing personal data, the system identifies records storing personal data for the subject. The system additionally identifies other data tables marked as storing personal data that reference or are referenced by the data tables including the records referencing the subject. The system processes the data stored in the columns that are marked as storing personal data.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for processing personal data from a plurality of data tables, each data table having columns of attributes and rows of records, the method comprising: generating a sample of data representing data contained in a column of a first data table; analyzing the sample of data to identify personal data; based on analyzing the sample of data, marking the first data table as containing the personal data; receiving a request to generate a record of personal data of a subject, the record of personal data corresponding to one of known types of personal data of the subject; determining that the column of the first data table contains the one of known types of personal data of the subject and that the column of the first data table contains a first key that references a second data table that is marked as containing the personal data; identifying a second key in a third data table that references the column of the first data table, the third data table being marked as containing the personal data; and in response to the request, generating the record of personal data of the subject based on data in the first data table, the second data table, and the third data table. 2. The method of claim 1 , wherein analyzing the sample of data to identify the personal data comprises: determining whether the sample of data matches a list of known types of personal data. 3. The method of claim 2 , wherein the list of the known types of personal data includes at least one of a name, personal identity information, a physical address, an email address, a phone number, financial information, investment information, medical information, a social networking post, an IP address, a MAC address, a domain name, or a device identifier. 4. The method of claim 2 , wherein determining whether the sample of data matches the list of the known types of personal data comprises: responsive to determining that the sample of data matches one of a dictionary of text strings, determining that the sample of data includes personal data; responsive to determining that a format of the sample of data matches one of a list of formats, determining that the sample of data includes personal data; and responsive to determining that the sample of data matches data of columns determined to contain personal data, determining that the sample of data includes personal data. 5. The method of claim 2 , wherein determining whether the sample of data matches the list of the known types of personal data comprises: generating an estimate of probability that the sample of data matches one of the list of the known types of personal data. 6. The method of claim 1 , wherein marking the first data table as containing the personal data is performed separate from responding to the received request. 7. The method of claim 1 , further comprising: determining a matching score that is greater than a threshold value based on the sample of the data. 8. The method of claim 1 , further comprising: determining a second set of data tables referenced by the first data table; determining a second set of rows in the second set of data tables, the second set of rows being referenced by a first set of rows in the first data table; and processing the data associated with the second set of rows in columns that are marked as containing personal data. 9. The method of claim 1 , further comprising: determining a second set of data tables referenced by the first data table; determining a second set of rows in the second set of data tables that reference the subject; and processing the data associated with the second set of rows in columns that are marked as containing personal data. 10. The method of claim 9 , further comprising: determining a third set of rows in the first data table, the third set of rows referencing the second set of rows in the second set of data tables; and processing the data associated with the third set of rows in columns that are marked as containing personal data. 11. The method of claim 1 , further comprising: determining a second set of data tables that reference the first data table; determining a second set of rows in the second set of data tables, the second set of rows referencing a first set of rows in the first data table; and processing the data associated with the second set of rows in columns that are marked as containing personal data. 12. The method of claim 1 , further comprising: determining a second set of data tables that reference the first data table; determining a second set of rows in the second set of data tables that reference the subject; and processing the data associated with the second set of rows in columns that are marked as containing personal data. 13. The method of claim 12 , further comprising: determining a third set of rows in the first data table, the third set of rows being referenced by the second set of rows; and processing the data associated with the third set of rows in columns that are marked as containing personal data. 14. The method of claim 1 , further comprising: constructing a graph representing relationships among the plurality of data tables that are associated with the personal data; and traversing the graph to expand processing of data from the first data table to tables that reference or are referenced by the first data table. 15. The method of claim 1 , further comprising: removing the data from the column that are marked as containing personal data. 16. The method of claim 1 , wherein processing the data comprises producing the data from the columns that are marked as containing personal data. 17. A system for processing personal data from a plurality of data tables, each table having columns of attributes and rows of records, the system comprising: one or more processors; and memory to store instructions that, when executed by the one or more processors perform operations comprising: generating a sample of data representing data contained in a column of a first data table; analyzing the sample of data to identify personal data; based on analyzing the sample of data, marking the first data table as containing the personal data; receiving a request to generate a record of personal data of a subject, the record of personal data corresponding to one of known types of personal data of the subject; determining that the column of the first data table contains the one of known types of personal data of the subject and that the column of the first data table contains a first key that references a second data table that is marked as containing the personal data; identifying a second key in a third data table that references the column of the first data table, the third data table being marked as containing the personal data; and in response to the request, generating the record of personal data of the subject based on data in the first data table, the second data table, and the third data table. 18. The system of claim 17 , the operations further comprising: determining whether the sample of data matches a list of known types of personal data. 19. The system of claim 17 , the operations further comprising: determining a matching score that is greater than a threshold value based on the sample of the data. 20. A non-transitory computer-readable medium storing instructions for processing personal data from a plurality of data tables, each data table having columns of attributes and rows of records, the instructions executable by a processor

Assignees

Inventors

Classifications

  • G06F16/285Primary

    Clustering or classification · CPC title

  • Tablespace storage structures; Management thereof · CPC title

  • with adaptation to user needs · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11762833B2 cover?
Described herein is a system that processes personal data in databases. The system samples data stored in columns of data tables and analyzes the sampled data to determine whether the sampled data includes personal data. Based on the analysis, the system marks which data tables and which columns of the data tables store personal data. The system receives a request to process personal data for a…
Who is the assignee on this patent?
Rubrik Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/285. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 19 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 5 related publications on this page (citations in our corpus or others sharing the same primary CPC).