Class: Google::Apis::DataplexV1::GoogleCloudDataplexV1DataQualityRule

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/dataplex_v1/classes.rb,
lib/google/apis/dataplex_v1/representations.rb,
lib/google/apis/dataplex_v1/representations.rb

Overview

A rule captures data quality intent about a data source.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudDataplexV1DataQualityRule

Returns a new instance of GoogleCloudDataplexV1DataQualityRule.



1842
1843
1844
# File 'lib/google/apis/dataplex_v1/classes.rb', line 1842

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#columnString

Optional. The unnested column which this rule is evaluated against. Corresponds to the JSON property column

Returns:

  • (String)


1761
1762
1763
# File 'lib/google/apis/dataplex_v1/classes.rb', line 1761

def column
  @column
end

#descriptionString

Optional. Description of the rule. The maximum length is 1,024 characters. Corresponds to the JSON property description

Returns:

  • (String)


1766
1767
1768
# File 'lib/google/apis/dataplex_v1/classes.rb', line 1766

def description
  @description
end

#dimensionString

Required. The dimension a rule belongs to. Results are also aggregated at the dimension level. Supported dimensions are "COMPLETENESS", "ACCURACY", " CONSISTENCY", "VALIDITY", "UNIQUENESS", "INTEGRITY" Corresponds to the JSON property dimension

Returns:

  • (String)


1773
1774
1775
# File 'lib/google/apis/dataplex_v1/classes.rb', line 1773

def dimension
  @dimension
end

#ignore_nullBoolean Also known as: ignore_null?

Optional. Rows with null values will automatically fail a rule, unless ignore_null is true. In that case, such null rows are trivially considered passing.This field is only valid for row-level type rules. Corresponds to the JSON property ignoreNull

Returns:

  • (Boolean)


1780
1781
1782
# File 'lib/google/apis/dataplex_v1/classes.rb', line 1780

def ignore_null
  @ignore_null
end

#nameString

Optional. A mutable name for the rule. The name must contain only letters (a-z, A-Z), numbers (0-9), or hyphens (-). The maximum length is 63 characters. Must start with a letter. Must end with a number or a letter. Corresponds to the JSON property name

Returns:

  • (String)


1788
1789
1790
# File 'lib/google/apis/dataplex_v1/classes.rb', line 1788

def name
  @name
end

#non_null_expectationGoogle::Apis::DataplexV1::GoogleCloudDataplexV1DataQualityRuleNonNullExpectation

Evaluates whether each column value is null. Corresponds to the JSON property nonNullExpectation



1793
1794
1795
# File 'lib/google/apis/dataplex_v1/classes.rb', line 1793

def non_null_expectation
  @non_null_expectation
end

#range_expectationGoogle::Apis::DataplexV1::GoogleCloudDataplexV1DataQualityRuleRangeExpectation

Evaluates whether each column value lies between a specified range. Corresponds to the JSON property rangeExpectation



1798
1799
1800
# File 'lib/google/apis/dataplex_v1/classes.rb', line 1798

def range_expectation
  @range_expectation
end

#regex_expectationGoogle::Apis::DataplexV1::GoogleCloudDataplexV1DataQualityRuleRegexExpectation

Evaluates whether each column value matches a specified regex. Corresponds to the JSON property regexExpectation



1803
1804
1805
# File 'lib/google/apis/dataplex_v1/classes.rb', line 1803

def regex_expectation
  @regex_expectation
end

#row_condition_expectationGoogle::Apis::DataplexV1::GoogleCloudDataplexV1DataQualityRuleRowConditionExpectation

Evaluates whether each row passes the specified condition.The SQL expression needs to use BigQuery standard SQL syntax and should produce a boolean value per row as the result.Example: col1 >= 0 AND col2 < 10 Corresponds to the JSON property rowConditionExpectation



1810
1811
1812
# File 'lib/google/apis/dataplex_v1/classes.rb', line 1810

def row_condition_expectation
  @row_condition_expectation
end

#set_expectationGoogle::Apis::DataplexV1::GoogleCloudDataplexV1DataQualityRuleSetExpectation

Evaluates whether each column value is contained by a specified set. Corresponds to the JSON property setExpectation



1815
1816
1817
# File 'lib/google/apis/dataplex_v1/classes.rb', line 1815

def set_expectation
  @set_expectation
end

#statistic_range_expectationGoogle::Apis::DataplexV1::GoogleCloudDataplexV1DataQualityRuleStatisticRangeExpectation

Evaluates whether the column aggregate statistic lies between a specified range. Corresponds to the JSON property statisticRangeExpectation



1821
1822
1823
# File 'lib/google/apis/dataplex_v1/classes.rb', line 1821

def statistic_range_expectation
  @statistic_range_expectation
end

#table_condition_expectationGoogle::Apis::DataplexV1::GoogleCloudDataplexV1DataQualityRuleTableConditionExpectation

Evaluates whether the provided expression is true.The SQL expression needs to use BigQuery standard SQL syntax and should produce a scalar boolean result. Example: MIN(col1) >= 0 Corresponds to the JSON property tableConditionExpectation



1828
1829
1830
# File 'lib/google/apis/dataplex_v1/classes.rb', line 1828

def table_condition_expectation
  @table_condition_expectation
end

#thresholdFloat

Optional. The minimum ratio of passing_rows / total_rows required to pass this rule, with a range of 0.0, 1.0.0 indicates default value (i.e. 1.0).This field is only valid for row-level type rules. Corresponds to the JSON property threshold

Returns:

  • (Float)


1835
1836
1837
# File 'lib/google/apis/dataplex_v1/classes.rb', line 1835

def threshold
  @threshold
end

#uniqueness_expectationGoogle::Apis::DataplexV1::GoogleCloudDataplexV1DataQualityRuleUniquenessExpectation

Evaluates whether the column has duplicates. Corresponds to the JSON property uniquenessExpectation



1840
1841
1842
# File 'lib/google/apis/dataplex_v1/classes.rb', line 1840

def uniqueness_expectation
  @uniqueness_expectation
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
# File 'lib/google/apis/dataplex_v1/classes.rb', line 1847

def update!(**args)
  @column = args[:column] if args.key?(:column)
  @description = args[:description] if args.key?(:description)
  @dimension = args[:dimension] if args.key?(:dimension)
  @ignore_null = args[:ignore_null] if args.key?(:ignore_null)
  @name = args[:name] if args.key?(:name)
  @non_null_expectation = args[:non_null_expectation] if args.key?(:non_null_expectation)
  @range_expectation = args[:range_expectation] if args.key?(:range_expectation)
  @regex_expectation = args[:regex_expectation] if args.key?(:regex_expectation)
  @row_condition_expectation = args[:row_condition_expectation] if args.key?(:row_condition_expectation)
  @set_expectation = args[:set_expectation] if args.key?(:set_expectation)
  @statistic_range_expectation = args[:statistic_range_expectation] if args.key?(:statistic_range_expectation)
  @table_condition_expectation = args[:table_condition_expectation] if args.key?(:table_condition_expectation)
  @threshold = args[:threshold] if args.key?(:threshold)
  @uniqueness_expectation = args[:uniqueness_expectation] if args.key?(:uniqueness_expectation)
end