我有一个包含 Databricks 活动的 ADF 管道。
该活动每次都会创建一个新的作业集群,并且我已将所有必需的 Spark 配置添加到相应的链接服务中。
现在,随着 Databricks 提供 Spot 实例,我想在 Databricks 中使用 Spot 配置创建新集群。
我尝试从LinkedService文档中找到帮助,但没有成功!
如何使用 ADF 执行此操作?
干杯!!!
azure cost-management azure-data-factory azure-databricks databricks-workflows
我有一个 ADF,它具有能够访问 ADLS 的托管身份。现在我需要这个 ADF 来调用 Databricks 笔记本,并且该笔记本也应该访问 ADLS。我可以使用 ADF 的托管身份来完成此操作吗?我怎样才能做到这一点?
azure azure-data-factory azure-databricks azure-data-lake-gen2
我在 Azure Databricks 中的 jupyter 笔记本文件中的 %python 下创建了 python 变量。如何访问相同的变量以在 %sql 下进行比较。下面是示例:
%python
RunID_Goal = sqlContext.sql("SELECT CONCAT(SUBSTRING(RunID,1,6),SUBSTRING(RunID,1,6),'01_')
FROM RunID_Pace").first()[0]
AS RunID_Goal
Run Code Online (Sandbox Code Playgroud)
%sql
SELECT Type , KPIDate, Value
FROM table
WHERE
RunID = RunID_Goal (This is the variable created under %python and want to compare over here)
Run Code Online (Sandbox Code Playgroud)
当我运行此命令时,它会抛出错误: SQL 语句中的错误: AnalysisException:无法解析RunID_Goal给定输入列的“ ”:我是新的 azure databricks 和 Spark sql 任何形式的帮助将不胜感激。
apache-spark apache-spark-sql pyspark databricks azure-databricks
我正在尝试使用“rename ()”函数通过“import os”库在Azure Databricks中使用Python重命名文件,这确实非常简单,但是在Databricks中执行此操作时我无法到达其中的路径我的文件是。在数据湖中,但是执行命令“% fs ls path_file”是的,我看到了它,我什至可以毫无问题地读取它并使用 pyspark 处理它。
我留下我的代码示例:
import os
old_name = r"/mnt/datalake/path/part-00000-tid-1761178-3f1b0942-223-1-c000.csv"
new_name = r"/mnt/datalake/path/example.csv"
os.rename(old_name, new_name)
Run Code Online (Sandbox Code Playgroud)
上面返回一个错误,指出找不到路径或文件,但“ls”命令可以毫无问题地执行相同的路径。
另一方面,我尝试用 pySpark 重命名该文件,但它使用了我没有安装的 hadoop 库(org.apache.hadoop.conf.Configuration),并且无法在生产环境中安装它......
我会缺少什么?
我最近在 Azure Databricks 上启用了预览功能“存储库中的文件”,这样我就可以将许多常规功能从笔记本转移到模块,并消除为单个作业运行大量笔记本带来的开销。
但是,我的一些函数直接依赖于 dbutils 或 Spark/pyspark 函数(例如dbutils.secrets.get()和spark.conf.set())。由于这些模块是在笔记本的后台导入的,并且直接与底层会话相关联,因此我完全不知道如何在自定义模块中引用这些模块。
对于我的小示例模块,我通过将 dbutils 设置为参数来修复它,如下例所示:
class Connection:
def __init__(self, dbutils):
token = dbutils.secrets.get(scope="my-scope", key="mykey")
...
Run Code Online (Sandbox Code Playgroud)
然而,对所有现有函数执行此操作将需要大量重写函数和调用它们的行。我怎样才能避免这个过程并以更干净的方式进行?
我正在为 Azure Databricks 构建 CI/CD,我必须构建一个 python 库并能够创建 ADO 管道的工件部分。
第一阶段有以下插件
Using python version 3.x
Bash #
python -m pip install --upgrade pip setuptools wheel databricks-cli
Run Code Online (Sandbox Code Playgroud)
Configure Databricks参考了这个文档
Bash #使用以下命令# few other commands
....
databricks workspace rm -r /MYPROJECT --profile AZDO
....
databricks workspace import_dir nb/artifact / --profile AZDO
Run Code Online (Sandbox Code Playgroud)
注意:Databricks 插件默认配置与配置文件 AZDO 的连接。
上面显示了以下错误,因为我将 AgentPool 与 Windows VM 一起使用,所以 ADO 版本正在使用 git bash。
{ 'error_code': 'INVALID_PARAMETER_VALUE',
2022-03-22T15:14:49.7904034Z 'message': "Path (C:/Program …Run Code Online (Sandbox Code Playgroud) 尝试在 python 中编译 sql 查询。我以前在 python 中经常这样做。但我过去从未遇到过这个错误。帮我解决同样的问题。
询问:
from pandasql import sqldf
import pandas as pd
from sklearn import datasets
Q10="select bucket,count(*) as COUNT,min(probability) as MINSCORE,max(probability) as MAXSCORE,(avg(probability)*100) as PREDDEFRATE,sum(response) as RESPONSE,count(*)-sum(response) as NONRESPONSE from score group by 1;"
Bucket_Details = sqldf(Q10,globals())
display(Bucket_Details)
Run Code Online (Sandbox Code Playgroud)
类型错误:init () 获得了参数“schema”的多个值
提前致谢。
我正在使用 Azure Databricks 从具有值 的 Azure Key Vault 获取环境值intg。
env = dbutils.secrets.get(scope = "myscrope", key = "environment")
Run Code Online (Sandbox Code Playgroud)
当我打印此内容时,它显示为[REDACTED],这是预期的。
现在我声明另一个变量,如下所示。
prm = 'myintgterritoy'
Run Code Online (Sandbox Code Playgroud)
当我打印此内容时,它显示为my[REDACTED]territoy关键字intg所在的内容。我并不期望这种行为,因为这是完全不同的变量。我怎样才能得到 的值myintgterritoy?
我尝试了一种方法,可以使用下面的代码将带有空格的实际值放入新变量中。
new_prm = ''
for char in prm:
new_prm += char + ' '
Run Code Online (Sandbox Code Playgroud)
但是当我用空字符串替换空格时,它会将结果返回为my[REDACTED]territoy.
new_prm.replace(' ','')
Run Code Online (Sandbox Code Playgroud)
我期望输出为myintgterritoy.
我已经在 Ubuntu 16.04 和 Mac 上成功安装了 databricks cli。当我尝试在 Ubuntu 18.04(Azure VM)上安装它时,它看起来运行得很好,然后当我尝试调用 cli 工具时它没有安装。我在 Ubuntu 16.04 和 OSX 上运行良好。关于让这个工作的任何想法?输出复制如下
vstsTestLogin@PensDataScienceVSTS:~$ pip install databricks-cli
Collecting databricks-cli
Using cached
https://files.pythonhosted.org/packages/de/8f/b0b5222c910eafb4dd6cc6de04d7821e6caefb5a9d927bc68c39206e422f/databricks_cli-0.8.2-py2-none-any.whl
Collecting tabulate>=0.7.7 (from databricks-cli)
Collecting configparser>=0.3.5 (from databricks-cli)
Collecting click>=6.7 (from databricks-cli)
Using cached https://files.pythonhosted.org/packages/34/c1/8806f99713ddb993c5366c362b2f908f18269f8d792aff1abfd700775a77/click-6.7-py2.py3-none-any.whl
Collecting six>=1.10.0 (from databricks-cli)
Using cached https://files.pythonhosted.org/packages/67/4b/141a581104b1f6397bfa78ac9d43d8ad29a7ca43ea90a2d863fe3056e86a/six-1.11.0-py2.py3-none-any.whl
Collecting requests>=2.17.3 (from databricks-cli)
Using cached https://files.pythonhosted.org/packages/65/47/7e02164a2a3db50ed6d8a6ab1d6d60b69c4c3fdf57a284257925dfc12bda/requests-2.19.1-py2.py3-none-any.whl
Collecting idna<2.8,>=2.5 (from requests>=2.17.3->databricks-cli)
Using cached https://files.pythonhosted.org/packages/4b/2a/0276479a4b3caeb8a8c1af2f8e4355746a97fab05a372e4a2c6a6b876165/idna-2.7-py2.py3-none-any.whl
Collecting certifi>=2017.4.17 (from requests>=2.17.3->databricks-cli)
Using cached https://files.pythonhosted.org/packages/df/f7/04fee6ac349e915b82171f8e23cee63644d83663b34c539f7a09aed18f9e/certifi-2018.8.24-py2.py3-none-any.whl
Collecting chardet<3.1.0,>=3.0.2 (from requests>=2.17.3->databricks-cli)
Using cached https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl
Collecting urllib3<1.24,>=1.21.1 (from …Run Code Online (Sandbox Code Playgroud) 我正在尝试从 Azure Data Lake Gen1 读取 avro 数据,这些数据是从 Azure EventHubs 生成的,在 Azure Databricks 中使用 pyspark 启用了 Azure Event Hubs Capture:
inputdata = "evenhubscapturepath/*/*"
rawData = spark.read.format("avro").load(inputdata)
Run Code Online (Sandbox Code Playgroud)
以下语句失败
rawData.count()
Run Code Online (Sandbox Code Playgroud)
和
org.apache.spark.SparkException: Job aborted due to stage failure: Task 162 in stage 48.0 failed 4 times, most recent failure: Lost task 162.3 in stage 48.0 (TID 2807, 10.3.2.4, executor 1): java.io.IOException: Not an Avro data file
Run Code Online (Sandbox Code Playgroud)
EventHub-Capture 是否正在写入非 Avro 数据?是否有使用 Spark 读取 EventHub 捕获数据的最佳实践?
azure azure-eventhub pyspark azure-eventhub-capture azure-databricks
azure-databricks ×10
databricks ×7
azure ×4
pyspark ×4
python ×4
apache-spark ×1
azure-devops ×1
pandas ×1
python-3.x ×1
sqldf ×1
ubuntu ×1