问题描述
因此,我在 Spark 中使用 Amazon Deequ,并且我有一个数据框 sample_infohashes
,其中包含一个 router.bittorrent.com
类型的列 df
。我只想检查以下内容:
publish_date
其中 DateType
和 publish_date <= current_date(minus)x AND publish_date >= current_date(minus)y
是整数。
我不知道该放什么支票:
x
解决方法
你可以使用这个 Spark SQL 表达式:
publish_date <= date_sub(current_date(),x) AND publish_date >= date_sub(current_date(),y)
使用 Check 的 satisfies 方法:
val verificationResult: VerificationResult = { VerificationSuite()
.onData(df)
.addCheck(
Check(CheckLevel.Error,"Review Check")
.satisfies(
s"publish_date <= date_sub(current_date(),$x) AND publish_date >= date_sub(current_date(),$y)","check constraint name/description"
)
)
.run()
}
或者使用between
:
publish_date between date_sub(current_date(),y) and date_sub(current_date(),x)