對Python很新穎。在pyspark上導入python庫
我想從S3讀取一些XML文件並查詢它們。我已連接到AWS並分配了一些EC2羣集,但我不確定如何導入我需要的庫來獲取數據。
我認爲使用xmlutils庫從XML到JSON的轉換,然後用在我做訪問就可以了(見下文)sqlcontext庫read.json
converter = xml2json("S3 logs", "output.sql", encoding="utf-8")
converter.convert()
from pyspark.sql import SQLContext
sqlContext = SQLContext(sc)
logs = sqlContext.read.json("output.sql")
logs.registerAsTable("logs")
query_results = sqlContext.sql("SELECT * from logs...")
編輯
我想用這段代碼在cloudera鏈接上的Spark上在我的虛擬環境中安裝xmlutils。 (已設置SparkConf和SparkContext)
def import_my_special_package(x):
import my.special.package
return x
int_rdd = sc.parallelize([1, 2, 3, 4])
int_rdd.map(lambda x: import_my_special_package(x))
int_rdd.collect()
我試圖在函數的參數爲x同時傳遞xmlutils和「xmlutils」,但沒有奏效。難道我做錯了什麼?謝謝
EC2實例上的基本操作系統是什麼? – StephenG
我正在使用OS X – DolphinFriend
無法在EC2上安裝OS X。 EC2實例上的操作系統是什麼,而不是您正在訪問的計算機上的操作系統?它是默認的AMI嗎? – StephenG