"winutils"如何像hadoop一样?它到底有什么作用?



Winutils在我编写在hadoop上执行任务的spark应用程序时被映射为hadoop-home。但我只是想了解winutils是如何做到这一点的?

Spark不需要安装Hadoop集群,它可以在本地安装,但需要使用Hadoop代码库中名为"WinUtils"的元素。这允许管理HDFS文件系统对本地文件系统所需的POSIX文件系统权限。更多详细信息请点击此处。

Spark要求您为Hive元存储使用的临时目录设置POSIX兼容权限,默认为C:tmphive

WinUtils提供POSIXchmod以及其他POSIX命令

不过,消除对winutils的依赖似乎没什么大不了的。阅读本文:Apache Spark on Windows without winutils.exe-由于硬编码修复,这不能用作永久解决方案,例如:

private void loadPermissionInfo() {
IOException e = null;
try {
/*  String output = FileUtil.execCommand(new File(getPath().toUri()), 
Shell.getGetPermissionCommand());*/
// Let put it hard instead of calling winutils.exe 
String output = "drwx-wx-wx|1|xxxxx|yyyyyyy|0|Jun|21|2018|"+getPath();   

但这些代码肯定会让您更好地了解winutils的用途。

相关内容

  • 没有找到相关文章

最新更新