我使用ssh
连接到工作中的Hadoop集群。
似乎有两种不同的文件系统可供使用:
- 一个本地(虽然它是因为我对这台机器进行了远程控制)。我可以使用cd ..
导航文件系统,并使用ls
在其中显示文件。我也可以在这里安装一些程序
- 一个非本地使用hadoop命令(hdfs dfs ...
)
我不明白这两个文件系统是如何协同工作的? hadoop集群的主节点的本地类型是否可以从中执行配置单元?
答案 0 :(得分:1)
:我可以执行配置单元的hadoop集群的主节点的本地类型吗?
由于Hive与Hadoop和HDFS完全分开安装,所以HIve似乎与提出的问题无关。无论您访问哪台计算机都需要Hive客户端才能工作,并且没有hive
的“主节点”(尽管应该使用beeline
)cli需要运行。对于大多数用户来说,HiveServer的JDBC驱动程序比终端会话更有用。或者说服贵公司安装Hue作为Hadoop&的Web UI。蜂巢访问。
如果您浏览Hadoop / Hive安装页面并且可以收集服务器和端口的正确网络信息以建立与Hadoop环境的远程连接,则您不一定需要通过SSH连接到任何服务器以访问任何内容,但是从安全角度来看,公司可能不会那样。此时,本地计算机的配置方式与调用它们的“跳转框”或“边缘节点”完全相同。
一个本地(虽然它因为我正在使用这台机器而遥控)
烨。不是Hadoop文件系统。您SSH的所有计算机都有本地硬盘驱动器。在将它们复制到HDFS之前,您需要SFTP / SCP文件。
一个不是本地使用hadoop命令(hdfs dfs ...)我不明白这两个文件系统是如何协同工作的?
如果您已经通过SSH连接到数据节点,Hadoop仍会将数据存储在本地文件系统中,但是,它不是整个文件,而是将它们分开称为块。 Hadoop使用许多机器和磁盘来创建分布式文件系统抽象,因此称为HDFS。
如果您的公司使用NAS或FTP文件服务器,这是一个类似的概念。您也可以使用正确的权限通过SSH连接到其中一个,但是,在其本地磁盘上有一个专用位置,用于提供文件。
答案 1 :(得分:0)
hdfs dfs..
在您的Hadoop群集托管的分布式文件系统上执行命令。
它与您使用的服务器的本地文件系统完全无关(可以是任何具有Hadoop客户端库的服务器)。其实你甚至不需要ssh。您可以使用REST API https://hadoop.apache.org/docs/r1.0.4/webhdfs.html#OPEN
从桌面访问HDFS文件您是指Hive客户端(请参阅此处https://cwiki.apache.org/confluence/display/Hive/HiveServer2+Clients#HiveServer2Clients-Beeline%E2%80%93NewCommandLineShell)或Hive Server中的所有选项?