【中國資料庫前世今生】資料儲存管理的起源與現代資料庫發展啟蒙

炒香菇的书呆子發表於2024-08-20

記錄開啟本篇的目的:

作為1名練習時長2年半的DBA,工作大部分時間都在和資料庫打交道,包括Oracle,Mysql,Postgresql,Opengauss等國內外資料庫。但是對資料庫的發展史卻知之甚少。

正好騰訊雲開發者社群正在熱播:【紀錄片】中國資料庫前世今生,藉此機會瞭解資料庫發展歷史,和演變程序,既充實知識體系架構,有可以有益於讀者。

1.資料的起源

說到資料庫,大家可能並不陌生,你的銀行卡餘額可以實現從一個銀行網點存入,在另一個銀行網點取出。你的王者資料只要登入同一個賬號就能在不同裝置上打野都得益於資料庫儲存了你的"資料"。

包括駭客使用釣魚網站盜取你的資料,也是利用漏洞進入資料庫獲取你的賬號,密碼。

並在在大學中,計算機類專業學生基本上都會接觸過Mysql或者SQL Server等資料庫產品,也許,即使你工作多年,沒有從事資料庫行業,也一定會對這本書有印象吧,基本上他是學習資料庫這門課的必備書籍。

img

但是古代我們可沒有當今的資料庫,甚至上個世紀五六十年代我國也沒有資料庫,那麼前人是如何記錄資料的呢?

2. 現代資料庫出現前的資料儲存和管理

對於大部分接觸資料庫的非DBA開發者來說,使用資料庫最多的無非是增刪改查(insert,delet,uodate,select),那麼,在先到資料庫工具發明以前,人們是怎麼實現資料的增刪改查和儲存的呢

在數字化和資料庫技術普及之前,人們對資料的記錄和管理主要依賴於一些傳統的方法。這些方法雖然在效率和準確性上無法與現代技術相媲美,但它們在當時是最有效的資料管理方式,直到今天,也是人們記錄資料的方式之一。本小節將探討一些在資料庫技術出現之前,人們用來記錄和儲存管理資料的常見方法。

2.1 紙質記錄

紙質記錄是最原始的資料記錄方式之一。人們使用筆和紙來記錄資訊,如賬簿、日記、表格等。這些記錄可以手工整理和分類,但查詢特定資訊時往往需要花費大量時間。

image-20240729011421129

特點

  • 易於建立:任何人只要有紙和筆就可以開始記錄。
  • 直觀性:資訊一目瞭然,易於理解和閱讀。

缺點

  • 檢索效率低:查詢特定資訊時需要手動翻閱。

  • 易損壞:紙質記錄容易受潮、褪色或被損壞。

2.2 檔案櫃儲存

檔案櫃是紙質記錄的物理儲存解決方案。透過將記錄好的檔案、文件分類存放在檔案櫃中,可以更好地管理和保護這些記錄。

image-20240729011447581

特點

  • 組織性:透過資料夾和標籤,可以有效地組織大量文件。
  • 物理保護:檔案櫃為紙質記錄提供了物理保護。

缺點

  • 空間佔用:需要足夠的空間來存放檔案櫃。
  • 檢索不便:儘管比單純紙質記錄有所改進,但檢索特定檔案仍然不夠快捷。

2.3 索引卡片

索引卡片是一種用於快速查詢資訊的工具。每張卡片上記錄一條資訊,然後根據一定的規則(如字母順序)進行排序,以便於快速檢索。

image-20240729011725979

特點

  • 快速檢索:透過索引排序,可以快速定位到特定資訊。
  • 靈活性:卡片可以根據需要重新排序或分類。

缺點

  • 手動維護:需要人工更新和維護索引順序。
  • 資訊量限制:每張卡片只能記錄有限的資訊。

2.4 打孔卡片

打孔卡片是早期計算機中使用的一種資料輸入方式。透過在卡片上打孔來表示不同的資料,然後透過讀卡機讀取資料。

image-20240813130540935

