在hue(oozie)上提交pyspark

2021-09-25 18:09:48 字數 1093 閱讀 4962

因為需要使用python的一些庫,不得不使用pyspark。在這裡記錄下遇到的問題。

本地開發環境,網上比較容易查到,這裡就不寫了。

這裡主要說線上提交的依賴問題。

這裡是用hue提交,主要有以下幾個步驟:

1、將所有的依賴打成zip包

2、使用sc.addpyfiles(path)或者是sc.addpyfile(path)(ps:不同版本寫法不同)將依賴加入環境

3、在**中在初始化sc後,寫入下面**。

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()

另外如果在main函式使用了第三方依賴,也需要在初始化sc之後把引入寫出來。不然在執行driver的時候找不到依賴。

4、在引用依賴寫,路徑寫完整。

demo如下

def import_my_special_package(x):

import hbaseutil

return x

def main():

host = 'xx.xx.xx.xx'

conf = sparkconf()

conf.set("hbase.zookeeper.quorum", host)

int_rdd = sc.parallelize([1,2,3,4])

int_rdd.map(lambda x:import_my_special_package(x))

sc.addpyfile("hdfs:ip/tmp/xx.zip")

import util.hbaseutil

hbaseutil.write_hbase_drict()

sc.stop()

if __name__ == "__main__":

main()

使用FTP在Mainframe上提交作業

使用ftp在mainframe上提交作業的前提是,主機上面tcp ip和ftp均已建立。技術細節請refer os 390 tcp ip open edition user s guide 登陸到主機的ftp以後,可以使用主機特有的ftp命令來傳送本地檔案為作業,並自動執行。首先,使用以下命令改變目...

Git提交到github上

1 本地建立乙個目錄redis guosong etch171 mars171 redis pwd data1 guosong code redis guosong etch171 mars171 redis ll total 12 drwxr xr x 2 guosong guosong 4096...

Python在Oj上提交程式的一些套路

pta檢查答案正確與否是通過字串匹配實現的。所以可能有以下幾種原因 格式錯誤 程式的輸出要與題目中的樣例輸出格式一樣 輸出內容根據執行結果不同而變化 程式輸出的結果多乙個空格 少乙個空格,都不行。比如輸出樣例為1 2 3,你的輸出卻是1 2 3,錯誤原因分析 在 與 兩邊少了相應的空格,在3後面卻多...