oracle學習入門系列之一
數據庫發展與歷史
這個oracle學習入門系列是根據本人工作中的一些筆記、項目進行回憶、整理。一方面是自己知識積累,便於技能提升;另一方面是和小伙伴們共進退互通有無,做一個愛分享的好公民。當然最後也夾雜著自己的一個小心願,改掉自己重理不重文的臭毛病。想想讀書考試的時候,當時如果語文英語多個幾分,現在可能就不會落到如此。。。(咳咳~~),做IT也挺好。那就這樣開場白切入吧。
既然學習數據庫,就不能不拋幾個問題了。
1. 為什麼需要數據庫,什麼是數據庫
2. 數據庫到現在已經發展的怎麼樣,經歷了幾個過程
這兩個問題也是本篇筆記蛤蟆需要回答的,讓我們帶著問題前進吧,這個系列蛤蟆會采用這種問題驅動的模式。
本人郵箱:[email protected]
微信公眾號:HopToad
歡迎各界交流
讓我們回到20世紀年初的某一天吧,想象一下可口可樂公司的小伙伴A正忙著整理當天的銷售數據數據,給客戶分下類,按訂單大小排個序,再統計下今天賣了多少瓶飲料,完了小伙伴A就把這寫賬單放到了保密櫃離去了。(這不就是分類、排序、統計、存儲麼?)
這樣過了10年,在1911年IBM成立了,小伙伴A也加入了IBM公司。IBM有三家公司組成分別是列表機公司(1896年創立於華盛頓)、計算表公司(1901年創建於俄亥俄州代頓)和國際時代唱片公司(1900年創辦於紐約州恩迪科特)。當時IBM公司不叫IBM而是叫做CTR。看看3公司,蛤蟆表示有點醉的,前兩公司還算志同道合,第三個公司分明是賣光盤的嘛。
有了公司他們開始制作產品了,產品有哪些呢?說出來不要驚訝了,自動切肉機器(去自助餐廳裡好像經常見的),磅秤等,最重要的是穿孔卡片,而且作為公司重點,小伙伴A干活也能賣力的。就這樣過了十幾年,CTR終於在1924年更名為IBM了,也殺入了加拿大,我們認識的IBM終於出現了。
到了1932年初,那正是羅斯福一統天下的時期,由於經濟大蕭條,民不聊生啊,吃口飯都難,別說面包和牛肉了,就跟別提搞科研做產品了。可以IBM卻大力投入到卡片機上去了,沒幾年就占領了卡片機市場80~90%的份額了,簡直就是壟斷。IBM乘機開始大肆斂財,基本算是一夜暴富的節奏了。
就這樣又過了7~8年,1939年二戰爆發了,又是已發發財的機會啊。之前屯了那麼多錢不花出去不是太浪費了,果斷IBM開始生成槍支彈藥了。小伙伴A也開始去生產M1卡賓槍和勃朗寧自動步槍了。這樣來看IBM手上也占滿了鮮血啊。。。。不過蛤蟆覺的,就算IBM不去做槍,可口可樂公司也會去做的。
二戰結束後,IBM又發了次財。錢多了,IBM就開始於大學合作,搞搞什麼計算機啊,燒燒錢什麼的。
一瞅,寫了大半截了都,數據庫還沒影呢,SORRY啊,各位,接下去要快進了。
50年代IBM研制出了存儲,這個是裡程碑的事情啊,使得電子系統能替代卡片了。
1964年IBM推出了System/360大型機。IBM在60年代中期被沒過司法部調查了,因為在電腦行業實在太巨無霸了。
讓時間定格在60年吧,有了存儲有了計算機,下面呢,用他來干嘛?
這裡先提下計算機科學和數學學科,其實數學學科發展是非常快的,想想那年的歐拉顯示一只筆一張紙即可完成證明。計算機的發展是基於數學學科的,而其真正的前進則借力與物理化學等基礎科學發展及生產制造工藝的進步。
回到60年中期吧,有了存儲,計算機,然後呢?打游戲?掃地雷?
NO,NO,NO
真實的用途就是怎麼替代當年小伙伴A買可樂時候的事情(分類、排序、統計、存儲)
終於在1969年IBM公司研制了第一代數據庫,就是層次模型。產品叫做IMS。
另外美國數據庫系統語言協商CODASYL的一個小組提出了網狀模型,沒產品。(網狀,只是看起來像個網,和網沒撒關系其實)別問當時ORACLE在哪裡,ORACLE創始人拉裡埃裡森 虛歲25,估計還在學校泡妞呢。
到這裡終於能回答第一個問題了,為什麼需要數據庫?
其實就算沒有數據庫軟件,我們其實早就按著數據庫這一套在實行,如20世紀出的賣可樂小伙伴A工作的內容,只不過我們隨著人類的發展、科技的進步(存儲、計算機出現),我們就冠而堂皇的給那些之前習以為常的事情、工作進行了一些抽象,然後重新定義並增加了一些規則。
數據庫發展經歷比較好寫了,接著繼續。
第一代數據庫發展了一段是時間,IBM的小伙伴A也壽終正寢了,不過還有小伙伴B,C,D呢。小伙伴B 日以夜繼的研究數據模型,終於一夜夢見歐拉先生後頓悟。在1970年,小伙伴B 在刊物 《Communication of the ACM》上發表了題為“A Relational Model of Data for Large Shared Data banks(大型共享數據庫的關系模型)”的論文,文中首次提出了數據庫的關系模型的概念。這個小伙伴B就是有“關系數據庫之父”之稱的埃德加·弗蘭克·科德(Edgar Frank Codd或E. F. Codd)。至此終於引出了偶的Codd博士,對不住博士啊,學數據庫居然最後才請出C odd博士大名。1981年,Codd獲得圖靈獎,計算機界的諾貝爾,因為諾貝爾沒設數據獎就別提計算機獎了。
然後,拉裡埃裡森 在不顧合約未到期的情況下,1978年跑出去創建了一個公司叫做RSI;公司創建前期,拉裡還因為合約未到期在其他公司編代碼呢。大家是不是有疑問,這1970年和1977年之間的7年拉裡在干嘛呢?越戰?越戰1975年剛好結束,歇2年剛好。NO,NO,NO。拉裡就窩在老東家上班呢,就是實現Codd大師的數據庫理論,他們正在實現的數據庫名字就叫做oracle(拉裡後來將成立的公司也命名為oracle了)。到1977年拉裡大概覺得這個理論可實現的時候偷偷的跑了,不知道有些攜帶代碼逃跑,如果是的話絕對是數據庫史上第一宗代碼盜竊案啊。
然後就有在1979年夏天RSI公司推出了oracle軟件,1982年公司改名為ORACLE。
IBM也在1983年推出了DB2。
從此關系型數據庫走上高速發展道路,至今蛤蟆手上還是關系型數據軟件。