我正在尝试下载Hadoop文件(我的hadoop数据在Azure数据湖中)。在以下脚本中使用过,但是我遇到了JVM错误。有什么帮助吗?
sc = spark.sparkContext
URI = sc._gateway.jvm.java.net.URI
hadoop = sc._gateway.jvm.org.apache.hadoop
conf = hadoop.conf.Configuration()
fs = hadoop.fs.FileSystem.get(URI('adl://abcaccount.azuredatalakestore.net'), conf)
hadoop.fs.FileSystem.copyToLocalFile('/test/test_merge.txt','/tmp/')
错误:Py4JError:JVM中不存在org.apache.hadoop.fs.FileSystem.copyToLocalFile
注意:我尝试了我现在不想使用的python子进程。
在Azure HDInsight jupyter笔记本中,您可以使用以下URL模式访问Data Lake Storage帐户中的数据。
adl://<data_lake_store_name>.azuredatalakestore.net/<cluster_root>/HdiSamples/HdiSamples/SensorSampleData/hvac/HVAC.csv
OR
adl:///HdiSamples/HdiSamples/SensorSampleData/hvac/HVAC.csv
有关更多详细信息,请参见“ use an HDInsight spark cluster with Data lake Storage Gen1”。
在内部Hadoop中,您可以参考“ Interacting with HDFS from pyspark”和“ Using Jupyter notebooks and pandas with Azure Data Lake Store”。
希望这会有所帮助。