加入收藏 | 设为首页 | 会员中心 | 我要投稿 衢州站长网 (https://www.0570zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

如何将数据移入和移出Hadoop?

发布时间:2018-10-16 05:15:55 所属栏目:教程 来源:赵钰莹
导读:副标题#e# 【新产品上线啦】51CTO播客,随时随地,碎片化学习 企业在项目中完全使用Hadoop之前,数据移动是必须解决的事情之一。如何将数千台主机日志数据放入Hadoop?从关系型或者No/NewSQL系统以及Hadoop中获取数据的最有效方法是什么?如何将Hadoop中生成

要想在此技术中使用HTTP与NameNode进行通信,需要知道运行NameNode RPC服务的主机和端口,这是使用dfs.namenode.http-address属性配置的。在伪分布式设置中,这很可能设置为0.0.0.0:50070。我们假设其余技术的伪分布式——替换适当的主机和端口进行设置。

首先使用CLI在HDFS中创建文件:

  1. $ echo "the cat sat on the mat" | hadoop fs -put - /tmp/hdfs-file.txt 

使用WebHDFS获取有关该文件的各种有趣的元数据(用户名替换为以下URL中的aholmes):

如何将数据移入和移出Hadoop?

命令语法由两部分组成:一是路径;二是正在执行的操作。但是,需要提供执行操作的用户名,否则HDFS将假定你是一个访问受限的匿名用户。

如何将数据移入和移出Hadoop?
图5.1 解析WebHDFS URL路径

从HDFS读取文件只需将OPEN指定为operation:

如何将数据移入和移出Hadoop?

使用WebHDFS编写文件分为两步:第一步通知NameNode创建新文件的意图,可以使用HTTP PUT命令执行此操作:

如何将数据移入和移出Hadoop?

此时,文件尚未写入。只是让NameNode有机会确定要写入哪个DataNode,这是在“Location”标头中指定的。需要获取该URL,然后发出第二个HTTP PUT执行实际写入:

如何将数据移入和移出Hadoop?

可以通过读取文件来验证写入是否成功:

如何将数据移入和移出Hadoop?

WebHDFS支持可以使用常规命令行执行所有HDFS操作,它更有用,因为它可以访问结构化JSON表单中的元数据,从而更容易解析数据。

(编辑:衢州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读