pyspark 在数据库中装载一个用于业务的驱动器

bgtovc5b  于 2023-02-03  发布在  Spark
关注(0)|答案(1)|浏览(142)

我正尝试在databricks community edition中的一个驱动器业务中装入文件夹。我无法使用onedrivesdk,因为它已被弃用。
我创建了一个应用程序注册,使用客户端id和secret分配了读写权限。我尝试使用API请求挂载,但它没有提供访问令牌。首先我想知道,是否可以挂载一个驱动器到databricks社区版。如果可以,方法是什么......?下面是我使用api请求挂载一个驱动器的代码。

# Import the necessary libraries
import requests

# Set up the client
client_id = ""
client_secret = ""
tenant_id = ""
redirect_uri = "http://localhost:8080/"

# Get the access token
response = requests.post(
    "https://login.microsoftonline.com/{}/oauth2/token".format(tenant_id),
    data={
        "client_id": client_id,
        "client_secret": client_secret,
        "redirect_uri": redirect_uri,
        "grant_type": "client_credentials",
        "resource": "https://graph.microsoft.com"
    }
)
access_token = response.json()["access_token"]

# Mount the OneDrive folder to DBFS
folder_id = ""
mount_point = "/mnt/onedrive"
dbutils.fs.mount(
    source="graph",
    mount_point=mount_point,
    extra_configs={
        "graph.access_token": access_token,
        "graph.folder_id": folder_id
    }
)
hmmo2u0o

hmmo2u0o1#

不可以,您不能将dbutils.fs.mount与OneDrive配合使用- DBFS装载仅支持特定云存储实施(S3、ADLS Gen 2、Azure Blob存储等-请参见docs)。
如果您需要访问OneDrive中的数据,则需要使用REST API directly(或查找其他Python库)

相关问题