簡體   English   中英

Java 中的 Spark 結構化流單元測試

[英]Spark Structured Streaming Unit Test in Java

我正在開發一個 api 以使用 Spark Structured Streaming 從 Kafka 讀取數據並寫入 Java 中的 blob 存儲。 我找不到為此編寫單元測試的方法。 我有一個讀取器 class,它返回一個數據集和一個寫入器 class,它將數據集作為輸入並以指定格式寫入 blob 存儲。 我在 MemoryStream 上看到了一些博客,但認為它不足以滿足我的需求。

提前致謝。

顯然,您可以參考這個答案,了解我們如何使用 memory 流進行單元測試 - Unit Test - structured streaming

此外,您還可以查看 Holden Karau 的這個 spark-testing-base。 星火測試基地

您可以模擬來自 Kafka 的流數據幀,並運行測試用例以在 dataframe 之上的代碼中進行轉換。

樣本:

static Dataset<Row> createTestStreamingDataFrame() {
    MemoryStream<String> testStream= new MemoryStream<String>(100, sqlContext(), Encoders.STRING());
    testStream.addData((Arrays.asList("1,1","2,2","3,3")).toSeq());
    return testStream.toDF().selectExpr(
        "cast(split(value,'[,]')[0] as int) as testCol1",
        "cast(split(value,'[,]')[1] as int) as testCol2");
}

暫無
暫無

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

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