簡體   English   中英

驗證 sql spark java 的列

[英]Validate columns of 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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM