如何将所有文件从 blob 存储容器导入和处理到 azure databricks

Posted

技术标签:

【中文标题】如何将所有文件从 blob 存储容器导入和处理到 azure databricks【英文标题】:How to import and process all files from a blob storage container to azure databricks 【发布时间】:2019-03-08 09:02:00 【问题描述】:

我正在使用 azure databricks 和 blob 存储。我有一个存储帐户,每小时存储来自 IOT 设备的数据。所以文件夹结构是 year/month/day/hour 它将数据存储为 csv 文件。我的要求是,需要每天从 azure databricks 访问文件(因此从 0-23 开始会有 24 个文件夹)并且需要执行一些计算。

【问题讨论】:

看看这个link有没有帮助? 哪个语言在使用 scala, python ?? 我正在使用 python。 【参考方案1】:

为了在 wasb 容器下处理许多文件,您需要使用 Hadoop 输入格式 glob 模式。模式如下,有点类似于正则表达式:

* (match 0 or more character)
? (match single character)
[ab] (character class)
[^ab] (negated character class)
[a-b] (character range)
a,b (alternation)
\c (escape character)

对于您的用例,以下应该有效:

df = spark.read.format("csv").load("/container/*/*/*/*.csv")

【讨论】:

以上是关于如何将所有文件从 blob 存储容器导入和处理到 azure databricks的主要内容,如果未能解决你的问题,请参考以下文章

如何获取 Blob 存储中容器中所有文件夹的列表?

使用 Nodejs 将文件从 Azure 存储 blob(容器)复制到 Azure 文件共享

如何通过 IOT 集线器从 Xamarin PCL 项目将文件上传到 azure Blob 存储

C# Azure.Storage.Blobs SDK 如何列出和压缩容器中的所有文件并将压缩文件存储在另一个容器中

Azure Blob 容器备份和恢复

如何将静态文件添加/上传到 Azure Blob 存储容器的特定路径