哪些是特定于linux的hadoop内部构件?

ecr0jaav  于 2021-06-03  发布在  Hadoop
关注(0)|答案(2)|浏览(395)

我试图了解为什么hadoop除了运行shell脚本外,还需要在windows中使用cygwin。我知道hadoop的各个部分都有特定于posix的实现,我只是想知道hadoop的哪些部分是linux特定的?
谢谢

eqoofvh9

eqoofvh91#

一些hadoop内部需要java没有提供的关于系统的详细信息或操作。
因为在Java6中,iirc不可能更改文件的所有者。
但是,hadoop需要这种类型的操作。在这些情况下,hadoop在单独的进程中执行unix命令。实用程序类shell包含许多这样的子进程调用。
清单包括
文件描述符
奇莫德

长征
以及其他
出于类似的原因,类processtree使用setsid和kill。
由于hadoop使用这些应用程序,它们必须在父系统上可用。cygwin提供了这个。
[编辑:]实际上,lib/native中的本机代码是可选的。只有在存在匹配的库版本时才使用它(出于性能原因)。

r8xiu3jd

r8xiu3jd2#

hadoop使用shell脚本来启动和停止主进程和从进程等。它还需要openssh(无密码)。安装cygwin是解决这个问题的最简单方法。

相关问题