#python #databricks
Вопрос:
Я запускаю блокнот databricks, используя следующий код:
TOKEN = "xxxxxxxxxxxxxxxxxxxx"
headers = {"Authorization": "Bearer %s" % TOKEN}
data = {
"job_id": xx,
"notebook_task": {
"base_parameters": {
"param1":"key1",
"param2": "key2",
}
},
}
resp = requests.post(
"https://xxxxxx.cloud.databricks.com/api/2.0/jobs/run-now",
headers=headers,
data=json.dumps(data),
)
когда я пытаюсь получить к нему доступ с помощью dbutils.widgets.get("param1")
, я получаю следующую ошибку:
com.databricks.dbutils_v1.InputWidgetNotDefined: No input widget named param1
Я также попытался использовать параметры notebook_params, что привело к той же ошибке.
Ответ №1:
base_parameters
используется только при создании задания. Когда вы запускаете его с run-now
помощью , вам нужно указать параметры в качестве notebook_params
объекта (doc), поэтому ваш код должен быть :
data = {
"job_id": xx,
"notebook_params": {
"param1":"key1",
"param2": "key2",
},
}
Комментарии:
1. Я сделал то же самое, что и выше. Использование dbutils. widgets.get(«param1») выдает следующую ошибку: com.databricks.dbutils_v1.InputWidgetNotDefined: Не определен входной виджет с именем param1