数据库
body.skin-minerva .mw-parser-output table.infobox captiontext-align:center
「数据库」的各地常用別名 | |
---|---|
中国大陸 | 數據庫 |
港臺 | 資料庫 |
数据库,簡而言之可視為電子化的檔案櫃——儲存电子檔案的處所,使用者可以對檔案中的資料執行新增、擷取、更新、刪除等操作[1]。
所謂「資料庫」係以一定方式储存在一起、能予多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。一个数据库由多个表空间(Tablespace)构成。
目录
1 数据库管理系统
2 类型
2.1 关系数据库
2.2 非关系型数据库(NoSQL)
2.2.1 键值(key-value)数据库
3 数据库模型
3.1 架構
3.2 数据库索引
3.3 数据库操作:事务
4 參考文獻
5 参见
数据库管理系统
資料庫管理系统(英语:Database Management System,簡稱DBMS)是为管理資料庫而設計的电腦軟體系統,一般具有儲存、擷取、安全保障、備份等基礎功能。資料庫管理系統可以依據它所支援的資料庫模型來作分類,例如關聯式、XML;或依據所支援的電腦類型來作分類,例如伺服器群集、行動電話;或依據所用查詢語言來作分類,例如SQL、XQuery;或依據性能衝量重點來作分類,例如最大規模、最高執行速度;亦或其他的分類方式。不論使用哪種分類方式,一些DBMS能够跨類別,例如,同時支援多種查詢語言。
类型
关系数据库
MySQL
MariaDB(MySQL的代替品[2],英文维基百科从MySQL转向MariaDB[3])
Percona Server(MySQL的代替品[4] · [5])
- PostgreSQL
- Microsoft Access
- Microsoft SQL Server
- Google Fusion Tables
- FileMaker
- Oracle資料庫
- Sybase
- dBASE
- Clipper
- FoxPro
- foshub
幾乎所有的資料庫管理系統都配備了一個開放式資料庫連接(ODBC)驅動程式,令各個資料庫之間得以互相整合。
非关系型数据库(NoSQL)
BigTable(Google)- Cassandra
- MongoDB
- CouchDB
键值(key-value)数据库
Apache Cassandra(为Facebook所使用[6]):高度可扩展[7]- Dynamo
LevelDB(Google)
数据库模型
- 物件模型
- 层次模型(轻量级数据访问协议)
- 网状模型(大型数据储存)
- 关系模型
- 面向对象模型
- 半结构化模型
平面模型(表格模型,一般在形式上是一个二维陣列。如表格模型数据Excel)
架構
資料庫的架構可以大致區分為三個概括層次:內層、概念層和外層。
- 內層:最接近實際儲存體,亦即有關資料的實際儲存方式。
- 外層:最接近使用者,即有關個別使用者觀看資料的方式。
- 概念層:介於兩者之間的間接層。[8]
数据库索引
資料索引的觀念由來已久,像是一本書前面幾頁都有目錄,目錄也算是索引的一種,只是它的分類較廣,例如車牌、身份証字號、條碼等,都是一個索引的號碼,當我們看到號碼時,可以從號碼中看出其中的端倪,若是要找的人、車或物品,也只要提供相關的號碼,即可迅速查到正確的人事物。
另外,索引跟欄位有著相應的關係,索引即是由欄位而來,其中欄位有所謂的關鍵欄位(Key Field),該欄位具有唯一性,即其值不可重複,且不可為"空值(null)"。例如:在合併資料時,索引便是扮演欲附加欄位資料之指向性用途的角色。故此索引為不可重複性且不可為空。
数据库操作:事务
事务(transaction)包含一组数据库操作的逻辑工作单元,在事务中包含的数据库操作是不可分割的整体,这些操作要么一起做,要么一起回滚(Roll Back)到执行前的状态。
事务的ACID特性:
- 基元性(atomicity)
- 一致性(consistency)
- 隔离性(isolation)
- 持续性(durability)
事务的并发性是指多个事务的并行操作轮流交叉运行,事务的并发可能会存取和存储不正确的数据,破坏交易的隔离性和数据库的一致性。
网状数据模型的数据结构
网状模型
满足下面两个条件的基本层次联系的集合为网状模型。
1. 允许一个以上的结点无双亲;
2. 一个结点可以有多于一个的双亲。
參考文獻
^ 陳春旭、余明興、李建全 譯:《資料庫系統概論》第四版,儒林圖書有限公司,1986年7月,第3頁
^ mariadb. [2013-01-07].
^ Wikipedia moving from MySQL to MariaDB. [2013-01-07].
^ https://drupal.org/node/2062399
^ 存档副本. [2013-08-13]. (原始内容存档于2013-08-24).
^ 存档副本. [2013-01-07]. (原始内容存档于2013-01-25).
^ http://cassandra.apache.org/
^ 陳春旭、余明興、李建全譯,《資料庫系統概論》第四版,儒林,1986年7月,第29頁
参见
- 資料庫理論
- 資訊科技稽核
LDAP(轻量级数据访问协议)
SQL(结构化查询语言)- 資料庫管理系統
数据库管理系统(DBMS) ( ) | |
概念 | |
数据库组件 | SQL |
数据库管理系统的实现 | |
实现类型 | |
数据库产品 | 数据库组件 |
|
|
|