json (DataStreamReader)

載入 JSON 檔案串流,並將結果以 DataFrame 回傳。 預設支援 JSON 行(換行分隔 JSON)。 對於每個檔案只有一個記錄的 JSON,可以設定 multiLinetrue。 若 schema 未指定,則從資料推斷輸入結構。

語法

json(path, schema=None, **options)

參數

參數 類型 說明
path str 通往 JSON 資料集的路徑。
schema 結構類型或力量,選用 Schema 作為 StructType 或 DDL 格式的字串(例如 col0 INT, col1 DOUBLE)。

退貨

DataFrame

Examples

從暫存的 JSON 檔案載入串流:

import tempfile
import time
with tempfile.TemporaryDirectory(prefix="json") as d:
    spark.createDataFrame(
        [(100, "Hyukjin Kwon"),], ["age", "name"]
    ).write.mode("overwrite").format("json").save(d)
    q = spark.readStream.schema(
        "age INT, name STRING"
    ).json(d).writeStream.format("console").start()
    time.sleep(3)
    q.stop()