簡體   English   中英

如何在 Databricks 中按計划運行 Spark (python) ETL 管道

[英]How to run a Spark (python) ETL pipeline on a schedule in Databricks

我有一個 DataBricks 筆記本(Spark - python),它從 S3 讀取數據,在做了一些 ETL 工作后,將結果寫入 S3。 現在我想按計划運行此代碼作為.py腳本,而不是從筆記本中運行。 我希望運行 python 腳本的原因是它使版本控制更容易

我知道我需要在 Databricks 中創建一個按計划運行的作業 但看起來 Databricks 作業只能運行JAR (scala) 或notebook 我沒有看到在那里運行 python 腳本的方法。

我錯過了什么嗎?

不幸的是,此功能目前在 Databricks UI 中不可用,但可以通過 REST API 訪問。 您需要使用SparkPythonTask數據結構。

您可以在官方文檔 - Jobs API examples 中找到此示例

curl -n -X POST -H 'Content-Type: application/json' -d \
'{
  "name": "SparkPi Python job",
  "new_cluster": {
    "spark_version": "7.3.x-scala2.12",
    "node_type_id": "Standard_D3_v2",
    "num_workers": 2
  },
  "spark_python_task": {
    "python_file": "dbfs:/pi.py",
    "parameters": [
      "10"
    ]
  }
}' https://<databricks-instance>/api/2.0/jobs/create

或者

可以使用數據工廠在 Azure Databricks 上執行 Jars 和 Python 腳本。

參考: 使用數據工廠在 Azure Databricks 上執行 Jars 和 Python 腳本

暫無
暫無

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

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