特點

  • 機械化輸入:相比手工記錄,打孔卡片提高了資料輸入的速度。
  • 適用於早期計算機:在計算機技術發展的早期階段,打孔卡片是主要的資料輸入方式。

缺點

  • 資料限制:每張卡片能表示的資料量有限。
  • 易出錯:打孔錯誤可能導致資料錯誤。

2.5 小節

儘管這些傳統方法在現代看來效率低下,但它們在當時是最有效的資料管理方式。隨著技術的發展,資料庫的出現極大地提高了資料儲存、檢索和處理的效率。現代資料庫技術不僅提高了資料處理的速度,還增加了資料的安全性和可訪問性。

3. 現代資料的引入和發展

毫不誇張的說,在使用現代資料庫以前,人們對於資料的儲存和管理基本上是基於以上方法或者以上方法的改進最佳化來實現的。對於整個資料的管理體系十分龐大且處理效率相對低下。在儲存大量資料時,無論採用什麼方式管理,都存在巨大的人力成本浪費。

在前輩一代代的努力下,現代資料庫經過數年的發展,已經進入我們生活的方方面面,對於大部分非開發者來說,他們可能不會接觸到資料庫的開發部署,但無時無刻享受著現代資料庫發展帶來的生活便利。

3.1 現代資料庫發展起步

此階段主要是

在20世紀60年代,計算機技術剛剛起步,資料儲存主要採用人工方式,資料的維護和管理非常困難。

1946年,有個叫馮·諾依曼的人發明了計算機,最開始的計算機的主要用途是將程式指令儲存器和資料儲存器合併在一起,然後進行相應的運算。這時候的資料管理非常簡單。主要是透過大量的分類、比較和表格繪製的機器執行數百萬穿孔卡片來進行資料的處理。然而,隨著計算機的誕生和成熟,資料管理技術也迅速發展。傳統的檔案系統難以應對資料增長的挑戰,也無法滿足多使用者共享資料和快速檢索資料的需求。

此時,資料管理的主要目標是儲存和檢索資料,因此,這種簡單資料儲存階段被稱為“關聯式資料庫管理系統”。

結構化資料儲存階段隨著計算機技術的發展,到了70年代,人們開始探索如何更有效地儲存和管理資料。此時,資料管理的主要目標是提高資料的準確性和完整性,因此,結構化資料儲存階段被稱為“關聯式資料庫管理系統”。在這個階段,人們開始使用SQL(StructuredQuery Language)來操作和管理資料庫,這也是現代資料庫技術的基礎。

階段三:物件資料儲存階段到了80年代,隨著計算機技術的進一步發展,人們開始認識到,資料不僅僅是結構化的,還可能是物件化的。因此,這個階段被稱為“物件資料庫管理系統”。在這個階段,資料庫開始支援物件的概念,可以儲存和管理物件化的資料。

階段四:分散式資料庫階段隨著計算機網路技術的發展,到了90年代,人們開始探索如何分散式地儲存和管理資料。這個階段被稱為“分散式資料庫系統”。在這個階段,資料庫開始支援分散式的概念,可以在多臺計算機上儲存和管理資料。

階段五:雲端計算資料庫階段到了21世紀,隨著雲端計算技術的發展,人們開始探索如何在雲上儲存和管理資料。這個階段被稱為“雲端計算資料庫系統”。在這個階段,資料庫開始支援雲的概念,可以在雲上儲存和管理資料。

階段六:大資料資料庫階段隨著大資料技術的發展,人們開始探索如何處理和管理海量的資料。這個階段被稱為“大資料資料庫系統”。在這個階段,資料庫開始支援大資料的概念,可以處理和管理海量的資料。

站在前輩的肩膀上

本篇文章的完成了,離不開各位前輩的文章,資料分享。在此一併感謝並做標註說明。如有侵權,請聯絡本人即刻刪除。

本文引用及參考文章如下:

  1. 資料庫的發展歷程與階段從起步到現代技術的演進

相關文章