如果你不想要任何三角洲生活表,然後使用工作流選項卡下的工作選項卡。還是有很多其他的方式運行一個筆記本在編排工具使用(例如Azure數據工廠,等等)@Ruben Hartenstein
我喜歡這種方法@Arvind強奸共享因為目前你不能使用% DLT管道中運行。然而,它采取了一種小測試清楚如何使它工作。
首先,確保在管理控製台中,回購功能配置如下:
然後創建一個新的任意文件命名Import.py使用下麵的菜單選項。(注意,它不使用一個筆記本。)
文件應該包含代碼如下:
MYVAR1 = "嗨" MYVAR2 = 99 MYVAR3 =“hello”def階乘(num):事實= 1我的範圍(1,num + 1):事實=事實*我回來的事實
DLT筆記本,下麵的代碼加載Import.py並執行Python代碼。然後MYVAR1 MYVAR2 MYVAR3,階乘函數都可以參考下遊管道。
進口pyspark.sql。函數作為f txt = spark.read.text(“文件:/工作區/回購/ FolderName / RepoName / Import.py”) #文件的所有行合並到一個字符串回轉支承= txt.agg (f。concat_ws (“\ r \ n”, f.collect_list (txt.value))) data = " \ r \ n " . join (singlerow.collect()[0]) #執行python字符串的exec(數據)
這似乎在當前工作和預覽通道DLT管道。
不幸的是,os.getcwd()命令不似乎在DLT管道(因為它返回/磚/司機即使DLT管道筆記本是在回購)所以我並沒有發現使用相對路徑即使你的筆記本也在回購。以下目前失敗和Azure支持案例2211240040000106已打開:
進口操作係統導入pyspark.sql。函數作為f txt = spark.read.text (f”文件:{os.getcwd ()} / Import.py”) #文件的所有行合並到一個字符串回轉支承= txt.agg (f。concat_ws (“\ r \ n”, f.collect_list (txt.value))) data = " \ r \ n " . join (singlerow.collect()[0]) #執行python字符串的exec(數據)
我也難以使用import示例使用硬編碼路徑從aravish沒有像sys.path.append (“/ Workspace /回購/ TopFolder / RepoName”)當運行在一個DLT管道。aravish方法是有用的,如果您想要導入函數定義但不執行任何Python代碼,不定義任何變量將在調用可見筆記本的火花。
注意:編輯從先前的帖子,我犯了幾個錯誤。