三級數據庫技術:習題筆記(1)


三級數據庫技術:習題筆記(1)

數據庫概論

1.外模式/模式映像保證了數據與程序的邏輯獨立性

數據庫的三級模式由外模式、模式、內模式構成。

外模式:是用戶可見的部門數據的存在形式。

模式:可以等價為全體數據的邏輯結構而用戶不可見,是三級模式的中間部分。

內模式:對應數據庫的物理結構和存儲方式。

當模式改變時,由數據庫管理員對各個外模式/模式的映像作相應的改變,但是外模式可以不變,從而應用程序可以不必修改,因此外模式/模式保證了數據與程序的邏輯獨立性。模式相當於一種中間層。

一個數據庫只有一個內模式,但有多個外模式!

2.一個數據庫有且只有一個主要數據文件,可以有多個次要數據文件

主要文件和次要數據文件可以存放在相同的磁盤上,也可以分開放置。

一個數據文件不可以是多個文件組的成員,日志文件不包含在文件組中。

3.數據庫用戶及系統表

數據庫用戶分為:系統管理員、對象擁有者、普通用戶

  • db_datawriter:具有增刪改查所有用戶表數據的權限。
  • db_owner:用戶具有創建數據庫對象的權限!
  • db_accessadmin:角色具有添加和刪除數據庫用戶的權限。
  • db_backupoperator:角色具有備份和恢復數據庫的權限。

4.從功能角度數據庫系統可以划分成四個層次

  • 表示層:人機界面設計。
  • 業務邏輯層:梳理DBAS的各項任務活動,將其表示為系統構件(類、模塊、組件等)
  • 數據訪問層:針對DBAS的數據處理需求設計用於操作數據庫的各類事物
  • 數據持久層:應用系統的存儲結構設計。

4.磁盤陣列RAID

  磁盤陣列是由很多便宜、容量較小、穩定性較高、速度較慢的磁盤組成一個大型的磁盤組,利用個別磁盤提供數據所產生的加成效果提升整個磁盤的系統性能。RAID技術主要包含RAID0~RAID50,其中RAID可以提高讀取性能和很高的數據安全性和可用性,而RAID5更適合與小數據塊和隨機讀寫的數據,要提高讀寫速度,RAID1比較合適

關於游標

  游標主要用於 T-SQL 批、存儲過程以及觸發器當中,其作用是存儲一個結果集,並能通過循環將這個結果集里的數據一條條取出來進行處理

  1、定位到結果集的某一行; 
  2、從當前結果集的位置搜索一行或部分行; 
  3、允許對結果集中的當前行進行數據修改。 

關於索引

語法:

索引技術:

  索引是對數據庫表中一列或多列的值進行排序的一種結構,使用索引可快速訪問數據庫表中的特定信息。如果想按特定職員的姓來查找他或她,則與在表中搜索所有的行相比,索引有助於更快地獲取信息。

  數據庫索引好比是一本書前面的目錄,能加快數據庫的查詢速度。索引分為聚簇索引非聚簇索引兩種,聚簇索引 是按照數據存放的物理位置為順序的,而非聚簇索引就不一樣了;聚簇索引能提高多行檢索的速度,而非聚簇索引對於單行的檢索很快。

  ....聚集索引的鍵值可以重復

復合索引:

  用戶在多個列上簡歷索引,這種索引叫做復合索引。復合索引在數據庫操作期間所需的開銷更小,可以代替多個單一索引。當表的行數遠遠大於索引鍵的數目時,這種方式可以明顯加快表的查詢速度。對於復合索引:

  • 對於一張表來說,如果有一個復合索引就沒有必要建立一個單索引。
  • 如果查詢條件需要,可以在已有單索引的情況下,添加復合索引對於效率有一定的提高。
  • 對於復合索引,在查詢時,最好將WHERE條件順序作為索引列的順序,這樣效率最高!
  • 復合索引最好首先加載值域范圍變化較大的項上。

索引考點:

  1. 在數據庫文件的主碼屬性集上建立的索引成為主索引。

索引的使用原則:

  1. .經常在查詢中用作條件的列應當添加索引。
  2. 頻繁進行排序或分組的列(即進行ORDER BY或GROUP BY)的列,應當為其添加索引。
  3. 一個列的值域很大時,應當為其添加索引。
  4. 如果待排序的列有多個,應當在這些列中添加復合索引。

數據庫語法問題

1.自身連接

如果連接操作是一個表與其自己進行連接,稱為表的自身連接。語法格式:

SELECT 查詢內容 FROM 表明 表別名1,表名 表別名 2 .....

SELECT 查詢內容 FROM 需要連接表1 JOIN 需要連接表2 ON.....

2..CHECK約束和觸發器類似,都可以實現用戶自定義約束

創建表時指出CHECK約束:

CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CHECK (Id_P>0)
)  

對已有表添加CHECK約束:

ALTER TABLE Persons
ADD CHECK (Id_P>0)

3.標量函數

  標量函數是返回單個函數值的函數,標量函數中不適用於SET語句

4.將查詢結果保存到新的表中

SELECT *  INTO NEW_TABLE FROM OLD_TABLE;

數據庫故障及恢復策略

  在數據庫運行過程中,可能會出現各種各樣的故障,這些故障可分為以下三類:事務故障、系統故障和介質故障。應該根據故障類型的不同,采取不同的恢復策略。

