Apache YARN可以在没有HDFS的情况下使用吗?

Ama*_*iye 7 apache hadoop hadoop-yarn hadoop2

我想使用Apache YARN作为集群和资源管理器来运行一个框架,在该框架中,资源将在同一框架的不同任务之间共享.我想使用自己的分布式堆外文件系统.

  1. 是否可以使用除HDFS以外的YARN的任何其他分布式文件系统?

  2. 如果是,需要实施哪些HDFS API?

  3. 运行YARN需要哪些Hadoop组件?

Ste*_*ran 14

这里有一些不同的问题

您可以使用YARN使用S3之类的东西部署应用程序来传播二进制文件吗?

是的:这是LinkedIn过去使用http:// downloads来部署Samza的方式.Samza不需要集群文件系统,因此集群中没有运行hdfs,只有本地文件://文件系统,每个主机一个.

需要群集文件系统的应用程序无法在此类群集中运行.

你能用一个替代文件系统来建立一个YARN集群吗?

是.

对于"文件系统",请查看文件系统规范.您需要跨文件系统的一致视图:新创建文件列表(),找不到已删除的文件,立即可见更新.并且文件和目录的rename()必须是原子操作,理想情况下是O(1).它用于原子提交的工作,检查点,......哦,对于HBase,需要append().

MapR这样做,Redhat与GlusterFS; IBM和EMC为他们的.请记住,几乎所有东西都在HDFS上进行测试; 你最好希望其他群集FS已经完成了测试(或者有人为他们做过,比如Hortonworks或Cloudera).

您是否可以使用对象库作为底层FS来启动YARN群集.

这取决于FS是否提供一致的文件系统视图,而不是某些最终的一致性世界视图.HBase是真正的考验.

  1. Microsoft Azure存储是一致的,具有获得对FS位的独占访问权限的租约,并且非常快速地重命名().在Azure中,它完全取代了HDFS.
  2. Google云端存储于2017年3月1日宣布GCS提供一致性.也许它现在可以用作替代品; 没有经验.
  3. 亚马逊EMR确实提供s3作为替代品,使用(a)发电机用于一致的元数据,以及(b)做可怕的事情以使HBase工作.
  4. ASF自己的S3客户端S3a不能用作替代品.我们团队的工作重点是读写perf作为数据的来源和最终目的地; 在s3guard中添加发电机层并在s3guard提交器中,能够将其用作高性能工作目标(在避免重命名()的同时适应故障).

您正在编写的新分布式文件系统可以用作HDFS的替代品吗?

好吧,你当然可以尝试!

首先让所有文件系统合同测试工作,以测量基本的API合规性.然后查看所有进行系统集成的Apache Bigtop测试.我建议你最初避免使用HBase和Accumulo,专注于:Mapreduce,Hive,spark,Flink.

不要害怕加入Hadoop common-dev和bigtop列表并提出问题.