Metin dosyalarını okuma ve yazma

text biçimi, bir metin dosyasındaki her satırı, StringType türünde tek bir value sütuna sahip bir DataFrame içinde satır olarak okur. Azure Databricks kullanıcılar bunu genellikle günlük ayrıştırma, daha fazla işlemeden önce ham verileri alma veya dosya içeriğine satır satır erişim gerektiren herhangi bir iş akışı için kullanır. Azure Databricks, yazma sıkıştırma da dahil olmak üzere Apache Spark ile metin dosyalarını okumayı ve yazmayı destekler.

Prerequisites

Azure Databricks, metin dosyalarını kullanmak için ek yapılandırma gerektirmez. Ancak, metin dosyalarının akışını yapmak için Otomatik Yükleyici gerekir.

Options

Metin veri kaynaklarını yapılandırmak için DataFrameReader ve DataFrameWriter öğelerinin .option() ve .options() yöntemlerini kullanın. Desteklenen seçeneklerin tam listesi için bkz DataFrameReader . metin seçenekleri ve DataFrameWriter metin seçenekleri.

Usage

Aşağıdaki örneklerde Spark DataFrame API'sini ve SQL'i kullanarak metin dosyalarını okuma ve yazma işlemini göstermek için Wanderbricks veri kümesi kullanılır.

SQL kullanarak metin dosyalarını okuma

Tablo kaydetmeden metin dosyalarını sorgulamak için kullanın read_files. Dış konumdaki Unity Kataloğu izinleri otomatik olarak uygulanır.

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

Metin dosyalarını okuma ve yazma

text biçimi, tek bir StringType sütunu içeren bir DataFrame gerektirir. Aşağıdaki örnekler, Wanderbricks inceleme yorumlarını bir metin dosyasına yazar, ardından bunları yeniden okur.

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)

Scala

import org.apache.spark.sql.functions.col

// Write wanderbricks review comments as a text file
val 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
val text = spark.read.format("text").load("/Volumes/<catalog>/<schema>/<volume>/review_comments")
text.show()

Ek kaynaklar

  • CSV dosyalarını okuma ve yazma: Metin verileriniz sınırlandırılmış veya tabloluysa, CSV şema çıkarımı, üst bilgi desteği ve yapılandırılabilir sınırlayıcılarla yapılandırılmış ayrıştırma sağlar.