我使用SPARK选择了不同的文件(.csv .json .txt…),然后将它们摄取到HADOOP(HDFS)中。这是工作,但当我将此函数关联到一个按钮,结果将显示在GUI我得到:函数在终端执行,GUI不显示。我怎样才能解决这个问题。这是代码:
def classifyCSV():
spark = SparkSession.builder
.appName("SparkByExamples.com")
.getOrCreate()
df = spark.read.csv("... /file3.csv")
df.printSchema()
df.show()
df.write.save('hdfs://localhost:9000/mydata/csv', format='parquet',mode='append'
button1 = Button(gui1,text="Press for csv file" , commande=classifyCSV)
button1.place(x=120 , y=235)
注意:每个文件都有自己的功能
Spark不是在GUI中运行,而是在后台,打算在集群上分发。
如果您想显示任何内容,您需要将数据框collect()
到活动Spark驱动程序中,然后您应该在Tkinter中创建一些表或列表小部件来填充该列表,因为打印模式和show()
只到终端
如果你有一个足够小的数据集来处理和显示在一台机器的GUI上,你可能不应该使用Spark,尽管