Flink 的 DataSet API 提供了容错机制,支持在发生故障时重新执行失败的任务。虽然 DataSet API 没有像 DataStream 那样依赖于 Checkpoint 机制,但其批处置惩罚特性答应任务重新开始重新执行,确保数据处置惩罚的正确性。
DataSet 与 DataStream 的对比
DataSet API 与 DataStream API 之间有一些紧张的区别:
DataSet API 的将来
需要注意的是,Flink 的官方路线图中已经不再优先开发 DataSet API 的新特性,将来的紧张开发将集中在 DataStream API,乃至批处置惩罚功能都将通过 DataStream API 来实现。
因此,如果可能,建议新项目只管使用 DataStream API 来更换 DataSet API。
特别是 Flink 的 Table API 和 SQL API 也实用于批处置惩罚和流处置惩罚,这些高层 API 提供了更简洁的语法和更强的优化本领。