簡體   English   中英

Python Databricks:有沒有辦法讀取保存在 blob 存儲中的 tar.gz 文件夾中的文本文件?

[英]Python Databricks: Is there any way to read text files inside a tar.gz folder saved in a blob storage?

我在 azure blob 存儲中的 tar.gz 文件夾中有一個.txt 文件。 有什么辦法可以在不解壓tar.gz文件夾的情況下讀取azure數據塊中.txt文件的內容嗎?

感謝DKNY分享您的寶貴建議。 發布與答案相同的內容以幫助其他社區成員。

使用數據塊執行所需的操作

  1. 使用 bash 命令將文件夾解壓縮到臨時位置
%sh find $source -name *.tar.gz -exec tar -xvzf {} -C $destination \;
  1. 上面的代碼會將源中擴展名為 * .tar.gz的所有文件解壓縮到目標位置。 如果路徑通過dbutils.widgets或 static 在%scala%pyspark中傳遞,則路徑必須聲明為環境變量。 這可以在%pyspark中實現
import os
os.environ[' source '] = '/dbfs/mnt/dl/raw/source/'
  1. 使用以下方法加載文件,假設* .txt文件中的內容:
DF = spark.read.format('csv').options(header='true', inferSchema='true').option("mode","DROPMALFORMED").load('/mnt/dl/raw/source/sample.txt')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM