簡體   English   中英

如何在 Scala 和 Spark 中並行運行 2 個進程?

[英]How to run 2 process parallel in Scala and Spark?

環境:Spark 1.6,Scala

你好
我需要運行以並行處理。 第一個,用於接收數據,第二個用於轉換和保存在 Hive 表中。 我想以 1 分鍾的間隔重復第一個過程,以 2 分鍾的間隔重復第二個過程。

==========First Process=== executes once per minute=============    
 val DFService = hivecontext.read
      .format("jdbc")
      .option("driver", "com.microsoft.sqlserver.jdbc.SQLServerDriver")
      .option("url", "jdbc:sqlserver://xx.x.x.xx:xxxx;database=myDB")
      .option("dbtable", "(select  Service_ID,ServiceIdentifier from myTable ) tmp")
      .option("user", "userName")
      .option("password", "myPassword")
      .load()
    DFService.registerTempTable("memTBLService")

  DFService.write.mode("append").saveAsTable("hiveTable")


=============Second Process === executes once per 2 minute =========
var DF2 = hivecontext.sql("select * from hiveTable")
var data=DF2.select(DF2("Service_ID")).distinct
data.show()

如何在 Scala 中以所需的間隔並行運行這兩個進程?
謝謝侯賽因

編寫兩個單獨的 Spark 應用程序。

然后使用 cron 根據您想要的時間表執行每個應用程序。 或者,您可以使用Apache AirFlow來安排您的 Spark 應用程序。

有關如何將 cron 與 Spark 一起使用,請參閱以下問題: 如何安排我的 Apache Spark 應用程序每天在 00.30(夜間)在 IBM Bluemix 中運行?

暫無
暫無

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

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