如何使用Spring XD将文件从本地磁盘移动到HDFS。
我不想要内容,而是移动整个文件以保存具有原始名称和内容的文件的档案。
这是我试过的
stream create --name fileapple --definition“file --mode = ref --dir = / Users / dev / code / open / learnspringxd / input --pattern = apple * .txt | WHATTODOHERE”
我现在可以看到带有完整路径的文件名可用,如何将其移动到HDFS。
答案 0 :(得分:0)
您可能需要检查this,它将文件中的数据导入HDFS作为批处理作业,并检查是否符合您的要求。如果适合您,您还可以将file | hdfs
检查为流。
答案 1 :(得分:0)
如下例所示,将文件从数据文件夹加载到HDFS,并按日期文件夹保存文件(如果有多个不同日期的记录),由名为LastModified的记录列,数据文件是一行分隔的json文件
file --mode=ref --dir=/Users/dev/code/open/learnspringxd/input --pattern=apple*.txt | hdfs --directory=/user/file_folder --partitionPath=path(dateFormat('yyyy-MM-dd',#jsonPath(payload,'$.LastModified'),'yyyy-MM-dd')) --fileName=output_file_name_prefix --fsUri=hdfs://HDFShostname.company.com:8020 --idleTimeout=30000