, Spark SQL 使用这个额外的信息去执行额外的优化.有几种方式可以跟 Spark SQL 进行交互, 包括 SQL 和 Dataset API.当使用相同执行引擎进行计算时, 无论使用哪种 API...DataFrame API 可以在 Scala, Java, Python, 和 R中实现....然而, 在 Java API中, 用户需要去使用 Dataset 去代表一个 DataFrame....正如上面提到的一样, Spark 2.0中, DataFrames在Scala 和 Java API中, 仅仅是多个 Rows的Dataset....在 Spark 1.3 中,Java API 和 Scala API 已经统一。两种语言的用户可以使用 SQLContext 和 DataFrame。