自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

數(shù)據(jù)遷移:高難度帶來高回報

譯文
運維 數(shù)據(jù)庫運維 新聞
在過去的十年中,我已經(jīng)遇到過數(shù)不清的數(shù)據(jù)再加工任務。無論是把古老的數(shù)據(jù)庫遷移到現(xiàn)代化數(shù)據(jù)庫當中,還是將大規(guī)模數(shù)據(jù)集利用新型處理工具進行牽引等,將數(shù)據(jù)由一種格式轉化為另一種新格式的任務始終不斷出現(xiàn)、頻度極高甚至每天都有。而且對于包括IT部門在內(nèi)的絕大多數(shù)人來說,這一轉換過程仍然神奇乃至神秘。

【51CTO譯文】請允許我花幾分鐘向大家解釋整個轉換處理方式,至少是在宏觀上形成概念。在閱讀之后,大家可能會發(fā)現(xiàn)這方面知識有助于幫助各位向非技術人士詳盡闡釋相關的后端流程。

一切從Excel開始

讓我們先從最困難的常見情況:可怕的Excel電子表格開始。就在前一陣子,某家遠在他方的企業(yè)打算對有價值的業(yè)務流程數(shù)據(jù)進行一番收集與整理,其中包括庫存、銷售額、客戶資料等等。由于缺乏合適的工具,員工制作了一份Excel電子表格,并利用它承載信息。隨著時間的推移,其中逐漸積累起數(shù)千條記錄、電子表格本身的功能性缺失也開始暴露出來。最終,企業(yè)管理者決定將這部分數(shù)據(jù)轉換成到真正的數(shù)據(jù)庫當中。不知道他們當時是選擇聘請咨詢服務公司還是利用內(nèi)部資源加以處理,總之有人接手了這份工作。

這項任務的第一步是檢查數(shù)據(jù)本身的純潔度。在理想狀態(tài)下,電子表格本身會以數(shù)據(jù)庫的方式對信息進行分類,且每個數(shù)據(jù)填充區(qū)都處于對應的列之下——例如姓氏、名字、街道、城市等等。然而事情并不總能如此順利,有時候兩類包含信息交集的單元格會自上而下位于同一列當中。就以聯(lián)系人列為例,其中很可能囊括了全名、公司、地址、電話號碼等多種獨立單元。緊隨其后的下一列也可能是對方最新訂購信息或2012年采購總額等數(shù)據(jù),這就給轉換工作帶來了極大的挑戰(zhàn)。

讓我們先看看第一種情況——即理想情況,這是最易于處理的狀態(tài)。數(shù)據(jù)比較單純且具備良好的排序,我們可以通過CSV將其導出并通過自定義解析器把它翻譯成數(shù)據(jù)庫內(nèi)容。優(yōu)秀的CSV解析器能夠將所有這些記錄逐一抽離出來匯總成整體數(shù)組,然后插入到新的數(shù)據(jù)庫當中。在整個過程中,我們可以對數(shù)據(jù)進行檢查及修改,進而使數(shù)據(jù)格式更好地適應新數(shù)據(jù)庫的要求。

舉例來說,我們可能會利用正則表達式處理電話號碼信息,旨在將不同格式的電話號碼轉化為同一標準。這要求大家在將內(nèi)容插入新數(shù)據(jù)庫之前,調整好表格中包含的一切特殊符號并對字符串進行格式化處理。操作將把(212)555-1212、212-555-1212、2125551212、212555 1212或者212.555.1212等數(shù)字轉化成統(tǒng)一的電話號碼格式(2120555-1212,這既能提高數(shù)字的可讀性、又便于未來進行搜索。

我們會利用/[^0-9]+/ 這樣的正則表達式實現(xiàn)去格式化,然后通過/([0-9]{3})([0-9]{3})([0-9]{4})/表達式將內(nèi)容重新加工為新的格式,這樣最終結果才能正確處理組成分段號碼信息的212、555與1212三部分。只要愿意,我們馬上就可以對電話號碼進行二次格式化。但請注意,如果我們遇到那些因為太長或太短而不可能是電話號碼的數(shù)字對象時,也要想好對應的解決方式。

讓自由格式貫穿始終

然而一旦表格的格式更加自由,處理的難度也就隨之提升。地址就是其中最不容易打理的類型,因為它們的格式比較隨意、可能需要通過多種不同方式進行格式化。另外大家還需要留意形態(tài)萬千的街道與城市名稱。舉例來說,我們必須確保自己能正確識別“華盛頓哥倫比亞特區(qū)”、“華盛頓特區(qū)”和“華盛頓”這三種縮寫(分別為Washington,DC、Washington, DC以及Washington DC),并弄清楚"Winston-Salem, NC," "King of Prussia, PA," "Scranton, Penn.," "N. Providence RI," "Houston, tx," and "O'Fallon, IL."等令人頭痛的城市名稱與所在州名稱組合。

如果不對內(nèi)容進行嚴格界定,這些層出不窮的變化完全可能把解析器逼到崩潰,因為我們無法去除其中存在的特殊字符。另外,我們也不能指望通過不同數(shù)量的空格來區(qū)分城市名稱、州名稱、州名稱縮寫或者地名大寫等。因此,我們需要創(chuàng)建一套條件表達式,以最大程度確定這些數(shù)據(jù)所對應的實際城市與國家,甚至必須與包含美國所有城市與州名稱的標準數(shù)據(jù)庫進行比照。根據(jù)檢測結果,我們可能需要對記錄進行重新清查或者至少將對應記錄加以標記,以備日后手動檢查。

到這里,我們才僅僅剝開問題的表面。光是搞清楚每條記錄中城市、州名與電話號碼就需要我們投入大量資金與精力,更不要說重新加工并重復電子表格中的其它文本信息了——具體工作量取決于其實際內(nèi)容。

為什么會出現(xiàn)如此被動的局面?這是因為數(shù)據(jù)項使用了不受約束的自由格式,而它幾乎困擾著世界各地的每一家企業(yè)。需要強調,Excel并不是這一切問題的罪魁禍首。Access、自主開發(fā)的數(shù)據(jù)庫或者其它任何應用都可能引發(fā)此類難題。可以說,除非我們嚴格把住輸入數(shù)據(jù)的類型與格式關,否則數(shù)據(jù)積累的結果只會是一團亂麻。很顯然,解決問題的關鍵在于建立一套合適的數(shù)據(jù)庫前端來處理數(shù)據(jù)輸入:我們可以在數(shù)據(jù)進入的同時對其進行清理與調整,這將大大提高數(shù)據(jù)的準確性與可用性。準確性與可用性,這是優(yōu)先使用數(shù)據(jù)庫處理信息的主要優(yōu)勢之一。

然而我們也不能忽視利用后端處理這些數(shù)據(jù)庫集類型的努力。目前我們已經(jīng)擁有各類相當成熟的工具來簡化這一流程,但它們?nèi)詿o法在每個用例中都切實生效。盡管它們能在一定程度上讓輸入數(shù)據(jù)保持“標準”,但漏掉的部分同樣會引發(fā)問題,這種沖突甚至比不進行預處理來得更加嚴重。

這類工作相當乏味,需要技術人員將全部精力集中在細節(jié)之上。它要求我們投入大量人工進行數(shù)據(jù)檢驗、試運行、調整并對部分項目開發(fā)工作加以前瞻性考量。但總體而言,這一切付出幾乎都能獲得令人滿意的高額回報。

純潔清爽的數(shù)據(jù)令日常工作變得極富效率,這也是每家企業(yè)所追求的目標。但大家也千萬不能低估整個轉換過程中可能出現(xiàn)的嚴峻挑戰(zhàn)。

原文鏈接:http://www.infoworld.com/d/data-center/data-migration-hard-do-216342

原文標題:Data migration is hard to do

【編輯推薦】

責任編輯:彭凡 來源: 51CTO
相關推薦

2014-06-13 11:25:41

WiFi華為

2012-10-23 17:04:44

2019-08-13 16:40:14

2014-06-19 14:57:40

網(wǎng)絡·安全技術周刊

2013-08-01 10:07:45

Splunk

2013-01-21 10:46:34

公有云IaaS云計算

2025-01-17 11:10:05

2024-09-23 13:41:05

2009-09-15 16:52:19

Linq To Dat

2025-04-26 09:25:00

模型推理AI

2010-02-24 17:01:44

路由器

2024-12-05 14:50:31

2014-02-28 13:27:08

程序員代碼

2021-03-15 22:56:55

大數(shù)據(jù)技術高薪

2014-08-07 10:49:20

debugdebug技巧

2024-12-23 10:20:00

數(shù)據(jù)訓練模型

2021-06-03 12:16:18

騰訊云機器人Robotics X

2025-03-03 07:30:00

谷歌模型AI

2017-03-02 13:23:53

訂單系統(tǒng)水平分庫

2024-08-19 09:38:00

點贊
收藏

51CTO技術棧公眾號