Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Rozhraní používané k načtení datového rámce z externích systémů úložiště (např. systémů souborů, úložišť klíč-hodnota atd.).
Podporuje Spark Connect.
Syntaxe
Používá SparkSession.read se pro přístup k tomuto rozhraní.
Methods
| Metoda | Description |
|---|---|
format(source) |
Určuje formát vstupního zdroje dat. |
schema(schema) |
Určuje vstupní schéma. |
option(key, value) |
Přidá vstupní možnost pro podkladový zdroj dat. |
options(**options) |
Přidá vstupní možnosti pro podkladový zdroj dat. |
load(path, format, schema, **options) |
Načte data ze zdroje dat a vrátí je jako datový rámec. |
json(path, schema, ...) |
Načte soubory JSON a vrátí výsledky jako datový rámec. |
table(tableName) |
Vrátí zadanou tabulku jako datový rámec. |
parquet(*paths, **options) |
Načte soubory Parquet, které vrátí výsledek jako datový rámec. |
text(paths, wholetext, lineSep, ...) |
Načte textové soubory a vrátí datový rámec, jehož schéma začíná řetězcem sloupce s názvem "value". |
csv(path, schema, sep, encoding, ...) |
Načte soubor CSV a vrátí výsledek jako datový rámec. |
xml(path, rowTag, schema, ...) |
Načte soubor XML a vrátí výsledek jako datový rámec. |
excel(path, dataAddress, headerRows, ...) |
Načte excelové soubory, které vrátí výsledek jako datový rámec. |
orc(path, mergeSchema, pathGlobFilter, ...) |
Načte soubory ORC, které vrátí výsledek jako datový rámec. |
jdbc(url, table, column, lowerBound, upperBound, numPartitions, predicates, properties) |
Vytvořte datový rámec představující tabulku s názvem databáze, která je přístupná prostřednictvím adresy URL adresy URL JDBC a vlastností připojení. |
Příklady
Čtení z různých zdrojů dat
# Access DataFrameReader through SparkSession
spark.read
# Read JSON file
df = spark.read.json("path/to/file.json")
# Read CSV file with options
df = spark.read.option("header", "true").csv("path/to/file.csv")
# Read Parquet file
df = spark.read.parquet("path/to/file.parquet")
# Read from a table
df = spark.read.table("table_name")
Použití formátu a načtení
# Specify format explicitly
df = spark.read.format("json").load("path/to/file.json")
# With options
df = spark.read.format("csv") \
.option("header", "true") \
.option("inferSchema", "true") \
.load("path/to/file.csv")
Určení schématu
from pyspark.sql.types import StructType, StructField, StringType, IntegerType
# Define schema
schema = StructType([
StructField("name", StringType(), True),
StructField("age", IntegerType(), True)
])
# Read CSV with schema
df = spark.read.schema(schema).csv("path/to/file.csv")
# Read CSV with DDL-formatted string schema
df = spark.read.schema("name STRING, age INT").csv("path/to/file.csv")
Čtení z JDBC
# Read from database table
df = spark.read.jdbc(
url="jdbc:postgresql://localhost:5432/mydb",
table="users",
properties={"user": "myuser", "password": "mypassword"}
)
# Read with partitioning for parallel loading
df = spark.read.jdbc(
url="jdbc:postgresql://localhost:5432/mydb",
table="users",
column="id",
lowerBound=1,
upperBound=1000,
numPartitions=10,
properties={"user": "myuser", "password": "mypassword"}
)
Řetězení metod
# Chain multiple configuration methods
df = spark.read \
.format("csv") \
.option("header", "true") \
.option("inferSchema", "true") \
.option("delimiter", ",") \
.schema("name STRING, age INT") \
.load("path/to/file.csv")