小编Car*_*das的帖子

Flink批处理:HDFS上的数据本地规划?

我们一直在玩Flink.到目前为止,我们一直在Hadoop 2.x/YARN上使用Spark和标准M/R.

除了YARN上的Flink执行模型之外,AFAIK不像spark那样是动态的,执行者在YARN中动态地获取和释放虚拟核心,问题的主要内容如下.

Flink看起来真是太神奇了:对于流媒体API,我只会说它很棒并且超越顶级.

Batch API:处理图非常强大,并且以独特的方式进行优化和并行运行,比Spark和其他人更多地利用集群可扩展性,优化完全非常复杂的DAG,这些DAG共享共同的处理步骤.

我发现的唯一缺点是,我希望只是我的误解和缺乏知识,在规划使用HDFS输入的批处理作业时,它似乎不喜欢数据本地处理.

不幸的是,这不是一个小问题,因为在90%的使用案例中,你在HDFS上有一个大数据分区存储,通常你做的事情如下:

  • 读取和过滤(例如只接受失败或成功)
  • 聚合,减少,使用它

第一部分,在简单的M/R或spark中完成时,总是按照" 首选本地处理 " 的惯用法进行规划,以便数据由保持数据块的同一节点处理,更快,以避免数据 - 通过网络转移.

在我们使用3个节点的集群进行的测试中,设置为专门测试此功能和行为,Flink似乎完美地处理了HDFS块,因此,例如,如果文件由3个块组成,Flink完美地处理3个输入分裂并安排它们在平行下.但没有数据位置模式.

请分享您的意见,我希望我只是错过了一些东西,或者它已经在新版本中出现了.提前感谢任何花时间回答这个问题的人.

apache-flink

3
推荐指数
1
解决办法
539
查看次数

标签 统计

apache-flink ×1