簡體   English   中英

Azure Datafactory,多層復合體 csv 結構

[英]Azure Datafactory , multi level complex csv structure

我們必須提供一個相當復雜的 csv 結構,我們想為此使用數據工廠。 該結構具有多個級別,具有全局 header 和尾部 + 子標題(每個主題)及其詳細信息行。 第一列定義了它是哪種類型的線。 我簡化了真實格式只是為了突出我的問題。

HEADER - 導出日期和編號規則等常用數據 SUBHEADER - 主題名稱 1 DETAIL - 上述主題的詳細行 DETAIL - 上述主題的詳細行 DETAIL - 上述主題的詳細行 SUBHEADER - 主題名稱 2 DETAIL - 上述主題的詳細行 DETAIL -上述主題的詳細行 DETAIL - 上述主題的詳細行 TRAILER - 包含總行數的結束行

源數據將是詳細信息行 + 主題名稱。

我無法解決兩個問題:

  1. 如何將源數據轉換為復雜的 SUBHEADER + DETAIL 格式。 老實說,不知道如何處理這個問題。
  2. 有沒有辦法通過 Datafactory 添加帶有總行數的全局 header + 預告片? 另一種方法是使用 azure function 執行此操作。

歡迎所有建議...

問候, 斯文·皮特斯

對於 Azure 數據工廠,您有幾個選擇:

  • 采取 ELT 方法,在其中使用某種類型的計算(例如 SQL 數據庫、Databricks、Azure 批處理、Azure Function 或 Azure Synapse 無服務器 SQL 池)如果你正在努力構建 Synapse 文件以工作,則輸出。 ADF 實際上只是在進行編排(告訴其他進程按什么順序做什么)並處理 output。計算正在處理繁瑣的位。
  • 采用 ETL 方法並使用映射數據流。 這是一種在后台使用按需 Spark 集群的低代碼方法。 您不必管理它們。

我很想使用 SQL 來執行此操作,特別是如果您的基礎架構中已經有一些。 一個簡化的例子:

;WITH cte AS (
SELECT 10 sortOrder, 'someHeader' main
UNION ALL
SELECT 20, 'col1, col2, col3'
--FROM someTable
UNION ALL
SELECT 30, 'someFooter'
)
SELECT main
FROM cte
ORDER BY sortOrder;

如果您有時間,何不嘗試兩種方法作為概念驗證,看看哪種方法最適合您、您的數據和您的組織。 查看開發時間、可維護性、靈活性、成本等因素

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM