这是我之前question的后续行动
DataFrame
是一组有序的键值对。 Rows
是DataFrame
的集合
实际上relation
的数据结构是什么?它是列表,集合还是其他“集合”?是SQL中的{{1}}吗?
答案 0 :(得分:1)
它是Spark2中RDD[Row]
或Dataset[Row]
的抽象,通过系列Column
类定义了架构
是列表,集合还是其他"集合" ?
不是用Java术语来表达的。类似于RDD不是那些,而是一个"懒惰的集合"
它是SQL中的关系吗?
欢迎您在Dataframe上运行SparkSQL,但它是一张桌子。关系是可选的
答案 1 :(得分:1)
虽然Dataframe是RDD的抽象,但Dataframe的内部表示与RDD完全不同。
RDD表示为JAVA对象,并将JVM用于所有操作。但是,数据帧以钨表示。
这是一个很好的article,它详细说明了数据帧在钨中的表示方式。