首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >直接从Azure数据库访问Azure DevOps Git文件

直接从Azure数据库访问Azure DevOps Git文件
EN

Stack Overflow用户
提问于 2021-02-06 05:02:57
回答 1查看 461关注 0票数 0

我们有一个CSV文件存储在一个ADO (Azure DevOps) Git存储库中。我已经运行了Azure Databricks集群,并且在工作空间中我有一段python代码来读取该CSV文件并将其转换为spark dataframe。但每次文件发生更改时,我都必须手动从ADO Git下载并上载到Databricks工作区。我使用以下命令验证文件是否已上载:-

代码语言:javascript
复制
dbutils.fs.ls ("/FileStore/tables")

它列出了我的文件。然后,我使用以下Python代码将此CSV转换为Spark dataframe:

代码语言:javascript
复制
file_location = "/FileStore/tables/MyFile.csv"
file_type = "csv"
# CSV options
infer_schema = "true"
first_row_is_header = "true"
delimiter = ","
# The applied options are for CSV files. For other file types, these will be ignored.
df = spark.read.format(file_type) \
  .option("inferSchema", infer_schema) \
  .option("header", first_row_is_header) \
  .option("sep", delimiter) \
  .load(file_location)

因此,每次ADO Git存储库中的文件发生更改时,都会涉及到此手动步骤。有没有什么Python函数可以让我直接指向ADO Git的master分支中的文件副本?

EN

回答 1

Stack Overflow用户

发布于 2021-02-06 16:37:55

您有两个选择,这取决于对您来说更简单的选择:

  1. 使用Azure DevOps Python API访问Git树中的file (called item in API)。由于此文件只能从驱动程序节点访问,因此您将需要使用dbutils.fs.cp将文件从驱动程序节点复制到Git存储库中的/FileStore/tables
  2. Setup构建管道中,这将仅在提交特定文件时触发,如果更改,请使用Databricks CLI (databrics fs cp ...命令)将文件直接复制到DBFS中。下面是一个不能完全执行您想要的操作的example,但它可以用作inspiration.
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66070526

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档