2016-09-21 5 views
0

私はPythonとSparkの初心者です。Azureからテーブルにファイルをロードしようとしています。以下は私の簡単なコードです。 FileNotFoundErrorようPythonを使用してMS Azureからファイルを読み書きする

import os 
 
import sys 
 
os.environ['SPARK_HOME'] = "C:\spark-2.0.0-bin-hadoop2.74" 
 
sys.path.append("C:\spark-2.0.0-bin-hadoop2.7\python") 
 
sys.path.append("C:\spark-2.0.0-bin-hadoop2.7\python\lib\py4j-0.10.1-src.zip") 
 
from pyspark import SparkContext 
 
from pyspark import SparkConf 
 
from pyspark.sql.types import * 
 
from pyspark.sql import * 
 
sc = SparkContext("local", "Simple App") 
 

 

 
def loadFile(path, rowDelimeter, columnDelimeter, firstHeaderColName): 
 
    
 
    
 
    loadedFile = sc.newAPIHadoopFile(path, "org.apache.hadoop.mapreduce.lib.input.TextInputFormat", 
 
             "org.apache.hadoop.io.LongWritable", "org.apache.hadoop.io.Text", 
 
             conf={"textinputformat.record.delimiter": rowDelimeter}) 
 
    
 
    
 
    rddData = loadedFile.map(lambda l:l[1].split(columnDelimeter)).filter(lambda f: f[0] != firstHeaderColName) 
 
     
 
    return rddData 
 

 

 
Schema= StructType([ 
 
    
 
    StructField("Column1", StringType(), True), 
 
    StructField("Column2", StringType(), True), 
 
    StructField("Column3", StringType(), True), 
 
    StructField("Column4", StringType(), True) 
 
     
 
     
 

 
]) 
 

 
rData= loadFile("wasbs://[email protected]/File.txt", 
 
        '\r\n',"#|#","Column1") 
 
DF = sc.createDataFrame(Data,Schema) 
 
DF.write.saveAsTable("Table1")

私は取得していますエラー:[WinError 2]システムは、ファイルが

+0

Azure SparkHDinsightを使用しましたか?一方、あなたのコードのどの行がこのエラーメッセージを投げるのか教えてください。 –

答えて

0

@Miruthan、私の知る限りでは を指定見つけることができない、私たちは希望した場合WASBからSparkにデータを読み込む場合、URL構文は次のようになります。

wasb[s]://<containername>@<accountname>.blob.core.windows.net/<path> 

一方、Azure S torage BLOB(WASB)は、HDInsightクラスタに関連付けられたストレージアカウントとして使用されます。再度確認してください。更新は、私に知らせてください。

関連する問題