1. 程式人生 > >資料攝取最佳實踐

資料攝取最佳實踐

資料是為企業的許多工關鍵型引擎提供動力的動力,從商業智慧到預測分析; 資料科學到機器學習。為了充分發揮作用,資料與任何燃料一樣,必須豐富,容易獲得並且乾淨。資料攝取過程 - 準備分析資料 - 通常包括稱為提取(從當前位置獲取資料),轉換(清理和規範化資料)和載入(將資料放在可以分析資料的資料庫中)的步驟。企業通常在提取和載入方面很容易,但很多都遇到轉換問題。結果可能是分析引擎處於空閒狀態,因為它沒有要處理的資料。

鑑於這一現實,這裡有一些關於資料攝取的最佳實踐。

期待困難並據此制定計劃

資料攝取的骯髒祕密在於,據報​​道,收集和清理資料需要佔用任何分析專案預定時間的60%到80%。我們想象資料科學家花費大部分時間來執行演算法,檢查結果,然後為下次執行改進演算法。這是工作中令人振奮的部分,但現實情況是,資料科學家花費大部分時間試圖將資料形成爭論,以便他們可以開始分析工作。隨著大資料的規模不斷擴大,這部分工作一直在變大。許多企業在不瞭解這一點的情況下開始資料分析專案,然後當資料提取過程不符合其初始計劃時,他們會感到驚訝或失望。與此同時,其他團隊已經開發出分析引擎,假設存在乾淨的攝取資料,並且在資料攝取工作陷入困境時等待空閒。沒有靈丹妙藥可以幫助你避免這些困難。期待他們,併為他們做計劃。例如,您可能希望為資料攝取安排更多時間,為其分配更多人員,引入外部專業知識或推遲開發分析引擎,直到專案的資料提取部分正在進行中。

自動化資料提取

在過去的好時候,當資料很小並且最多隻有幾十個表時,可以手動執行資料攝取。人類定義了一個全域性模式,然後為每個本地資料來源分配了一個程式設計師,以瞭解它應該如何對映到全域性模式。各個程式設計師用他們喜歡的指令碼語言編寫對映和清理例程,然後相應地執行它們。今天,資料在規模和種類上都變得太大,無法手動策劃。您需要開發儘可能自動化攝取過程的工具。例如,使用者應該能夠在電子表格中定義此資訊,然後由強制執行指定元資料的工具讀取,而不是手動定義表格的元資料,例如其模式或有關最小和最大有效值的規則。這種型別的自動化本身可以減少資料攝取的負擔。但是,在很多情況下,考慮到所涉及的表格數量龐大,它並沒有消除攝入瓶頸。當必須攝取數千個表時,填寫數千個電子表格比編寫數千個攝取指令碼更好。但是,它仍然不是可擴充套件或可管理的任務。

使用人工智慧

已經開發了各種產品,其使用機器學習和統計演算法來自動推斷關於被攝取的資料的資訊並且在很大程度上消除了對手工勞動的需要。其中包括Data Tamer等開源系統以及Tamr,Trifacta和Paxata等商業產品。這些系統可以自動化的一些過程示例包括:

  • 從對映到它的本地表中推斷全域性模式。
  • 給定一個本地表,推斷它應該被攝入哪個全域性表。
  • 推斷資料規範化的同義詞。例如,縮寫“in。”和“in”,直的雙引號(“)和單詞”inches“都是同義詞。
  • 基於模糊匹配檢測重複記錄。例如,“Moshe Kranc”和“M。克蘭克“是同一個人。

這些系統依靠人類提供訓練資料並解決演算法無法做出明確判斷的灰色區域。較新的系統,如Informatica的CLAIRE或開源的ActiveClean專案,被吹捧為可以徹底消滅人類的工具。

最重要的是,這些產品是真實的,它們可以工作,它們應該成為任何企業資料提取路線圖的一部分。

讓它自助服務

在中型企業中,每週需要攝取數十個新的資料來源。必須實現每個請求的集中式IT組織將不可避免地成為瓶頸。解決方案是通過提供易於使用的工具為資料提取自助服務,以便為想要攝取新資料來源的使用者提供資料。例如,為使用者提供自助服務工具,以便在嘗試將資料提取到全域性資料庫之前檢測並清除缺失值,異常值和重複記錄。

管理資料以保持清潔

一旦您解決了清理資料的麻煩,您將希望保持清潔。這意味著引入資料管理,資料管理員負責每個資料來源的質量。

此職責包括以下內容:定義架構和清理規則,決定應將哪些資料提取到每個資料來源,以及管理髒資料的處理。當然,資料治理還包括除資料質量之外的其他方面,例如資料安全性和遵守法規標準(如GDPR和主資料管理)。實現所有這些目標需要組織與資料相關的方式發生文化轉變,並且需要資料管理員能夠支援所需的工作並對結果負責。

宣傳您的清潔資料

清理完特定資料來源後,其他使用者是否可以輕鬆找到它?如果您的資料整合總是按照客戶的要求進行點對點完成,那麼任何客戶都無法找到已經為不同客戶清理的資料,這些資料可能很有用。您的組織應實現pub-sub(釋出 - 訂閱)模型,其中包含可供所有使用者查詢的先前已清理資料的登錄檔。

最終,這些最佳實踐在一起使用時,可能是您的特定資料提取專案成功與失敗之間的差異。