# US 9,519,696 B1 · Data transformation policies

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 9,519,696 B1
- Document ID: US9519696B1
- Status: Granted
- Kind: B1
- Application number: 14/149,702
- Filed: 2014-01-07
- Granted: 2016-12-13
- Earliest claimed: 2014-01-07
- Assignees: Amazon Technologies, Inc.
- Applicants: Amazon Technologies, Inc.
- Inventors: Gregory Branchek Roth; Eric Jason Brandwine
- Web page: https://patentgrep.com/patent/US9519696B1

## CPC

- G06F 16/258: {Data format conversion from or to a database}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Data transformation policies specify conditions based at least in part on request features. When a request is received, features of the received request are used to determine any data transformation policies applicable to the request. When a data transformation policy applies to the request, a corresponding data transformation is applied to data responsive to the request. A response to the request comprising transformed data is provided.

## Claims

### Claim 1

A computer-implemented method, comprising:
under the control of one or more computer systems that operate in accordance with executable instructions,
receiving, from a customer of a computing resource service provider, a first request whose fulfillment includes activating a data transformation policy that specifies one or more data transformations and one or more conditions that, when fulfilled, cause the one or more data transformations to be applied, the data transformation policy associated with a logical data container maintained by a data storage service, the data storage service being a distributed computing system, the one or more conditions based at least in part on first request features;
fulfilling the first request by at least activating the data transformation policy;
receiving a second request whose fulfillment involves retrieval of data;
determining, based at least in part on one or more features of the second request, a set of policies that includes the activated data transformation policy, the activated data transformation policy determined as a result of an association of the activated data transformation policy with a logical data container in which the data is stored, the logical data container being a resource provided by the data storage service for storage of data objects; and
as a result of the activated data transformation policy being applicable to the second request, performing the specified one or more data transformations on the data as part of fulfilling the second request.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein the one or more features of the second request include at least one of: a source network address of the second request; a geographic location corresponding to the source network address of the second request; a network corresponding to the source network address of the second request; information indicating an authenticated principal corresponding to the second request; a time of the second request; or a destination network address of the second request.

### Claim 3 (depends on 1)

The computer-implemented method of claim 1, wherein the one or more transformations include at least one of: encrypting some or all of the data; replacing some or all of the data with other data; supplementing the data with additional data; deletion of a portion of the data; or persisting information based at least in part on the data to a data storage system.

### Claim 4 (depends on 1)

The computer-implemented method of claim 1, wherein determining the set of policies that includes the activated policy is further based at least in part on one or more features of the data.

### Claim 5 (depends on 4)

The computer-implemented method of claim 4, wherein the one or more features of the data include at least one of: a tag associated with the data; a measurement of a size of the data; a type of data included in the data; or a compliance regime associated with the data.

### Claim 6 (depends on 1)

The computer-implemented method of claim 1, wherein:
the method further comprises providing an interface usable by the customer to define the policy; and
the first request is received through the provided interface.

### Claim 7

A system, comprising a collection of computing devices collectively providing a service that:
receives at least one indicator of a data transformation policy, thereby resulting in a set of specified data transformation policies;
receives a request;
as a result of receiving the request, generates a response to the request that comprises data responsive to the request;
determines, during fulfillment of the request and based at least in part on one or more features of the request and at least in part on an association of a logical data container in which the data responsive to the request is stored, one or more data transformation policies, of the set of specified data transformation policies, applicable to the request, wherein the logical data container is a resource provided by a data storage service for storage of data objects;
generates a transformed response by at least applying, to the data, one or more data transformations specified by the determined one or more data transformation policies; and
provide the transformed response.

### Claim 8 (depends on 7)

The system of claim 7, wherein:
the service provides an interface through which indicators of data transformation policies, including at least one data transformation policy, are definable by customers of the service;
the data responsive to the request comprises data of a customer of the service; and
the at least one indicator was received, from the customer, through the interface.

### Claim 9 (depends on 7)

The system of claim 7, wherein the one or more data transformations are reversible.

### Claim 10 (depends on 7)

The system of claim 7, wherein:
a first data transformation policy of the one or more data transformation policies is associated with a logical data container in which the data responsive to the request is stored; and
the first data transformation policy is determined to apply to the request as a result of being associated with the logical data container.

### Claim 11 (depends on 7)

The system of claim 7, wherein the one or more data transformation policies applicable to the request are determined further based at least in part on one or more features of the data responsive to the request.

### Claim 12 (depends on 7)

The system of claim 7, wherein the generated transformed response includes at least some of the data responsive to the request in an unaltered state.

### Claim 13 (depends on 7)

The system of claim 7, wherein:
a first data transformation policy of the one or more data transformation policies specifies a condition for management of data; and
determining the one or more data transformation policies includes determining, during fulfillment of the request, at least one of the one or more data transformations that complies with the specified condition.

### Claim 14

A non-transitory computer-readable storage medium having collectively stored thereon executable instructions that, when executed by one or more processors of a computer system, cause the computer system to at least:
obtain data responsive to a received request;
determine, based at least in part on one or more features of the received request, one or more data transformation policies applicable to the request, the data transformation policies associated with a logical data container maintained by a data storage service, the data storage service being a distributed computing system, wherein at least one of the one or more data transformation policies is determined as a result of an association of the at least one of the data transformation policies with the logical data container, the logical data container being a resource provided by the data storage service for storage of data objects;
generate transformed data by at least applying, to the obtained data, one or more data transformations specified by the determined one or more data transformation policies;
generate a response to the request that comprises the generated transformed data; and
provide the generated response.

### Claim 15 (depends on 14)

The non-transitory computer-readable storage medium of claim 14, wherein the one or more features of the request include a geographic location from which the request was transmitted.

### Claim 16 (depends on 14)

The non-transitory computer-readable storage medium of claim 14, wherein the instructions that cause the computer system to determine the one or more data transformation policies, further cause the computer system to determine the one or more data transformation policies based at least in part on one or more features of the obtained data.

### Claim 17 (depends on 14)

The non-transitory computer-readable storage medium of claim 14, wherein the one or more data transformations include redaction of at least a portion of the data.

### Claim 18 (depends on 14)

The non-transitory computer-readable storage medium of claim 14, wherein:
the computer system is a component of a service of a service provider; and
at least one of the one or more data transformation policies are specified by a customer of the service provider for which the data is obtained.

### Claim 19 (depends on 14)

The non-transitory computer-readable storage medium of claim 14, wherein at least one of the one or more data transformations includes an irreversible data transformation.

### Claim 20 (depends on 14)

The non-transitory computer-readable storage medium of claim 14, wherein the data storage service is an on-demand data storage service.