1.事務故障及其恢復:

  事務故障表示由非預期的、不正常的程序結束所造成的故障。
  造成程序非正常結束的原因包括輸人數據錯誤、運算溢出、違反存儲保護、並行事務發生死鎖等

2.系統故障及其恢復:

  系統故障是指系統在運行過程中,由於某種原因,造成系統停止運轉,致使所有正在運行的事務都以非正常方式終止,要求系統重新啟動。引起系統故障的原因可能有硬件錯誤(如CPu故障、操作系統)或DBMS代碼錯誤、突然斷電等。

3.介質故障及其恢復

  介質故障是指系統在運行過程中,由於輔助存儲器介質受到破壞,使存儲在外存中的數據部分或全部丟失。
  這類故障比事務故障和系統故障發生的可能性要小,但這是最嚴重的一種故障,破壞性很大,磁盤上的物理數據和日志文件可能被破壞,這需要裝入發生介質故障前最新的后備數據庫副本,然后利用日志文件重做該副本后所運行的所有事務。

2.數據庫應用系統的性能指標

  包括:數據操作性應該的時間或數據訪問響應時間,系統吞吐量、允許並發訪問的最大用戶數、每TPS代價值。

3.數據庫的恢復順序

 

數據庫建模

1.UML設計

  • 用例圖:系統[長方框]、角色[]、用例[橢圓]

2.DFD建模方式

DFD建模方式,也被稱為過程建模和功能建模方法,核心是數據流

DFD方法由四種基本元素(模型對象)組成: 數據流、處理、數據存儲和外部項
 

 

(1)數據流(Data Flow)
  數據流用一個箭頭描述數據的流向,箭頭上標注的內容可以是信息說明或數據項。
(2)處理(Process)
  表示對數據進行的加工和轉換,在圖中用矩形框表示。指向處理的數據流為該處理的輸入數據,離開處理的數據流為該處理的輸出數據。
(3)數據存儲
  表示用數據庫形式(或者文件形式)存儲的數據,對其進行的存取分別以指向或離開數據存儲的箭頭表示。
(4)外部項
  也稱為數據源或者數據終點。 描述系統數據的提供者或者數據的使用者,如教師、學生、采購員、某個組織或部門或其他系統,在圖中用圓角框或者平行四邊形框表示。

 

 3.IDEF1X建模

IDEF0t圖的基本元素是矩形框和箭頭,矩形框代表功能活動.....

(1) 包含數據的有關事物。例如:人、概念、地方和事物等等用盒子來表示。
(2) 事物之間的聯系用連接盒子的連線來表示。
(3) 事物的特征用盒子中的屬性名來表示。
 

 4.3N范式說明

 

數據庫設計的各個階段

系統設計

  • 概念設計
    • 數據庫概念模型設計
    • 系統總體設計
  • 邏輯設計
    • 數據庫邏輯結構設計
    • 應用程序概要設計
    • 數據庫事物概要設計
  • 物理設計
    • 數據庫物理結構設計
    • 數據庫事物詳細設計
    • 應用程序詳細設計  

系統規划與定義

  • 任務陳述
  • 確定任務目標
  • 確定系統范圍和邊界
  • 確定任務視圖

實現和部署階段

  • 建立數據庫結構
  • 數據加載
  • 事物和應用程序的編碼及測試
  • 系統集成
  • 測試和試運行
  • 系統部署

運行和維護階段:

  • 數據庫的轉儲和恢復;
  • 系統監控與分析(定期檢查CPU、內存使用情況)
  • 數據庫的安全性和完整性控制;
  • 數據庫性能的監控分析和改進
  • 數據庫的重組和重構

數據庫轉儲

  • 完全轉儲:對數據庫中的所有數據進行轉儲,此種方法占用較多的時間和空間。
  • 差量轉儲:對最近一次數據庫完全轉儲以來發生變化的數據庫進行轉儲。
  • 增量轉儲:只復制上次轉儲后發生變化的文件或數據塊。增量轉儲所需的時間和空間都比較短,但增量存儲只能和完全轉儲配合,才能對數據庫進行恢復。增量轉儲所需時間比完全轉儲時間長。

數據倉庫

數據倉庫是一個面向主題的集成的非易失的且隨時間變化的數據集合,用來支持管理人員的決策。

粒度越大,綜合程度越高;粒度越小,表示綜合成都越小。

粒度越小,細節成都越高,空間代價也越大。

分布式數據庫

基本特征

  • 本地自治
  • 非集中式管理
  • 高可用性

分片透明性

分片透明性是最高級別的透明性,位於全局概念模式和分片模式之間。分片透明性是指數據分片是用戶無需考慮的,完全透明的,在編寫程序時用戶只需要對全局關系進行操作

  • 全局外模式:全局應用的用戶視圖,即終端用戶看到的邏輯上並未分布的表、視圖等;
  • 全局概念模式:描述全體數據的邏輯結構和特征;
  • 分片模式:描述每個數據片段以及全局關系到片段的映像,是分布式數據庫系統中全局關系到片段的映像,是分布式系統中全局數據的邏輯划分視圖。

數據庫性能優化

存儲優化

  • 物化視圖
  • 聚集

 .......


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM