已經忘記上女神的課是這麼有趣的一件事。進階資料庫的第一堂課,女神在黑板上畫出長長一條時間軸,標上從1940到2016的年份,要所有同學寫上你覺得直接和間接和資料庫有關的事件。
有些答案很直覺,比如說提出關聯式資料庫、SQL 語言各個版本、個人電腦普及化等等。有些則很可愛,像是我上小學、我進入清大、我選了這門課程。
老師從裡面點出了兩個時間點。第一個當然是第二次世界大戰,圖靈為了解密發明了圖靈機,成為現代電腦的雛型。接著是二戰後的經濟大蕭條,物價動盪,銀行必須知道金流現在的情況到底如何,而紙本作業已經沒辦法滿足要求。於是乎,人們開始透過打洞卡儲存資料。
Alan Turing and Turing Machine
接著我們開始討論打洞卡的缺點,比如說沒有順序性,只要弄混一張卡就毀了。比如說,資料必須擁有一致性,而在2016年的今天,有些資料庫則開始作速度與一致性之間的取捨。(ElasticSearch 在做大範圍存取的時候,會透過近似演算法捨棄一點精準度,以求更快的效能。)
科技的演進從來都不只是因為這些名詞出現在課本的下一頁下一章,它們總是圍繞著基本的問題和需求不斷衍生發展。走進吃到飽餐廳你也不會抓到什麼吃什麼,一定是因為你很餓、或者食物看起來很好吃;學習如是。

留言
張貼留言