abstract class DFMetricCalculator extends AnyRef
Basic DF metric calculator
- Note
DF Calculators are intendet to work with Batch applications only. Hence, their functionality may be revised in future to support streaming applications as well.
- Alphabetic
- By Inheritance
- DFMetricCalculator
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new DFMetricCalculator()
Abstract Value Members
- abstract val columns: Seq[String]
-
abstract
val
emptyValue: Column
Value which is returned when metric result is null.
Value which is returned when metric result is null.
- Attributes
- protected
-
abstract
def
errorConditionExpr(implicit colTypes: Map[String, DataType]): Column
Spark expression yielding boolean result for processed row.
Spark expression yielding boolean result for processed row. Indicates whether metric increment failed or not. Usually checks the outcome of
resultExpr
.- colTypes
Map of column names to their datatype.
- returns
Spark row-level expression yielding boolean result.
- Attributes
- protected
-
abstract
def
errorMessage: String
Error message that will be returned when metric increment fails.
Error message that will be returned when metric increment fails.
- returns
Metric increment failure message.
-
abstract
val
metricId: String
Unlike RDD calculators, DF calculators are not groped by its type.
Unlike RDD calculators, DF calculators are not groped by its type. For each metric defined in DQ job, there will be created its own instance of DF calculator. Thus, DF metric calculators can be linked to metric definitions by metricId.
- abstract val metricName: MetricName
-
abstract
val
resultAggregateFunction: (Column) ⇒ Column
Function that aggregates metric increments into final metric value.
Function that aggregates metric increments into final metric value. Accepts spark expression
resultExpr
as input and returns another spark expression that will yield aggregated double metric result.- Attributes
- protected
-
abstract
def
resultExpr(implicit colTypes: Map[String, DataType]): Column
Spark expression yielding numeric result for processed row.
Spark expression yielding numeric result for processed row. Metric will be incremented with this result using associated aggregation function.
- colTypes
Map of column names to their datatype.
- returns
Spark row-level expression yielding numeric result.
- Attributes
- protected
- Note
Spark expression MUST process single row but not aggregate multiple rows.
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
errorExpr(rowData: Column)(implicit colTypes: Map[String, DataType]): Column
Error collection expression: collects row data in case of metric error.
Error collection expression: collects row data in case of metric error.
- rowData
Array of row data from columns related to this metric calculator (source keyFields + metric columns + window start time column for streaming applications)
- colTypes
Map of column names to their datatype.
- returns
Spark expression that will yield row data in case of metric error.
- Attributes
- protected
-
def
errors(implicit errorDumpSize: Int, keyFields: Seq[String], colTypes: Map[String, DataType]): Column
Final metric errors aggregation expression.
Final metric errors aggregation expression. Collects all metric errors into an array column. The size of array is limited by maximum allowed error dump size parameter.
- errorDumpSize
Maximum allowed number of errors to be collected per single metric.
- keyFields
Sequence of source/stream key fields.
- colTypes
Map of column names to their datatype.
- returns
Spark expression that will yield array of metric errors.
-
val
errorsCol: String
Name of the column that will store metric errors
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
result(implicit colTypes: Map[String, DataType]): Column
Final metric aggregation expression that MUST yield double value.
Final metric aggregation expression that MUST yield double value.
- colTypes
Map of column names to their datatype.
- returns
Spark expression that will yield double metric calculator result
-
val
resultCol: String
Name of the column that will store metric result
-
def
rowDataExpr(keyFields: Seq[String]): Column
Row data collection expression: collects values of selected columns to array for row where metric error occurred.
Row data collection expression: collects values of selected columns to array for row where metric error occurred.
- keyFields
Sequence of source/stream key fields.
- returns
Spark expression that will yield array of row data for column related to this metric calculator.
- Attributes
- protected
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()