譯者:李睿
企業需要了解數據合成與數據管道如何提供可擴展的解決方案,以創建符合測試系統實際需求的一致數據。
雖然這是為企業操作數據的持續鬥爭的一部分,但始終需要找到方法為測試提供良好的數據集。企業需要這些數據集來測試整個架構環境中的應用程序和系統。他們還需要數據集來專注於測試其企業的各個方面,例如安全性和質量保證。
而創建合成數據是非常現實的需要。簡單地說,這真正意味著企業需要找到一種方法來創建虛構或虛假的數據。企業希望創建類似於測試系統實際需求的一致數據。以下將瞭解數據管道,並探索企業如何使用它來開始創建自己的合成數據,以便在企業中進行測試。
1.數據管道和測試
數據管道的一個非常簡單的定義是“一組串聯的數據處理元素,其中一個元素的輸出是下一個元素的輸入”。更簡單地說,這些是用於將數據從數據源返回到可以分析、轉換然後由企業使用的級別的基本連接。
數據管道從檢索數據開始。他們可以通過應用程序編程接口(API)等可編程接口,或通過數據流和事件處理接口,從SQL(DB)數據源等平臺內提取所需數據。
一旦檢索到數據,就可以決定轉換數據以滿足最終用戶的需求。這可以通過數據生成API、通過清理或更改檢索到的數據的結構來構建數據來完成,最後,出於安全原因,可以在呈現給最終用戶之前對數據實現匿名化。
這些只是數據管道可用作測試過程一部分的幾個示例,圖1是從源到最終數據倉庫位置以供進一步使用的數據管道的一個簡單示例。
圖1
測試要求企業向正在測試的系統、應用程序或代碼片段提供數據集。這一數據集可以人工創建、從現有數據集複製或生成以供測試團隊使用。
在處理非常小的數據集時,人工創建測試數據可能很有用,但是當需要大量數據集時,它會變得非常麻煩。如果數據包含敏感元素,則從現有(生產到測試)環境複製數據集會帶來安全和隱私問題。基於現有數據生成數據可以提供良好的結果。
如果企業想大規模生成數據,考慮到安全性以提供匿名結果,並確保生成內容的靈活性,那麼該怎麼辦?這就是數據合成發揮重要作用的地方。它允許企業以可能需要的靈活性生成數據。
2.初學者的數據合成
生成合成數據可以在處理敏感數據元素的同時提供大量數據。合成數據可以基於關鍵數據維度,例如姓名、地址、電話號碼、帳號、社會保障、信用卡、標識符、駕駛執照號碼等。
合成數據被定義為虛假或創建的數據,但它通常基於真實數據,用於擴展以創建更大、更真實的數據集進行測試。然後,為測試生成的數據以安全且可擴展的方式在企業中提供給業務用戶和開發人員使用。
這種合成數據在任何企業中都有廣泛的用途,例如醫療保健、金融、製造以及採用新技術來滿足各種業務需求的任何其他領域。它的直接用途是持續的測試、安全和質量保證實踐,以幫助實施、應用程序開發、集成和數據科學工作。
企業不僅能夠通過數據合成大規模地提供數據集,而且還確保支持企業中多個域的數據一致性,同時提供代表現實世界格式的可行數據。它為開發人員、架構師和數據架構師提供了跨任何企業的一致方法,以利用數據進行測試。
3.數據合成入門
發現數據合成可以為企業提供好處的最佳方式是探索最常見的使用模式,然後潛入開源項目以啟動其體驗。開始數據合成有兩種簡單的模式:在雲原生環境和雲原生API中,如圖2所示。
圖2
數據合成在以下用例中大放異彩:
在平臺內檢索所需數據(SQL)
數據檢索(API)
數據生成(API)
按需或按計劃構建更多虛構數據
數據構建
基於虛構數據按需或計劃構建更多結構化數據
創建滿足需求的結構化或非結構化數據
以流媒體行業為中心的數據
使用數據管道處理各種行業標準數據
通過從實時系統中解析和填充來提供真實世界的屬性,從而實現去標識化和匿名化
涵蓋這些用例中的每一個都超出了本文的範圍,但這個列表讓人們對數據合成和測試的適用性領域有一個很好的瞭解。對於數據合成數據層的概述,如圖3所示:
這是數據層的概述,以及平臺如何使用美國各地的數據字段(郵政編碼和區號)作為示例將它們聯繫在一起。在圖3的中心,可以看到可以根據需要擴展的鬆散耦合數據模型。它們構成了從現有數據、實施數據和行業標準數據進行訪問的核心基礎。這可以使用數據設置並基於企業中的現有數據結構進行調整。其輸出是生成的數據、參考數據和特定於平臺的數據。
在這個簡短的數據合成之旅之後,下一步是開始探索名為Project Herophilus的開源項目,企業可以在其中開始使用數據合成平臺。
企業將找到數據合成的關鍵起始區域:
數據層——設計為可擴展並支持平臺的所有需求。
數據層API——支持用戶請求需求的是數據層API,這個API集是關於能夠生成數據並將其持久化到數據層。
Web UI(s) ——旨在成為可用於查看企業實施的數據合成數據層的最小可行產品。
數據合成項目中的三個模塊應該可以幫助企業快速開始開發測試數據集。
4.結論
隨著企業收集、探索、轉換和嘗試利用他們的數據,測試是一個不斷增長的挑戰。雖然生成測試數據集可以解決其中一些問題,但當流程需要擴展時,它通常會失敗。數據合成與數據管道一起,可以提供可擴展的解決方案,以創建類似於測試系統實際需求的一致數據。企業可以從探索名為Herophilus的開源項目開始,它提供了三個模塊來啟動其第一個數據合成項目。