資料庫 (DB, Database)


資料庫(Database)是系統化儲存、管理和檢索數據的工具。

為了方便理解,我們可以先很簡單地把資料庫理解成很多用來存資料的表格的集合,後面會再做更詳細的說明。

資料庫的分類

通過不同的模型和架構,資料庫可以處理結構化、半結構化和非結構化的數據。

類型 說明 範例
結構化數據 (Structured Data) 格式固定,遵循定義好的 schema 資料表(例如 users table)
半結構化數據 (Semi-structured Data) 沒有固定格式,但會用標籤或 key-value 表示語意 JSON:{"姓名": "小明", "興趣": ["Coding", "跑步"]}
非結構化數據 (Unstructured Data) 沒有明確結構,難以直接用 table 表示 聲音、圖片、影像

以下介紹兩種常見的資料庫類型:

關聯式資料庫(RDBMS, Relational Database Management System)

最常見的資料庫形式,處理結構化的數據,數據被存放在表格中,並通過關聯(即表格之間的關係)來管理。

可以想像各種文書編輯軟體的表格功能, 你會先選有幾個欄位並且填上每個欄位要寫的東西,要加入一筆資料的時候,就按下新增一列,然後填入已經設定好的對應欄位資料。

id name email
1 Alyssa [email protected]
2 Ella [email protected]

常見應用:帳號管理

常見系統: MySQL、PostgreSQL

非關聯式資料庫(NoSQL Database):

非關聯式資料庫主要用來處理大量非結構化或半結構化的數據。

可以想像每一筆資料就是一張便條紙,上面的資料欄位不見得都相同,若以社交媒體的貼文數據來想像,更新之後新增了一個在貼文放音樂的功能,這時不需要把整個資料庫的欄位都更新加上音樂這個欄位,更新之後的資料上自己多加這個欄位就好。

常見應用:社交媒體的用戶行為數據、電子商務網站上的商品評論等