[在这篇文章之前,我询问了如何在没有任何工作区的情况下配置 databricks 服务。现在我问如何为工作区提供服务,因为第一个场景似乎不可行。]
作为一名云管理员,我被要求使用 Azure Python SDK 编写一个脚本,该脚本将为我们的一个大数据开发团队提供 Databricks 服务。
除了 Azure Python SDK 中的 Databricks 之外,我在网上找不到太多关于 Databricks 的信息https://azuresdkdocs.blob.core.windows.net/$web/python/azure-mgmt-databricks/0.1.0/azure.mgmt.databricks.operations.html https://azuresdkdocs.blob.core.windows.net/%24web/python/azure-mgmt-databricks/0.1.0/azure.mgmt.databricks.operations.html
and
https://azuresdkdocs.blob.core.windows.net/$web/python/azure-mgmt-databricks/0.1.0/azure.mgmt.databricks.html https://azuresdkdocs.blob.core.windows.net/%24web/python/azure-mgmt-databricks/0.1.0/azure.mgmt.databricks.html
这些似乎为配置工作空间提供了一些帮助,但我还没有完全做到这一点。
我缺少什么?
EDITS:
感谢@Laurent Mazuel 和@Jim Xu 的帮助。
这是我现在运行的代码以及我收到的错误:
client = DatabricksClient(credentials, subscription_id)
workspace_obj = client.workspaces.get("example_rg_name", "example_databricks_workspace_name")
WorkspacesOperations.create_or_update(
workspace_obj,
"example_rg_name",
"example_databricks_workspace_name",
custom_headers=None,
raw=False,
polling=True
)
error:
TypeError: create_or_update() missing 1 required positional argument: 'workspace_name'
我对这个错误有点困惑,因为我提供了工作区名称作为第三个参数,并且根据本文档 https://azuresdkdocs.blob.core.windows.net/%24web/python/azure-mgmt-databricks/0.1.0/azure.mgmt.databricks.operations.html#azure.mgmt.databricks.operations.WorkspacesOperations,这正是该方法所需要的。
我还尝试了以下代码:
client = DatabricksClient(credentials, subscription_id)
workspace_obj = client.workspaces.get("example_rg_name", "example_databricks_workspace_name")
client.workspaces.create_or_update(
workspace_obj,
"example_rg_name",
"example_databricks_workspace_name"
)
结果是:
Traceback (most recent call last):
File "./build_azure_visibility_core.py", line 112, in <module>
ca_databricks.create_or_update_databricks(SUB_PREFIX)
File "/home/gitlab-runner/builds/XrbbggWj/0/SA-Cloud/azure-visibility-core/expd_az_databricks.py", line 34, in create_or_update_databricks
self.databricks_workspace_name
File "/home/gitlab-runner/builds/XrbbggWj/0/SA-Cloud/azure-visibility-core/azure-visibility-core/lib64/python3.6/site-packages/azure/mgmt/databricks/operations/workspaces_operations.py", line 264, in create_or_update
**operation_config
File "/home/gitlab-runner/builds/XrbbggWj/0/SA-Cloud/azure-visibility-core/azure-visibility-core/lib64/python3.6/site-packages/azure/mgmt/databricks/operations/workspaces_operations.py", line 210, in _create_or_update_initial
body_content = self._serialize.body(parameters, 'Workspace')
File "/home/gitlab-runner/builds/XrbbggWj/0/SA-Cloud/azure-visibility-core/azure-visibility-core/lib64/python3.6/site-packages/msrest/serialization.py", line 589, in body
raise ValidationError("required", "body", True)
msrest.exceptions.ValidationError: Parameter 'body' can not be None.
ERROR: Job failed: exit status 1
所以serialization.py中的第589行有错误。我不明白我的代码中的错误是在哪里引起的。感谢所有慷慨提供帮助的人!