Operation is described by a name and parameters (that are simply used to create a CommitInfo for
OptimisticTransactionImpl when committed and, as a way to bypass a transaction, ConvertToDeltaCommand).
Operation may have performance metrics.
parameters: Map[String, Any]
Operation is requested for parameters with the values in JSON format
Sealed Abstract Class
Operation is a Scala sealed abstract class which means that all of the implementations are in the same compilation unit (a single file).
- AlterTableSetPropertiesDeltaCommand is executed
DeltaSinkis requested to addBatch
Recorded when a merge operation is committed to a Delta table (when MergeIntoCommand is executed)
Operation takes the following to be created:
- Name of this operation
Operation is an abstract class and cannot be created directly. It is created indirectly for the concrete Operations.
Serializing Parameter Values (to JSON Format)¶
jsonEncodedValues: Map[String, String]
jsonEncodedValues converts the values of the parameters to JSON format.
jsonEncodedValues is used when:
OptimisticTransactionImplis requested to commit
ConvertToDeltaCommandcommand is requested to streamWrite
operationMetrics is empty by default (and is expected to be overriden by concrete operations)
operationMetrics is used when
Operation is requested to transformMetrics.
Transforming Performance Metrics¶
transformMetrics( metrics: Map[String, SQLMetric]): Map[String, String]
transformMetrics is used when:
SQLMetricsReportingis requested for operation metrics