是否可以org.apache.spark.sql.delta.sources.DeltaDataSource直接使用以追加模式連續攝取資料?
還有其他更合適的方法嗎?我擔心的是延遲和可擴展性,因為每個振動傳感器的資料采集頻率可以達到 30 KHz,而且其中有幾個,我需要在 Delta Lake 中記錄原始資料以進行 FFT 和小波分析等。
在我的架構中,資料攝取是在 Spark 應用程式中連續完成的,而分析是在另一個具有按需查詢的獨立 Spark 應用程式中執行的。
如果 Delta Lake 沒有解決方案,Apache Parquet 的解決方案將起作用,因為可以從 Parquet 資料集中存盤的資料在 Delta Lake 中創建資料集。
uj5u.com熱心網友回復:
是的,這是可能的,而且效果很好。Delta 對于流式架構有幾個優點:
- 您不會遇到流式作業負載經常出現的“小檔案問題”——您不需要列出所有資料檔案來查找新檔案(如 Parquet 或其他資料源)——所有資料都記錄在事務日志
- 您的消費者不會看到部分寫入,因為 Delta 提供了事務功能
- Delta 原生支持流式作業負載
- 您甚至可以對流式作業負載執行 DELETE/UPDATE/MERGE - Parquet 是不可能的
PS你可以只使用.format("delta")而不是完整的類名
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/414296.html
標籤:
上一篇:將tensorflow模型匯出到ONNX并指定變數名
下一篇:Spark:覆寫磁區檔案夾
