數據庫,故名思議,就是存放數據庫倉庫。我下面從幾個角度描述下數據庫。
數據庫到底指的是什么?我們先看看百度中對數據庫的專業解釋:
所謂“數據庫”是以一定方式儲存在一起、能與多個用戶共享、具有盡可能小的冗余度、與應用程序彼此獨立的數據集合。這個解釋比較抽象,通俗的講,數據庫就是一種計算機領域特殊的配合軟件系統的數據存儲,他們主要用來在硬盤或其它介質上存儲和管理數據,比如我們經常聽說的PostgreSQL、SQLite、MySQL、SQLServer、Oracle、Access等等,都是數據庫、又都可以管理數據庫的軟件系統。
數據庫發展簡史1970年,IBM的研究員E.F.Codd博士在刊物《Communication of the ACM》上發表了一篇名為“ARelational Model of Data for Large Shared Data Banks”的論文,提出了關系模型的概念,奠定了關系模型的理論基礎。
這篇論文被普遍認為是數據庫系統歷史上具有劃時代意義的里程碑。后來Codd又陸續發表多篇文章,論述了范式理論和衡量關系系統的12條標準,用數學理論奠定了關系數據庫的基礎。
1974年,IBM的Ray Boyce和DonChamberlin將Codd關系數據庫的12條準則的數學定義以簡單的關鍵字語法表現出來,里程碑式地提出了SQL(StructuredQuery Language)語言。
隨后,Oracle的創始人LarryEllison敏銳意識到在這個研究基礎上可以開發商用軟件系統。幾個月后,Ellison他們就開發了Oracle 1.0。
1988年,為解決企業集成問題,IBM公司的研究員BarryDevlin和Paul Murphy創造性的提出了一個新的術語──數據倉庫(DataWarehouse)。
……
當下流行的數據庫都有那些?數據庫發展到當下,衍生出關系型數據庫、NoSQL數據庫和NewSQL數據庫三條線。關系型數據庫基于傳統關系型模型;NoSQL顛覆了關系型數據庫的關系模型、試圖用另一種角度表達越來越復雜多元化數據;NewSQL則兼顧綜合了兩者的優點。
當下比較流行的關系型數據庫,主要分為商業型關系型數據庫和開源關系型數據庫,商業型關系型數據庫主要包括DB2、Oracle、SQLServer、Informix等;開源關系型數據庫,主要包括PostgresSQL、MySQL、SQLite等。
當下比較流行的NoSQL數據庫,根據特性有四大分支,即鍵值類、文檔類、列式、圖形類。鍵值類以Redis為代表;文檔類以CouchDB、MongoDB為代表、列式以Cassandra、HBase為代表;圖形類以Neo4為代表。
當下比較流行的NewSQL系統,國外的我就不說了,國內一幫高手開發了一套名為TiDB的NewSQL系統,語法兼容MySQL,非常不錯。