Class DLPDeidentifyText
- java.lang.Object
-
- org.apache.beam.sdk.transforms.PTransform<org.apache.beam.sdk.values.PCollection<org.apache.beam.sdk.values.KV<java.lang.String,java.lang.String>>,org.apache.beam.sdk.values.PCollection<org.apache.beam.sdk.values.KV<java.lang.String,com.google.privacy.dlp.v2.DeidentifyContentResponse>>>
-
- org.apache.beam.sdk.extensions.ml.DLPDeidentifyText
-
- All Implemented Interfaces:
java.io.Serializable,org.apache.beam.sdk.transforms.display.HasDisplayData
public abstract class DLPDeidentifyText extends org.apache.beam.sdk.transforms.PTransform<org.apache.beam.sdk.values.PCollection<org.apache.beam.sdk.values.KV<java.lang.String,java.lang.String>>,org.apache.beam.sdk.values.PCollection<org.apache.beam.sdk.values.KV<java.lang.String,com.google.privacy.dlp.v2.DeidentifyContentResponse>>>APTransformconnecting to Cloud DLP (https://cloud.google.com/dlp/docs/libraries) and deidentifying text according to provided settings. The transform supports both columnar delimited input data (eg. CSV) and unstructured input.If the headerColumns property is set and a sideinput with table headers is added to the PTransform, delimiter also should be set, else the results will be incorrect. If headerColumns is neither set nor passed as side input, input is assumed to be unstructured.
Either deidentifyTemplateName (String) or deidentifyConfig
DeidentifyConfigneed to be set. inspectTemplateName and inspectConfig (InspectConfigare optional.Batch size defines how big are batches sent to DLP at once in bytes.
The transform consumes
KVofStrings (assumed to be filename as key and contents as value) and outputsKVofString(eg. filename) andDeidentifyContentResponse, which will containTableof results for the user to consume.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classDLPDeidentifyText.Builder
-
Field Summary
Fields Modifier and Type Field Description static java.lang.IntegerDLP_PAYLOAD_LIMIT_BYTES
-
Constructor Summary
Constructors Constructor Description DLPDeidentifyText()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description org.apache.beam.sdk.values.PCollection<org.apache.beam.sdk.values.KV<java.lang.String,com.google.privacy.dlp.v2.DeidentifyContentResponse>>expand(org.apache.beam.sdk.values.PCollection<org.apache.beam.sdk.values.KV<java.lang.String,java.lang.String>> input)The transform converts the contents of input PCollection intoTable.Rows and then calls Cloud DLP service to perform the deidentification according to provided settings.abstract intgetBatchSizeBytes()Returns size of input elements batch to be sent to Cloud DLP service in one request.abstract @Nullable java.lang.StringgetColumnDelimiter()Returns delimiter to be used when splitting values from input strings into columns.abstract @Nullable com.google.privacy.dlp.v2.DeidentifyConfiggetDeidentifyConfig()Returns configuration object for deidentification.abstract @Nullable java.lang.StringgetDeidentifyTemplateName()Returns template name for data deidentification.abstract @Nullable org.apache.beam.sdk.values.PCollectionView<java.util.List<java.lang.String>>getHeaderColumns()Returns list of column names if the input KV value is a delimited row.abstract @Nullable com.google.privacy.dlp.v2.InspectConfiggetInspectConfig()Returns configuration object for data inspection.abstract @Nullable java.lang.StringgetInspectTemplateName()Returns template name for data inspection.abstract java.lang.StringgetProjectId()Returns ID of Google Cloud project to be used when deidentifying data.static DLPDeidentifyText.BuildernewBuilder()-
Methods inherited from class org.apache.beam.sdk.transforms.PTransform
addAnnotation, compose, compose, getAdditionalInputs, getAnnotations, getDefaultOutputCoder, getDefaultOutputCoder, getDefaultOutputCoder, getKindString, getName, getResourceHints, populateDisplayData, setDisplayData, setResourceHints, toString, validate, validate
-
-
-
-
Method Detail
-
getInspectTemplateName
public abstract @Nullable java.lang.String getInspectTemplateName()
Returns template name for data inspection.
-
getDeidentifyTemplateName
public abstract @Nullable java.lang.String getDeidentifyTemplateName()
Returns template name for data deidentification.
-
getInspectConfig
public abstract @Nullable com.google.privacy.dlp.v2.InspectConfig getInspectConfig()
Returns configuration object for data inspection. If present, supersedes the template settings.
-
getDeidentifyConfig
public abstract @Nullable com.google.privacy.dlp.v2.DeidentifyConfig getDeidentifyConfig()
Returns configuration object for deidentification. If present, supersedes the template.
-
getHeaderColumns
public abstract @Nullable org.apache.beam.sdk.values.PCollectionView<java.util.List<java.lang.String>> getHeaderColumns()
Returns list of column names if the input KV value is a delimited row.
-
getColumnDelimiter
public abstract @Nullable java.lang.String getColumnDelimiter()
Returns delimiter to be used when splitting values from input strings into columns.
-
getBatchSizeBytes
public abstract int getBatchSizeBytes()
Returns size of input elements batch to be sent to Cloud DLP service in one request.
-
getProjectId
public abstract java.lang.String getProjectId()
Returns ID of Google Cloud project to be used when deidentifying data.
-
newBuilder
public static DLPDeidentifyText.Builder newBuilder()
-
expand
public org.apache.beam.sdk.values.PCollection<org.apache.beam.sdk.values.KV<java.lang.String,com.google.privacy.dlp.v2.DeidentifyContentResponse>> expand(org.apache.beam.sdk.values.PCollection<org.apache.beam.sdk.values.KV<java.lang.String,java.lang.String>> input)
The transform converts the contents of input PCollection intoTable.Rows and then calls Cloud DLP service to perform the deidentification according to provided settings.- Specified by:
expandin classorg.apache.beam.sdk.transforms.PTransform<org.apache.beam.sdk.values.PCollection<org.apache.beam.sdk.values.KV<java.lang.String,java.lang.String>>,org.apache.beam.sdk.values.PCollection<org.apache.beam.sdk.values.KV<java.lang.String,com.google.privacy.dlp.v2.DeidentifyContentResponse>>>- Parameters:
input- input PCollection- Returns:
- PCollection after transformations
-
-