我正在做一个项目,需要通过restapi从hadoop集群之外的机器上传一个目录到hdfs。基本上,我需要一个命令,通过终端(或python脚本),使用restapi向hdfs发送一个目录。webhdfs文档中指定的唯一方法是上载单个文件。这对我来说还不够,因为我需要通过restapi上传数千个文件。提前谢谢!这适用于使用单个节点作为namenode和datanode的hdfs,这是非常默认的配置。
ep6jt1vc1#
您可以先尝试创建一个空目录:
curl -i -s --user your_username:your_password --max-time 45 -X PUT https://XXXXX:8443/gateway/default/webhdfs/v1/user/path_to_directory?op=MKDIRS
然后可以上载文件:
curl -i -L -s --user your_username:your_password --max-time 45 -X PUT -T file_name.txt \ https://XXXXX:8443/gateway/default/webhdfs/v1/user/path_to_director/path_to_file/file_name?op=CREATE
裁判:https://cloud.ibm.com/docs/services/analyticsengine?topic=analyticsengine-upload-files-hdfs
1条答案
按热度按时间ep6jt1vc1#
您可以先尝试创建一个空目录:
然后可以上载文件:
裁判:https://cloud.ibm.com/docs/services/analyticsengine?topic=analyticsengine-upload-files-hdfs