【大数据】PySpark 使用 FileSystem 操作 HDFS

需求:spark 可以直接使用 textFile 读取 HDFS,但是不能判断 hdfs 文件是否存在,不过 pyspark 可以调用 java 程序,因此可以调用 FileSystem来实现:

# coding=utf-8

from pyspark import SparkContext

sc = SparkContext(appName="check_hdfs_exists")
jvm = sc._jvm
log4jLogger = jvm.org.apache.log4j
logger = log4jLogger.LogManager.getLogger(__name__)

config = jvm.org.apache.hadoop.conf.Configuration()
file_system = jvm.org.apache.hadoop.fs.File.System.get(config)

path = jvm.org.apache.hadoop.fs.Path("hdfs://hacluster/xxxxx")
path_is_exists = file_system.exists(path)
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容