Spark的数据帧API中"API"是什么意思? 它与 API 有什么关系?
虽然术语ApplicationProgrammingInterface 主要用于公开 Web 服务器服务的元素,但它具有更一般的含义。
对于像Spark这样扩展的框架,它指定了与用户可用的库交互的特定方式。
Spark具有具有不同用途的不同API,它们充当前端接口,掩盖更复杂的底层或结构代码(外观模式(: 即使每个Spark 作业都运行基于 RDD 的管道,Spark也提供了不同的方法来构建作业:
Core API- (Spark Core(:用户直接操作RDD,它是低级API
- 数据集 API(Spark SQL(:用户操作高级类型化对象
- DataFrame API(Spark SQL(:用户操作高级非类型化对象 SQL
- API(Spark SQL(:用户写入 SQL 查询字符串
(最后 3 个 API 利用描述性编程模型和操作数据的结构化来生成优化的 Spark 作业(
注意:按照惯例,在谈论数据集 API 时,我们谈论的是 T 与Row
不同的Dataset[T]
对象的操作。Dataset[Row]
对象的操作称为数据帧 API(因为DataFrame
是Dataset[Row]
的类型别名(。