Packages

package datamasking

Type Members

  1. case class DataMaskingStage0Marker(child: LogicalPlan, scan: LogicalPlan) extends LogicalPlan with UnaryNode with WithInternalChild with Product with Serializable
  2. case class DataMaskingStage1Marker(child: LogicalPlan) extends LogicalPlan with UnaryNode with WithInternalChild with Product with Serializable
  3. case class RuleApplyDataMaskingStage0(spark: SparkSession) extends Rule[LogicalPlan] with RuleHelper with Product with Serializable

    The full data masking rule contains two separate stages.

    The full data masking rule contains two separate stages.

    Step1: RuleApplyDataMaskingStage0

    • lookup the full plan for supported scans
    • once found, get masker configuration from external column by column
    • use spark sql parser to generate an unresolved expression for each masker
    • add a projection with new output on the right top of the original scan if the output has changed
    • Add DataMaskingStage0Marker to track the original expression and its masker expression.

    Step2: Spark native rules will resolve our newly added maskers

    Step3: RuleApplyDataMaskingStage1

  4. case class RuleApplyDataMaskingStage1(spark: SparkSession) extends Rule[LogicalPlan] with RuleHelper with Product with Serializable

    See RuleApplyDataMaskingStage0 also.

    See RuleApplyDataMaskingStage0 also.

    This is the second step for data masking. It will fulfill the missing attributes that have a related masker expression buffered by DataMaskingStage0Marker.

Ungrouped