@Deepak Chokkadi
這是我使用的功能:
def mountBucket (dstBucketName:字符串,dstMountName:字符串){導入. lang。IllegalArgumentException val accessKey =“你的訪問密鑰”val encodedSecretKey =“你的秘密”。替換(“/”、“% 2 f”) {dbutils.fs試試。山(s”s3a: / / $ accessKey: encodedSecretKey@ dstBucketName”美元,dstMountName) println(“都做!”)}{案例e: java.rmi。RemoteException = > {println(“目錄”已經安裝)dbutils.fs.unmount (dstMountName) mountBucket (dstBucketName dstMountName)}案例e:異常= > {println(“有其他一些錯誤”)}}}
我把它放在一個簡單的可訪問的筆記本,然後筆記本使用%跑。然後一桶山我使用這個函數,它會自動重新安裝它。
@Deepak Chokkadi
這是我使用的功能:
def mountBucket (dstBucketName:字符串,dstMountName:字符串){導入. lang。IllegalArgumentException val accessKey =“你的訪問密鑰”val encodedSecretKey =“你的秘密”。替換(“/”、“% 2 f”) {dbutils.fs試試。山(s”s3a: / / $ accessKey: encodedSecretKey@ dstBucketName”美元,dstMountName) println(“都做!”)}{案例e: java.rmi。RemoteException = > {println(“目錄”已經安裝)dbutils.fs.unmount (dstMountName) mountBucket (dstBucketName dstMountName)}案例e:異常= > {println(“有其他一些錯誤”)}}}
我把它放在一個簡單的可訪問的筆記本,然後筆記本使用%跑。然後一桶山我使用這個函數,它會自動重新安裝它。
站在我這一邊,我測試了如果在安裝之前存在的掛載點:
如果(! dbutils.fs.mounts。地圖(mnt = > mnt.mountPoint) .contains (“/ mnt / <目錄>”))dbutils.fs。山(源= "誹謗聯盟:/ / < datalake_name >.azuredatalakestore.net/ <目錄>”,掛載點= s / mnt / <目錄>”,extraConfigs =配置)
非常好!這是一個等價的if語句在Python中:
如果任何(山。掛載點= =“/ mnt / <目錄>”在dbutils.fs.mounts山()):對於python不?
如果沒有任何(山。掛載點= =掛載點的山dbutils.fs.mounts ()):