【发布时间】:2016-10-17 14:25:15
【问题描述】:
我正在尝试将数据从本地边缘节点发送到 hdfs 作为管道。目的是模拟来自外部服务器的数据,通过边缘节点撞击管道,然后将其登陆 hdfs。这是我们的要求。我已经尝试了以下命令,但它似乎停止了。
mkfifo my_pipe
cat mysqlfile.sql my_pipe & cat pipe | hdfs dfs -put /user/bob/test.txt
【问题讨论】:
我正在尝试将数据从本地边缘节点发送到 hdfs 作为管道。目的是模拟来自外部服务器的数据,通过边缘节点撞击管道,然后将其登陆 hdfs。这是我们的要求。我已经尝试了以下命令,但它似乎停止了。
mkfifo my_pipe
cat mysqlfile.sql my_pipe & cat pipe | hdfs dfs -put /user/bob/test.txt
【问题讨论】:
如果你 cat 一个命名管道,它会挂起,因为它会等到 EOF。
如果您想使用管道执行此操作,也许您应该尝试一些更简单的方法,例如:
cat mysqlfile.sql | hadoop fs -put - /path/you/desire/file.txt
您将在this thread 上找到有关命名管道、cat 和 tail 的一些有用信息。
【讨论】: