将数据从 hdfs 发送到特定机器
Send data from hdfs to specific machines
我有一个大文件存储在 HDFS 中,在最后一列中我有一个机器地址,我想将每一行发送到 ap 地址并将其存储在一个文本文件中(在本地文件系统而不是 HDFS 上)我该怎么做?我找不到在 spark 或 hadoop 中执行此操作的方法。
输入文件示例:
attr1 attr2 ..attrN 192.168.40.5
attr1 attr2 ..attrN 192.168.40.19
我没有找到使用 hadoop 或 spark 的方法,因为你无法告诉那些框架将数据发送到哪里,但我找到了一种方法来获得我想要的结果,步骤如下像这样:
- 将字符串RDD转成key/valRDD,key为ip,然后key分组
- 将每个项目保存在 HDFS 上的单独文件中(这 link 会有所帮助)
- 创建一个 python 脚本,使用 parallel ssh 执行
hadoop fs -copyToLocal
并为每台机器设置适当的参数
我有一个大文件存储在 HDFS 中,在最后一列中我有一个机器地址,我想将每一行发送到 ap 地址并将其存储在一个文本文件中(在本地文件系统而不是 HDFS 上)我该怎么做?我找不到在 spark 或 hadoop 中执行此操作的方法。
输入文件示例:
attr1 attr2 ..attrN 192.168.40.5
attr1 attr2 ..attrN 192.168.40.19
我没有找到使用 hadoop 或 spark 的方法,因为你无法告诉那些框架将数据发送到哪里,但我找到了一种方法来获得我想要的结果,步骤如下像这样:
- 将字符串RDD转成key/valRDD,key为ip,然后key分组
- 将每个项目保存在 HDFS 上的单独文件中(这 link 会有所帮助)
- 创建一个 python 脚本,使用 parallel ssh 执行
hadoop fs -copyToLocal
并为每台机器设置适当的参数