Проверка наличия файлов HDFS в Pyspark - PullRequest
0 голосов
/ 07 июня 2018

Может ли кто-нибудь предложить лучший способ проверить наличие файла в pyspark.

В настоящее время я использую метод проверки ниже, пожалуйста, сообщите.

def path_exist(path):

try:
    rdd=sparkSqlCtx.read.format("orc").load(path)
    rdd.take(1)
    return True

except Exception as e:
    return False

Ответы [ 2 ]

0 голосов
/ 08 июля 2019

Следующий код должен работать -

import subprocess

out=subprocess.check_output("hadoop fs -ls /tmp/file.txt",shell=True)

out=out.strip()

out=out.split("\n")

for l in out:

if l.endswith(".txt"):

print "file exit"
    else:
        print "file not exit"
0 голосов
/ 07 июня 2018

Вы можете выполнить команду hdfs из python, используя subprocess:

import subprocess

proc = subprocess.Popen(['hadoop', 'fs', '-test', '-e', path])
proc.communicate()

if proc.returncode != 0:
    print '%s does not exist' % path
else : 
    print '%s exists' % path

, см. Также: apache spark - проверьте, существует ли файл

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...