Assert
Last updated
Last updated
Assert sink connector
A flink sink plugin which can assert illegal data by user defined rules
rules
ConfigMap
yes
-
rules.field_rules
string
yes
-
rules.field_rules.field_name
string|ConfigMap
yes
-
rules.field_rules.field_type
string
no
-
rules.field_rules.field_value
ConfigList
no
-
rules.field_rules.field_value.rule_type
string
no
-
rules.field_rules.field_value.rule_value
numeric
no
-
rules.field_rules.field_value.equals_to
boolean|numeric|string|ConfigList|ConfigMap
no
-
rules.row_rules
string
yes
-
rules.row_rules.rule_type
string
no
-
rules.row_rules.rule_value
string
no
-
rules.catalog_table_rule
ConfigMap
no
-
rules.catalog_table_rule.primary_key_rule
ConfigMap
no
-
rules.catalog_table_rule.primary_key_rule.primary_key_name
string
no
-
rules.catalog_table_rule.primary_key_rule.primary_key_columns
ConfigList
no
-
rules.catalog_table_rule.constraint_key_rule
ConfigList
no
-
rules.catalog_table_rule.constraint_key_rule.constraint_key_name
string
no
-
rules.catalog_table_rule.constraint_key_rule.constraint_key_type
string
no
-
rules.catalog_table_rule.constraint_key_rule.constraint_key_columns
ConfigList
no
-
rules.catalog_table_rule.constraint_key_rule.constraint_key_columns.constraint_key_column_name
string
no
-
rules.catalog_table_rule.constraint_key_rule.constraint_key_columns.constraint_key_sort_type
string
no
-
rules.catalog_table_rule.column_rule
ConfigList
no
-
rules.catalog_table_rule.column_rule.name
string
no
-
rules.catalog_table_rule.column_rule.type
string
no
-
rules.catalog_table_rule.column_rule.column_length
int
no
-
rules.catalog_table_rule.column_rule.nullable
boolean
no
-
rules.catalog_table_rule.column_rule.default_value
string
no
-
rules.catalog_table_rule.column_rule.comment
comment
no
-
rules.table-names
ConfigList
no
-
common-options
no
-
Rule definition of user's available data. Each rule represents one field validation or row num validation.
field rules for field validation
field name(string)
A list value rule define the data value validation
The following rules are supported for now
NOT_NULL value can't be null
NULL value can be null
MIN define the minimum value of data
MAX define the maximum value of data
MIN_LENGTH define the minimum string length of a string data
MAX_LENGTH define the maximum string length of a string data
MIN_ROW define the minimun number of rows
MAX_ROW define the maximum number of rows
The value related to rule type. When the rule_type
is MIN
, MAX
, MIN_LENGTH
, MAX_LENGTH
, MIN_ROW
or MAX_ROW
, users need to assign a value to the rule_value
.
equals_to
cannot be applied tonull
type fields. However, users can use the rule typeNULL
for verification, such as{rule_type = NULL}
.
Used to assert the catalog table is same with the user defined table.
Used to assert the table should be in the data.
Sink plugin common parameters, please refer to Sink Common Options for details
the whole config obey with hocon
style
Field type declarations should adhere to this .
equals_to
is used to compare whether the field value is equal to the configured expected value. You can assign values of all types to equals_to
. These types are detailed . For instance, if one field is a row with three fields, and the declaration of row type is {a = array<string>, b = map<string, decimal(30, 2)>, c={c_0 = int, b = string}}
, users can assign the value [["a", "b"], { k0 = 9999.99, k1 = 111.11 }, [123, "abcd"]]
to equals_to
.
The way of defining field values is consistent with .
Here is a more complex example about equals_to
. The example involves FakeSource. You may want to learn it, please read this .