国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 開(kāi)發(fā) > 綜合 > 正文

關(guān)系型數(shù)據(jù)庫(kù)工作原理-數(shù)據(jù)庫(kù)整體框架(翻譯自Coding-Geek文章)

2024-07-21 02:52:37
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

本文翻譯自Coding-Geek文章:《 How does a relational database work》。原文鏈接:http://coding-geek.com/how-databases-work/#Buffer-Replacement_strategies 本文翻譯了如下章節(jié), 介紹數(shù)據(jù)庫(kù)整體框架:

這里寫圖片描述

Global overview

所謂的數(shù)據(jù)庫(kù)是指一組易于訪問(wèn)和修改的數(shù)據(jù)集合。但是,但是一組簡(jiǎn)單的文件也能實(shí)現(xiàn)這個(gè)功能。實(shí)際上,最近簡(jiǎn)單的一些數(shù)據(jù)庫(kù)系統(tǒng)如SQLLite實(shí)現(xiàn)的功能與一組文件沒(méi)有大的差異。但是,SQLLite可以算作設(shè)計(jì)得非常優(yōu)秀的一組文件。因?yàn)樗С郑?

通過(guò)事務(wù)管理保證了數(shù)據(jù)的安全性和一致性。 大數(shù)據(jù)快速處理能力,能處理百萬(wàn)級(jí)的數(shù)據(jù)。

我們現(xiàn)在來(lái)了解一下數(shù)據(jù)庫(kù)包含哪些重要的組件,請(qǐng)看這張數(shù)據(jù)數(shù)據(jù)庫(kù)架構(gòu)圖。

這里寫圖片描述

在寫下這篇文章之前,我已經(jīng)研究了大量關(guān)于如何實(shí)現(xiàn)數(shù)據(jù)庫(kù)的書籍、文檔、甚至源代碼。因此,別太在意我為何要這樣設(shè)計(jì)數(shù)據(jù)庫(kù)的架構(gòu)圖,以及這些組件為何取這樣的名字。針對(duì)這篇文檔,我做了一些取舍。真正需要關(guān)注的是這些組件承擔(dān)的不同職責(zé)。 一句話,數(shù)據(jù)庫(kù)是由一組相互交互,功能不同的組件構(gòu)成的系統(tǒng)。

The core components

The PRocess manager 進(jìn)程管理器。許多數(shù)據(jù)庫(kù)都有專用的進(jìn)程池或者線程池管理。甚至,僅僅為了獲得納秒級(jí)的性能提升,許多現(xiàn)代處理器設(shè)計(jì)了專用的線程,代替操作系統(tǒng)的線程。

The network manager 網(wǎng)絡(luò)管理。對(duì)于分布式數(shù)據(jù)庫(kù)來(lái)講,網(wǎng)絡(luò)I/O是一個(gè)關(guān)鍵問(wèn)題。所以設(shè)計(jì)了專用的網(wǎng)絡(luò)管理器。

File system manager 文件系統(tǒng)管理。磁盤I/O是數(shù)據(jù)庫(kù)最關(guān)鍵的性能瓶頸(Disk I/O is the first bottleneck of a database)。設(shè)計(jì)一個(gè)文件管理器能完美的與操作系統(tǒng)的文件系統(tǒng)交互,甚至替換操作系統(tǒng)的文件系統(tǒng)是非常主要的。

The memory manager 內(nèi)存管理。為了避免頻繁的磁盤I/O操作,通過(guò)一個(gè)塊大的內(nèi)存來(lái)緩存數(shù)據(jù)是必須的。但是,有了大的內(nèi)存緩存,就需要對(duì)它高效的管理。特別是有大量查詢并發(fā)訪問(wèn)內(nèi)存緩存的時(shí)候。

Security Manager 安全管理。管理用戶授權(quán)和權(quán)限認(rèn)證。

Client manager 客戶端管理。管理客戶端的連接。

The tools

Backup manager 備份管理。數(shù)據(jù)庫(kù)備份與恢復(fù)。

Recovery manager 數(shù)據(jù)庫(kù)恢復(fù)系統(tǒng)。數(shù)據(jù)庫(kù)崩潰后重啟,保證數(shù)據(jù)庫(kù)的一致性。

Monitor manager 監(jiān)控系統(tǒng)。日志記錄數(shù)據(jù)庫(kù)的活動(dòng)狀態(tài),并提供功能監(jiān)控?cái)?shù)據(jù)庫(kù)系統(tǒng)。

Administration manager 系統(tǒng)管理。元數(shù)據(jù)存儲(chǔ)管理(例如表名、表結(jié)構(gòu))。提供工具管理數(shù)據(jù)表結(jié)構(gòu)、存儲(chǔ)空間配置等。

The query Manager

Query parser 查詢解析器。SQL編譯,檢查查詢語(yǔ)句的有效性。

Query rewriter 查詢重寫器。SQL前置優(yōu)化。

Query optimizer 查詢優(yōu)化器。對(duì)SQL語(yǔ)句做性能上的優(yōu)化(類似C++編譯器優(yōu)化代碼執(zhí)行路徑,提升執(zhí)行效率)。

Query executor 查詢執(zhí)行器。編譯SQL代碼,執(zhí)行查詢數(shù)據(jù)庫(kù)操作。

The data manager

Transaction manager 事務(wù)管理。啟動(dòng)/提交/回滾事務(wù)。

Cache manager 緩存管理。在讀取數(shù)據(jù)之前將數(shù)據(jù)提前加載到內(nèi)存;在修改數(shù)據(jù)之后將數(shù)據(jù)持久化到磁盤。

Data access manager 數(shù)據(jù)訪問(wèn)管理器。操作磁盤上的數(shù)據(jù)文件。

接下來(lái)的章節(jié),我將重點(diǎn)介紹數(shù)據(jù)庫(kù)如果執(zhí)行一條SQL的查詢操作。通過(guò)三部分展開(kāi): - the client manager—客戶端管理 - the query manager—查詢管理 - the data manager —數(shù)據(jù)管理

本文為博主原創(chuàng)文章,未經(jīng)博主允許不得轉(zhuǎn)載。其它文章請(qǐng)?jiān)L問(wèn):http://blog.csdn.net/ylforever


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 临武县| 东台市| 宿州市| 保德县| 铁力市| 阿坝县| 田阳县| 辽宁省| 营山县| 福贡县| 咸宁市| 长垣县| 高邑县| 桂平市| 湖口县| 温泉县| 永和县| 修水县| 钦州市| 漳平市| 龙川县| 漳浦县| 凌源市| 阳谷县| 新沂市| 嘉善县| 杭锦旗| 东乌| 商河县| 凭祥市| 青龙| 迭部县| 桓台县| 沂水县| 玉山县| 南澳县| 肇东市| 皮山县| 县级市| 集贤县| 治多县|