gpt4 book ai didi

validation - hive :数据验证/不良数据处理?

转载 作者:行者123 更新时间:2023-12-02 21:37:52 24 4
gpt4 key购买 nike

将“外部”数据引入Hive时,验证其是否“干净”的最佳方法是什么?我们不希望任何无效值进入Hive表。

例如,如果源数据中的一个字段应该包含有效日期,但是格式不正确(例如:人类用户输入的是“I”而不是一个),那么我们如何检测到呢?

因此,我们在源数据中添加了20I5-06-09而不是2015-06-09

更棘手的是,如果格式可以,但不是有效日期,该怎么办?例如,源数据包含2015-02-30,但我们不想让它进入,因为二月份不能有30天。

最佳答案

您可以验证使用Hive的内置函数to_date,该函数将在您的第一类不良数据上返回NULL:

hive> select to_date('2015-02-02'),to_date('20I5-02-02');

2015-02-02 NULL

对于您的第二种不良数据,它还有其他有趣的事情……我认为这可能应该作为错误来提出。
hive> select to_date('2015-02-30');

2015-03-02

要解决此问题,您可以执行
    select case when datecol = to_date(datecol) then datecol end

关于validation - hive :数据验证/不良数据处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30854432/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com