gpt4 book ai didi

azure - 如何使用azure数据工厂中的azure函数将数据写入文件

转载 作者:行者123 更新时间:2023-12-02 06:38:39 25 4
gpt4 key购买 nike

我在 azure data Lake Storage gen2 位置有一个文件(employee_details.csv),它是一个空白文件。我需要仅将当前日期时间存储到文件内容中。但我无法在 azure 数据工厂中找到任何可用的内置组件。因此,我正在考虑使用 azure 函数来实现相同的目的,但我是 azure 函数的新手。您能否指导我如何使用 azure 函数来实现相同的功能?

最佳答案

对于如此简单的用例,Azure Function 会产生大量开销。尽管如此,当从 ADF 管道触发时,下面的函数对我有用。为了使该功能正常工作,必须启用其托管身份并授予对输出文件的写访问权限 - 通过 RBAC 或 ACL。此函数的生产版本需要错误处理、参数化等。在 Azure 中部署该函数已有详细记录,因此我没有在这里讨论它。

import azure.functions as func
import logging
import datetime
from azure.identity import ChainedTokenCredential,ManagedIdentityCredential
import os, uuid, sys
from azure.storage.filedatalake import DataLakeServiceClient

def main(req: func.HttpRequest) -> func.HttpResponse:

MSI_credential = ManagedIdentityCredential()
credential_chain = ChainedTokenCredential(MSI_credential)
client = DataLakeServiceClient(
https://<your-storage-account>.dfs.core.windows.net/",
credential = credential_chain)

# Create file
file_client = client.get_file_client(
file_system = "<your-adlsgen2-container>",
file_path = "<your-timestamp-file")
file_client.create_file()

# Write current timestamp to file
current_date_time = datetime.datetime.now()
file_content = current_date_time.strftime("%m/%d/%Y %I:%M %S %p")
file_client.append_data(data=file_content, offset = 0)
file_client.flush_data(len(file_content))

return func.HttpResponse("Ok", status_code=200)

关于azure - 如何使用azure数据工厂中的azure函数将数据写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68239126/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com