我在这里阅读这份文件:
它有这个项目:
Make the HDFS directories required to execute MapReduce jobs:
$ bin/hdfs dfs -mkdir /user
$ bin/hdfs dfs -mkdir /user/<username>
我不清楚这里应该<username>
是什么。
这是我为Hadoop创建的Linux专用用户还是别的什么?
我是Hadoop的初学者,今天就安装了它 我只想尝试一些基本的例子。
答案 0 :(得分:2)
简答:它不必是任何用户名,只要您选择在HDFS中调用您想要输出的目录。但使用/user/<username>
是惯例和良好做法。
啰嗦答案:
彼得,想想&#34; Hadoop用户名&#34;仅作为一种方法,使HDFS中的你的内容与其他任何使用相同Hadoop集群的人不同。它实际上只是您在HDFS中/user
下创建或使用的目录的名称。你不一定要登录&#34;登录&#34;使用Hadoop,但通常hadoop用户名只是模仿您的标准用户名/个人资料。
例如,在我以前的雇主,每个人的登录(用于电子邮件地址,聊天客户端,访问应用程序,连接到服务器,开发代码等 - 几乎任何 at at 永远需要用户名和密码)的工作格式为<firstname.lastname>,
,因此我们以这种方式登录所有内容。我们大多数人都拥有对网格的执行权限,因此我们ssh
到适当的服务器(例如$ssh trevor.allen@server-of-awesomeness
),我们有权在网格中执行MapReduce作业。就像我的用户在我自己的机器上以及我们所有的Linux服务器(例如first.last
中的主页)上总是/home/trevor.allen/
一样,我们也会在HDFS中遵循这个先例,将任何输出指向HDFS到/user/first.last
。当然,因为&#34;用户名&#34;是任意的(实际上只是一个目录的名称),你偶尔会看到错别字(/user/john.deo
)或某人在Linux的usr
约定和Hadoop之间混淆了user
约定(/user/john.doe
vs /usr/john.doe
),只是随机删除姓氏(/user/john
),依此类推。
希望有所帮助!
答案 1 :(得分:1)
用户名对应HDFS中的用户。所以在这里你可以创建一个与你的Linux帐户或其他人相同的用户。例如,如果您安装hive,spark或Hbase,则必须创建其目录才能运行此服务。
答案 2 :(得分:-1)
此处的用户名是您用来登录hadoop的用户名。默认为用户帐户名。