PRIVACY-AWARE QUERY MANAGEMENT SYSTEM
First Claim
1. A method of query optimization, the method being implemented by one or more processors and comprising:
- receiving a query to aggregate data from a plurality of datasets, wherein at least one of the plurality of datasets contains private information for one or more people;
retrieving data from the plurality of datasets, wherein (1) each of the plurality of datasets has associated privacy parameters that determine a level of noise to be applied to query results obtained from that dataset, and (2) the levels of noise are used to determine an order of operations for the query to retrieve the data from the plurality of datasets;
applying the levels of noise to each query result obtained from each of the plurality of datasets in accordance with the privacy parameters associated with that dataset;
computing aggregated data from the query results with the levels of noise applied; and
responding to the query with the aggregated data.
6 Assignments
0 Petitions
Accused Products
Abstract
A privacy-aware query management system receives a query to aggregate data from a number of datasets, wherein at least one of the datasets contains private information for one or more people. The privacy-aware query management system retrieves data from the datasets. Each of the plurality of datasets has associated privacy parameters that determine a level of noise to be applied to query results obtained from that dataset, and the levels of noise are used to determine an order of operations for the query to retrieve the data from the datasets. The privacy-aware query management system applies the levels of noise to each query result obtained from each of the datasets in accordance with the privacy parameters associated with that dataset, computes aggregated data from the query results with the levels of noise applied, and responds to the query with the aggregated data.
-
Citations
20 Claims
-
1. A method of query optimization, the method being implemented by one or more processors and comprising:
-
receiving a query to aggregate data from a plurality of datasets, wherein at least one of the plurality of datasets contains private information for one or more people; retrieving data from the plurality of datasets, wherein (1) each of the plurality of datasets has associated privacy parameters that determine a level of noise to be applied to query results obtained from that dataset, and (2) the levels of noise are used to determine an order of operations for the query to retrieve the data from the plurality of datasets; applying the levels of noise to each query result obtained from each of the plurality of datasets in accordance with the privacy parameters associated with that dataset; computing aggregated data from the query results with the levels of noise applied; and responding to the query with the aggregated data. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A query optimization system comprising:
-
a memory resource to store instructions; one or more processors using the instructions stored in the memory resource to; receive a query to aggregate data from a plurality of datasets, wherein at least one of the plurality of datasets contains private information for one or more people; construct a query plan to retrieve data from the plurality of datasets, wherein (1) each of the plurality of datasets has associated privacy parameters that determine a level of noise to be applied to query results obtained from that dataset, and (2) the query plan is constructed to optimize application of the levels of noise; in response to executing the query plan on the plurality of datasets, apply the levels of noise to each query result obtained from each of the plurality of datasets in accordance with the privacy parameters associated with that dataset; compute aggregated data from the query results with the levels of noise applied; and respond to the query with the aggregated data. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer-readable medium that stores instructions, executable by one or more processors, to cause the one or more processors to:
-
receive a query to aggregate data from a plurality of datasets, wherein at least one of the plurality of datasets contains private information for one or more people; construct a query plan to retrieve data from the plurality of datasets, wherein (1) each of the plurality of datasets has associated privacy parameters that determine a level of noise to be applied to query results obtained from that dataset, and (2) the query plan is constructed to optimize application of the levels of noise; in response to executing the query plan on the plurality of datasets, apply the levels of noise to each query result obtained from each of the plurality of datasets in accordance with the privacy parameters associated with that dataset; compute aggregated data from the query results with the levels of noise applied; and respond to the query with the aggregated data. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification