字級:
小字級
中字級
大字級

【新知】從錄音帶到Big Data/Open Data:以庶民的使用開始,談談電腦的資料演進史(一)

今天來跟各位談點big data/open data潮流中比較接近專業的東西:big data和open data之間的資料標準。

這其實是個關鍵問題。就像餐廳廚師馬上要準備100人份的螞蟻上樹,可是廚房採買說店裡沒有冬粉只有米粉,去雜貨店買不到那麼多包冬粉、要嘛改作炒米粉不然就是要用綠豆粉和馬鈴薯從材料做起。餐廳老闆好說話就算了,如果老闆那天就是剛好要招待某個叫做「螞蟻軍團」的棒球隊和啦啦隊到別的城市去和另一團叫做「綠林大樹」的棒球隊比賽,而且都已經跟人家講好一定會招待「螞蟻上樹」這道菜,這下勢必丟了老闆的面子,事情就變得很大條了。

咦?不是資料標準嗎?怎麼講到餐廳去了?其實打了那麼多比方,要說的是一個「備料者」和「用料者」之間平常有沒有「講好」的這件事。而電腦和電腦之間要合作,最重要的就是要「平常就講好」怎麼把一組資料從「備料」的電腦傳給「用料」的電腦,而且不能讓用料的電腦拿到資料的時候來不及把要的東西做出來才行。這時就忍不住要讚嘆最初發明用「資料」這兩個漢字代表data的人了,發明這個詞的人簡直像是走了一趟現代的資訊世界,觀察到資料標準這個問題一樣。相對於「資料」,「data」的拉丁字源只有「給出來」的意思,跟「料」一點關係都沒有。

以下會沿著資料儲存的庶民記憶,以庶民使用電腦的觀點一路談到 RDBMS 與 NoSQL 資料庫,順便提到一些XML/JSON/RDF和SQL/API/SPARQL。其他資料標準的故事太多了,即使很想講也沒辦法一一講完。就像是DVD、VCD之前還有錄影帶,甚至還分成VHS大帶和beta小帶兩種格式,還要用回帶機才能跳轉從頭、錄影帶卡住了還要用手捲回去、磁頭還要用清潔帶清潔液洗乾淨、要看電影還要去錄影帶出租店租片. . . 這種資料格式的問題跟這次要說的一點關係都沒有卻還是很想講啊!(啊好像還是講了。)

資料格式的歷史,總是跟著資料儲存設備的容量和資料用量演變的,而個人電腦/家用電腦的流行,絕對是資料容量/用量演變的推手:因為有流行就會在市場上帶動需求,有需求的增加就有演進的動力,演進到除了滿足原有用途以外又出現新用途的時候,就又會創造出新的流行、產生新的市場、促進新的需求。個人電腦/家用電腦的流行,代表市場由政府/研究單位拓展到每個人都可能用到,自然便帶動資料容量/用量的需求和演進。

台灣剛開始小眾流行家用電腦(MPF-II、APPLE II)的時候,幾乎所有人都是用錄音帶,(對,就是那個三十歲以下的人幾乎都不知道是啥鬼的聽音樂用的資料儲存設備。)加上聲音連接線和錄音機來儲存程式的。能儲存的程式有多大已經不可考,但是要玩一個畫面很粗糙的射擊遊戲幾乎就要花上幾分鐘讀資料才能盡情使用。
(APPLE II  八位元家用電腦。影像來源:http://www.blogcdn.com/chinese.engadget.com/media/2011/04/theappleii.jpg)

於是磁碟機出現了,剛開始是使用5.25"的磁碟片。當時Dyson還不是個吸塵器的名牌,不過同名的磁碟片廠牌已經是業界精品的代名詞。光是看到那個咖啡色的外殼就像是看到白色的iphone外殼一樣讓人興奮。
(Dyson 5.25"磁碟片(盒裝)。影像來源:https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s320x320/e15/11372389_1620875468188612_839507601_n.jpg)

5.25"磁碟片儲存容量最高達到雙面高密度的1.2MB,雖然以目前的眼光看來容量根本小得可憐,但是以當時能在五秒內載入一個精彩的電玩便已經讓人驚艷不已。之後磁碟片的世界改由3.5"磁碟片稱霸,雖然不用翻面就可以裝得下1.44MB,而且成為業界標準、甚至成為所有軟體的存檔圖示,卻也抵擋不住硬體容量需求的大增而於2011年3月在Sony停產後走入歷史。

這是「備料者」的第一階段演進。促成這階段演進的需求,在於錄音機的讀寫速度實在太慢,「用料者」要改程式、載入資料、修改儲存資料、儲存程式等等都要等上老半天才能進行下一個動作,所以才讓人忍不住想讓龜速的磁帶設備進化成快速的磁碟設備。另外,這個階段初期還沒有什麼把資料放在電腦裡面讓人改來改去的觀念。要存資料改資料甚至讀取應用程式,都在可攜帶的儲存媒體上進行。換句話說,準備資料和傳遞資料是無法拆分的同一件事。

至於「用料者」呢?基本上是把資料和程式放在同一個可攜帶的儲存媒體,根據每個程式可以幫忙的工作在同一個地方把資料讀進來、完成工作以後再把資料在同一個地方存檔起來,此外就別無所求了。如果要把資料從一個人手上複製給另一個人,一般人的作法要嘛連接兩台讀/寫裝置(磁帶機、磁碟機)邊讀邊寫,要嘛買不起兩台讀寫裝置的話就先把資料從讀寫裝置讀到電腦記憶體、抽換儲存媒體後再由同一台讀寫裝置寫入另一個儲存媒體。要把工作上所有使用到的資料/程式從一個地點交給另一個地點的人去使用,或許就得要準備整盒分門別類的錄音帶/磁碟片,才能完整執行想達成的工作。

這個階段的演進下,可以想見的是,如果兩個地點所使用的同一組資料/程式要修改的話,也得要靠著交通工具才能從一個地點再次交到另一個地點。磁碟機的出現雖然促成資料/程式以較為合理的速度產生,但是為了減少傳遞的次數,就非得要有個比較大容量的東西放在電腦裡,才能漸次累積較多較正確的資料/程式,將檔案作整合或整理以後統一進行傳遞,以減少交通的時間以及運輸的成本。

這樣的需求造成了「備料者」的第二階段演進。資料大量儲存的時代來了。裝在電腦裡的硬碟機出現了,儲存設備不再只能儲存幾個檔案,硬碟機上「子資料夾」的概念也開始流行起來。影響所及,甚至連可攜帶的儲存媒體也跟著容量變大、體積變小,MO(磁光碟)、CD(光碟)、FlashDrive(隨身碟)、MicroSD卡等等,都在市場上(曾經)佔有一席地位。
(Verbatim MO。影像來源:http://www.tuopeek.com/image2/MO_disk.jpg)

「用料者」方面,隨著資料量的變大,資料的存取和處理又再次受到大家的注目:如果資料就只是一筆一筆的在檔案裡面躺著疊著,光是把要用的資料從一大疊的資料堆裡面挑出來,就得要讓硬碟轉一陣子才會找得到。這種現象其實在目前稍微舊一點的檔案管理系統裡還是可以見到。只要把檔案總管叫出來,按個ctrl-F尋找檔案,隨便輸入一個D槽裡沒有的檔案名稱,然後叫檔案總管去翻出來看看,檔案總管大概就要努力好一陣子才能回報說D槽沒有這個檔案了。

這麼簡單的一件事要等個十幾秒才出現結果其實算是有點慢了,但是一般人沒有一天到晚在找檔案,所以也沒什麼受到影響。換句話說如果不是這樣簡單的結構,而是一個表格的資料要和另一個表格的資料按照某個相同的欄位配對連結成第三組表格,而且處理的速度還不能慢過零點零幾秒,那問題就來了。更嚴重一點,如果資料內容攸關民眾的帳戶或是監理登記,那問題就大了。

這下勢必要有「備料者」的第三階段演進了。硬體大致上容量速度已經足夠應付使用需求,所以查詢速度太慢的問題要靠軟體。關聯式資料庫管理系統(RDBMS)就是因應這樣的需求發明出來的東西。政府單位所收集的資料、企業的人事管理、研究單位的觀測及實驗數據等等,幾乎都有RDBMS的身影,用來快速查詢可以表格化的資料。甚至不同軟硬體系統、只要是RDBMS,大部分的查詢功能都可以用事先「講好」的某一種叫做SQL的語言查詢。這個SQL語言就像是中文或英文一樣,雖然以中文或英文為官方語言的各國都有自己地方性的用法,但是同種官方語言的國與國之間,還是可以進行完整的溝通。

溝通?對。網際網路的時代來了。「用料者」之間的資料傳遞不再需要藉由交通工具和可攜帶的儲存設備達成,而且為了促進用料者之間的溝通並讓用料者對所有資料庫都有基本的查詢能力,已經產生了查詢指令標準化的需求。雖然初期的網路窄頻流量還沒讓大筆資料的傳輸達到實用的程度,但是有了共通語言後,只要經過授權,去別人的資料庫簡單查個資料已經不是一件太困難的事。

由於這個階段的演進,大量儲存在電腦裡面的資料可以很快的被調閱出來,而且有共通的語言可以用來查詢不同的資料庫。在此之前,所謂資料標準幾乎都是由儲存格式決定讀取格式,而且資料的儲存都是為了系統內部使用。網際網路還沒流行之前因為資料傳遞不易,所以也沒想到會有很多外來使用者會直接間接的操作到資料系統。網際網路的流行,讓資料的讀取成為一種共同的需求,從此用料者不再侷限於備料者所能提供的資料格式,開始參與了備料工具的演進方向,使原本以硬體為主的「資料存取標準」,變成以軟體為主的「資料交換標準」。

(待續)

推薦給朋友

2015 財團法人台灣地理資訊中心Copyright © . All Rights Reserved
台北市中正區羅斯福路一段七號六樓
TEL:+886-2-2393-1122 FAX:+886-2-2321-5954
TOP