验证sql-spark-java的列



数据库条目:

id: 9
message: {"Start Date":"11-06-2020","End Date":"11-06-2020"}
Group: NULL
id: 10
message: {"Start Date":"11-06-2020","End Date":"11-06-2020"}
Group: NULL

如何验证数据库中的消息列,并查看开始日期的格式是否正确?

我的火花java代码:

String sqlQuery="select * from emp"; 
Dataset<Row> df = spark.read().format("jdbc")
.option("url", "jdbc:mysql://localhost:3306/employee")
.option("query",sqlQuery)
.option("user", "root")
.option("password", "root")
.load();

您可以为"消息";部分,并从中提取开始和结束日期。

您可以创建一个自定义UDF,如";isValidTimestamp";以验证开始和结束时间。

//  Sample code
import datetime
def isValidTimestamp(inputdate):
try:
datetime.strptime(inputdate, '%Y-%m-%d %H:%M:%S')
return True
except ValeError:
return False

此外,您还可以参考本文档了解有关Spark中时间戳验证的更多信息。

https://databricks.com/blog/2020/07/22/a-comprehensive-look-at-dates-and-timestamps-in-apache-spark-3-0.html

相关内容

  • 没有找到相关文章

最新更新