Pular para o conteúdo principal

Ler e gravar arquivos de texto

O formato text lê cada linha de um arquivo de texto como uma linha em um DataFrame com uma única coluna value do tipo StringType. Usuários do Databricks geralmente o utilizam para análise de log, ingestão de dados brutos antes de processamento adicional, ou qualquer fluxo de trabalho que exija acesso linha a linha ao conteúdo do arquivo. O Databricks suporta a leitura e a escrita de arquivos de texto com Apache Spark, incluindo a compressão de escrita.

Pré-requisitos

A Databricks não requer configuração adicional para usar arquivos de texto. No entanto, para transmitir arquivos de texto, é necessário o Auto Loader.

Opções

Use os métodos .option() e .options() de DataFrameReader e DataFrameWriter para configurar a fonte de dados do texto. Para obter uma lista completa das opções suportadas, consulte DataFrameReader opções de texto e DataFrameWriter opções de texto.

Uso

Os exemplos a seguir usam o dataset Wanderbricks para demonstrar a leitura e gravação de arquivos de texto usando a API Spark DataFrame e SQL.

Ler arquivos de texto usando SQL

Para consultar arquivos de texto sem registrar uma tabela, use read_files. As permissões do Unity Catalog no local externo aplicam-se automaticamente.

SQL
SELECT * FROM read_files(
'/Volumes/<catalog>/<schema>/<volume>/review_comments',
format => 'text'
)

Ler e gravar arquivos de texto

O formato text exige um DataFrame com uma única coluna StringType. Os exemplos a seguir gravam os comentários da revisão do Wanderbricks como um arquivo de texto e, em seguida, os leem de volta.

Python
from pyspark.sql.functions import col

# Write wanderbricks review comments as a text file
df = spark.read.table("samples.wanderbricks.reviews").select(col("comment").alias("value"))
df.write.format("text").save("/Volumes/<catalog>/<schema>/<volume>/review_comments")

# Read a text file — each line becomes a row in the "value" column
df = spark.read.format("text").load("/Volumes/<catalog>/<schema>/<volume>/review_comments")
display(df)

Recursos adicionais

  • Ler e gravar arquivos CSV: Se seus dados de texto são delimitados ou tabulares, o CSV fornece análise estruturada com inferência de esquema, suporte a cabeçalho e delimitadores configuráveis.