"subset-data"
*************

* Description

* Usage

* Required Parameters

* Optional Parameters

* Global Parameters

* Example using required parameter


Description
===========

Subsets data using the specified subsetting policy.


Usage
=====

   oci data-safe subsetting-policy subset-data [OPTIONS]


Required Parameters
===================

--subsetting-policy-id [text]

The OCID of the subsetting policy.

--target-credentials [complex type]

This is a complex type whose value must be valid JSON. The value can
be provided as a string on the command line or passed in as a file
using the file://path/to/file syntax.

The "--generate-param-json-input" option can be used to generate an
example of the JSON which must be provided. We recommend storing this
example in a file, modifying it as needed and then passing it back in
via the file:// syntax.


Optional Parameters
===================

--from-json [text]

Provide input to this command as a JSON document from a file using the
file://path-to/file syntax.

The "--generate-full-command-json-input" option can be used to
generate a sample json file to be used with this command option. The
key names are pre-populated and match the command option names
(converted to camelCase format, e.g. compartment-id –> compartmentId),
while the values of the keys need to be populated by the user before
using the sample file as an input to this command. For any command
option that accepts multiple values, the value of the key can be a
JSON array.

Options can still be provided on the command line. If an option exists
in both the JSON document and the command line then the command line
specified value will be used.

For examples on usage of this option, please see our “using CLI with
advanced JSON options” link: https://docs.cloud.oracle.com/iaas/Conte
nt/API/SDKDocs/cliusing.htm#AdvancedJSONOptions

--is-redo-logging-enabled [boolean]

Indicates if redo logging is enabled during a subsetting operation.
Set this attribute to true to enable redo logging. If set as false,
subsetting disables redo logging and flashback logging to purge any
original data from logs. However, in certain circumstances when you
only want to test subsetting, rollback changes, and retry, you could
enable logging and use a flashback database to retrieve the original
data after it has been subsetted. If it’s not provided, the value of
the isRedoLoggingEnabled attribute in the SubsettingPolicy resource is
used.

--is-refresh-stats-enabled [boolean]

Indicates if statistics gathering is enabled. Set this attribute to
false to disable statistics gathering. The subsetting process gathers
statistics on subset database tables after subsetting completes. If
it’s not provided, the value of the isRefreshStatsEnabled attribute in
the SubsettingPolicy resource is used.

--is-rerun [boolean]

Indicates if the request is to rerun the previously failed subsetting
job

--masking [text]

Indicates whether masking should be triggered after successful
subsetting

Accepted values are:

   DISABLED, ENABLED

--max-wait-seconds [integer]

The maximum time to wait for the work request to reach the state
defined by "--wait-for-state". Defaults to 1200 seconds.

--parallel-degree [text]

Specifies options to enable parallel execution when running data
subsetting. Allowed values are ‘NONE’ (no parallelism), ‘DEFAULT’ (the
Oracle Database computes the optimum degree of parallelism) or an
integer value to be used as the degree of parallelism. Parallel
execution helps effectively use multiple CPUs and improve subsetting
performance. Refer to the Oracle Database parallel execution framework
when choosing an explicit degree of parallelism. https://www.oracle.c
om/pls/topic/lookup?ctx=dblatest&en/database/oracle/oracle-database&id
=VLDBG-GUID-3E2AE088-2505-465E-A8B2-AC38813EA355 If it’s not provided,
the value of the parallelDegree attribute in the SubsettingPolicy
resource is used.

--re-run-from-step [text]

Specifies the step from which subsetting needs to be rerun. This param
will be used only when isRerun attribute is true. If
PRE_SUBSETTING_SCRIPT is passed, it will rerun the pre-subsetting
script, followed by subsetting, and then the post-subsetting script.
If POST_SUBSETTING_SCRIPT is passed, it will rerun only the post-
subsetting script. If this field is not set and isRerun is set to
true, then it will default to the last failed step.

Accepted values are:

   POST_SUBSETTING_SCRIPT, PRE_SUBSETTING_SCRIPT

--recompile [text]

Specifies how to recompile invalid objects post data subsetting.
Allowed values are ‘SERIAL’ (recompile in serial), ‘PARALLEL’
(recompile in parallel), ‘NONE’ (do not recompile). If it’s set to
PARALLEL, the value of parallelDegree attribute is used. Use the
built-in UTL_RECOMP package to recompile any remaining invalid objects
after subsetting completes. If it’s not provided, the value of the
recompile attribute in the SubsettingPolicy resource is used.

--tablespace [text]

The tablespace that should be used to create the temporary tables for
data subsetting. If no tablespace is provided, the DEFAULT tablespace
is used.

--target-id [text]

The OCID of the target database to be subsetted. If it’s not provided,
the value of the targetId attribute in the SubsettingPolicy resource
is used

--wait-for-state [text]

This operation asynchronously creates, modifies or deletes a resource
and uses a work request to track the progress of the operation.
Specify this option to perform the action and then wait until the work
request reaches a certain state. Multiple states can be specified,
returning on the first state. For example, "--wait-for-state" ACCEPTED
"--wait-for-state" SUSPENDED would return on whichever lifecycle state
is reached first. If timeout is reached, a return code of 2 is
returned. For any other error, a return code of 1 is returned.

Accepted values are:

   ACCEPTED, CANCELED, CANCELING, FAILED, IN_PROGRESS, SUCCEEDED, SUSPENDED, SUSPENDING

--wait-interval-seconds [integer]

Check every "--wait-interval-seconds" to see whether the work request
has reached the state defined by "--wait-for-state". Defaults to 30
seconds.


Global Parameters
=================

Use "oci --help" for help on global parameters.

"--auth-purpose", "--auth", "--cert-bundle", "--cli-auto-prompt", "--
cli-rc-file", "--config-file", "--connection-timeout", "--debug", "--
defaults-file", "--enable-dual-stack", "--enable-propagation", "--
endpoint", "--federation-endpoint", "--generate-full-command-json-
input", "--generate-param-json-input", "--help", "--latest-version", "
--max-retries", "--no-retry", "--opc-client-request-id", "--opc-
request-id", "--output", "--profile", "--proxy", "--query", "--raw-
output", "--read-timeout", "--realm-specific-endpoint", "--region", "
--release-info", "--request-id", "--version", "-?", "-d", "-h", "-i",
"-v"


Example using required parameter
================================

Copy and paste the following example into a JSON file, replacing the
example parameters with your own.

       oci data-safe subsetting-policy create --generate-param-json-input schema-source > schema-source.json

       oci data-safe subsetting-policy subset-data --generate-param-json-input target-credentials > target-credentials.json

Copy the following CLI commands into a file named example.sh. Run the
command by typing “bash example.sh” and replacing the example
parameters with your own.

Please note this sample will only work in the POSIX-compliant bash-
like shell. You need to set up the OCI configuration and appropriate
security policies before trying the examples.

       export compartment_id=<substitute-value-of-compartment_id> # https://docs.cloud.oracle.com/en-us/iaas/tools/oci-cli/latest/oci_cli_docs/cmdref/data-safe/subsetting-policy/create.html#cmdoption-compartment-id

       subsetting_policy_id=$(oci data-safe subsetting-policy create --compartment-id $compartment_id --schema-source file://schema-source.json --query data.id --raw-output)

       oci data-safe subsetting-policy subset-data --subsetting-policy-id $subsetting_policy_id --target-credentials file://target-credentials.json
