Скрипт инициализации на блоках данных

Жизнь скрипта Init из DBFS подошла к концу. Раньше я развертывал кластер блоков данных с помощью этого сценария PowerShell с параметром InitScript.

New-DatabricksCluster -BearerToken $ADB_Token -Region $region -ClusterName $cname -SparkVersion $csparkV `
-NodeType $cnodeT -MinNumberOfWorkers $cminWorker -MaxNumberOfWorkers $cmaxWorker -AutoTerminationMinutes $cterm `
-InitScripts "/Init/pyodbc.sh" -UniqueNames -Update

Но в официальной документации этой функции PowerShell указано, что она должна иметь путь только к DBFS.

.PARAMETER InitScripts Сценарии инициализации для запуска создания публикации. Как массив строки — пути должны быть полными путями dbfs. Пример: "dbfs:/script/script1", "dbfs:/script/script2"

Теперь я хочу перейти из DBFS в местоположение файла Workspace, хотя я могу добиться этого с помощью пользовательского интерфейса блоков данных, мне было интересно, как я могу сделать то же самое с кодом PowerShell или даже API блоков данных.

Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
Как установить LAMP Stack 1/2 на Azure Linux VM
Как установить LAMP Stack 1/2 на Azure Linux VM
В дополнение к нашему предыдущему сообщению о намерении Azure прекратить поддержку Azure Database для MySQL в качестве единого сервера после 16...
0
0
84
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

К сожалению, модуль, который вы используете, не дает возможности установить сценарий инициализации типа рабочей области.

Итак, попробуйте модуль ниже.

  1. Установка
Install-Module -Name DatabricksPS
  1. Далее настройте среду.
$accessToken = "dapi12345sxsdksancldkcna7c51"
$apiUrl = "https://westeurope.azuredatabricks.net"

Set-DatabricksEnvironment -AccessToken $accessToken -ApiRootUrl $apiUrl
  1. Создайте кластер с помощью приведенных ниже команд.
$init_scripts = @( @{ "workspace" = @{ "destination" = "/Users/<user_id>/init.sh"; }; } )
Add-DatabricksCluster -NumWorkers 2 -ClusterName "MyCluster" -SparkVersion "4.0.x-scala2.11" -NodeTypeId 'Standard_DS3_v2'  -InitScripts $init_scripts

Выход:

и на портале

подробнее об этом модуле здесь.

Хотя это очень помогает и является правильным решением, перед этим действием мне нужно поместить файл initscript в рабочую область, и я тоже с этим борюсь. Я попробовал использовать предложенный вами модуль, но, похоже, он не работает. У меня есть исходный вопрос здесь, если вы не против взглянуть stackoverflow.com/questions/78692837/…

Greencolor 01.07.2024 16:59

Другие вопросы по теме