gpt4 book ai didi

python - 如何使用python检查HDFS中是否存在文件

转载 作者:行者123 更新时间:2023-12-02 20:35:52 25 4
gpt4 key购买 nike

import subprocess
def run_cmd(args_list):
print('Running system command: {0}'.format(' '.join(args_list)))
proc = subprocess.Popen(args_list, stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
proc.communicate()
return proc.returncode

cmd = ['hadoop', 'fs', '-test', '-e', hdfs_file_path]
code = run_cmd(cmd)
if code:
print 'file not exist'

当我给出此命令以查看HDFS中是否存在文件时,它引发了以下错误:
RuntimeError: Error running command: hadoop fs -test -f /app/tmp/1.json. Return code: 1, Error: b''

如何解决这个问题?

最佳答案

我将使用api而不是调用子流程。为此最好使用一个API,例如spotify创建的snakebite。本示例检查给定文件夹中是否存在文件:

from snakebite.client import Client
client = Client("localhost", 8020, use_trash=False)
return "fileName" in client.ls(['hdfs_path'])

关于python - 如何使用python检查HDFS中是否存在文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51134962/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com