簡體   English   中英

將JDBC數據庫數據保存為共享狀態Spark

[英]Saving JDBC db data as shared state Spark

我有一個MSSQL表作為數據源,我想以時間戳的形式保存某種處理偏移量(它是表的列之一)。 因此有可能處理來自最新偏移量的數據。 我想保存為Spark會話之間的某種共享狀態。 在Spark會話中研究了共享狀態 ,但是,我找不到在共享狀態中存儲此偏移量的方法。 那么有可能使用現有的Spark構造來執行此任務嗎?

據我所知,尚無官方內置功能支持在Spark中會話之間傳遞數據。 作為替代方案,我將考慮以下選項/建議:

  1. 首先,offset列必須是MSSQL中的索引字段,以便能夠快速查詢它。
  2. 如果您的項目已經安裝並使用了內存系統(即Redis,Apache Ignite),則將偏移量存儲在該系統中。
  3. 我不會使用像Kafka這樣的消息隊列系統,因為一旦您消費了一條消息,您將需要重新發送它,因此這毫無意義。
  4. 作為解決方案,我寧願將其保存在文件系統或Hive中,即使這樣做會增加額外的開銷,因為該表中只有一個值。 當然,在文件系統的情況下,性能會好得多。

讓我知道是否需要進一步的信息

暫無
暫無

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

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