数据库
数据库,简单来说是本身可視為電子化的檔案櫃——儲存电子檔案的處所,使用者可以對檔案中的資料執行新增、擷取、更新、刪除等操作。[1]
数据库指的是以一定方式储存在一起、能为多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。
目录 |
数据库管理系统[编辑]
資料庫管理系统(英语:Database Management System,簡稱 DBMS)是为管理資料庫而設計的电腦軟體系統,一般具有儲存、擷取、安全保障、備份等基礎功能。資料庫管理系統可以依據它所支援的資料庫模型來作分類,例如關聯式、XML;或依據所支援的電腦類型來作分類,例如伺服器群集、行動電話;或依據所用查詢語言來作分類,例如 SQL、XQuery;或依據性能衝量重點來作分類,例如最大規模、最高執行速度;亦或其他的分類方式。不論使用哪種分類方式,一些 DBMS 能够跨類別,例如,同時支援多種查詢語言。
类型[编辑]
关系数据库[编辑]
幾乎所有的資料庫管理系統都配備了一個開放式資料庫連接(ODBC)驅動程式,令各個資料庫之間得以互相整合。
面向对象的关系型数据库[编辑]
非关系型数据库(NoSQL)[编辑]
- BigTable(Google)
键值(key-value)数据库[编辑]
- Apache Cassandra (为Facebook所使用[4]):高度可扩展[5]
- Dynamo
- LevelDB(Google)
数据库模型[编辑]
架構[编辑]
資料庫的架構可以大致區分為三個概括層次:內層、概念層和外層。
- 內層:最接近實際儲存體,亦即有關資料的實際儲存方式。
- 外層:最接近使用者,即有關個別使用者觀看資料的方式。
- 概念層:介於兩者之間的間接層。[6]
数据库索引[编辑]
資料索引的觀念由來已久,像是一本書前面幾頁都有目錄,目錄也算是索引的一種,只是它的分類較廣,例如車牌、身份証字號、條碼等,都是一個索引的號碼,當我們看到號碼時,可以從號碼中看出其中的端倪,若是要找的人、車或物品,也只要提供相關的號碼,即可迅速查到正確的人事物。
另外,索引跟欄位有著相應的關係,索引即是由欄位而來,其中欄位有所謂的關鍵欄位(Key Field),該欄位具有唯一性,即其值不可重複,且不可為"空值(null)"。例如:在合併資料時,索引便是扮演欲附加欄位資料之指向性用途的角色。故此索引為不可重複性且不可為空。
数据库操作:事务[编辑]
事务(Transaction)是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位。 事务的 ACID 特性:
- 原子性(Atomicity)
- 一致性(Consistency)
- 隔离性(Isolation)
- 持续性(Durability)
事务的并发性是指多个事务的并行操作轮流交叉运行,事务的并发可能会存取和存储不正确的数据,破坏交易的隔离性和数据库的一致性。
相关條目[编辑]
參考文獻[编辑]
- ^ 陳春旭、余明興、李建全譯,《資料庫系統概論》第四版,儒林,1986年7月,第3頁
- ^ mariadb. [2013-01-07].
- ^ Wikipedia moving from MySQL to MariaDB. [2013-01-07].
- ^ http://wiki.apache.org/cassandra/%E9%A6%96%E9%A1%B5
- ^ http://cassandra.apache.org/
- ^ 陳春旭、余明興、李建全譯,《資料庫系統概論》第四版,儒林,1986年7月,第29頁
| 数据库管理系统(DBMS) () | |
|
概念 |
|
|
数据库组件 |
SQL |
| 数据库管理系统的实施 | |
|
实施类型 |
|
|
数据库成分 |
|
|
||||||||||||||||||||||||||||||||||||||||||||