簡體   English   中英

在 Parquet 中編寫 dataframe

[英]Writing a dataframe in Parquet

我正在嘗試在 spark 中讀取 json 並將其寫回鑲木地板。 我在 windows 中運行我的代碼。 下面是我的代碼。 執行后,它會創建一個名為 output_spark.parquet 的文件夾。 它還會拋出找不到文件的錯誤。 如果我創建一個文件然后運行它說該文件已經存在的代碼。 這是我得到的錯誤。

py4j.protocol.Py4JJavaError:調用 o34.parquet 時出錯。 : java.lang.RuntimeException: java.io.FileNotFoundException: java.io.FileNotFoundException: HADOOP_HOME and hadoop.home.dir are unset

我需要文件編寫器將鑲木地板寫入文件嗎? 欣賞您可能擁有的任何代碼片段。

    from pyspark.sql import SparkSession

spark = SparkSession \
    .builder \
    .appName("Python Spark SQL basic example") \
    .config("spark.some.config.option", "some-value") \
    .getOrCreate()

df = spark.read.json("Output.json")

df.show()

 
df.write.parquet("output_spark.parquet")

在 Windows 上,Hadoop 需要本機代碼擴展,以便它可以與操作系統正確集成,以實現文件訪問語義和權限等內容。 如何解決這個問題?

  1. 從 Hadoop 重新分發中獲取 WINUTILS.EXE 二進制文件。 使用這個鏈接

  2. 設置環境變量%HADOOP_HOME%指向BIN dir上面包含WINUTILS.EXE的目錄:在windows的搜索欄中搜索“EDIT USER VARIABLE”然后設置用戶變量

暫無
暫無

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

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