三级数据库技术思维导图
生活随笔
收集整理的這篇文章主要介紹了
三级数据库技术思维导图
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
三級數據庫技術 Administrator 2019-09-24 約束性 UNIQUE約束 強調不是主鍵的唯一性約束 PRIMARY KEY約束 強調主鍵不可以出現相同元素 允許出現空值 不允許出現重復值 不允許出現空值 通過事務等待圖來實現死鎖檢測 并行數據服務器的兩種結構 完全共享資源結構 完全不共享資源結構 對每個數據項的存取都要經過公共通訊線路 所有處理器共享 內存,磁盤資源 高功能計算機系統由多個較小的系統組成 每個站點都要實現全局數據目錄,每個站點有獨立的內存和磁盤對該站點的服務器 數據倉庫 為了構建新的分析處理環境而出現的一種數據存儲和組織技術 特征 數據是面向主題的、集成的、非易失的、隨時間不斷變化的 粒度 是指數據的細化程度 細化程度越高,粒度就越小 細化程度越低,粒度就越大 日志文件 日志的寫入順序和并行事務執行的時間必須一致 只有這樣才能在數據庫恢復時進行redo,undo操作,保證數據的一致性不會產生臟數據 為了保證數據庫是可恢復的,必須先寫日志再寫數據庫 事務恢復同樣需要日志 數據恢復 首先恢復完全備份,其次恢復差異備份,最后恢復日志備份(Norecovery用來備份尾日志 備份 master只支持完全數據庫備份操作 目的 是通過高速通信介質連接多個可獨立處理的單元以并行執行的方式完成對數據庫系統的互聯查詢、內部查詢及各種內部操作 分布式數據庫 目的 實現場地自治和數據全局透明共享。 集中式指所有數據片斷都安排在一個場地上 分割式指全局數據有且只有一份,它們被分割成若干片段,每個片段被分配在一個特定場地上 全復制式是在每個站點上都有全局數據的復制樣本,數據的冗余性最大 混合式指全局數據被分為若干個數據子集,每個子集被安排在一個或多個不同的場地上,但是每個場地未必保存所有數據。 聯機 聯機事務處理 OLTP 聯機分析處理 OLAP OLTP是對數據庫聯機的日常操作,通常是對一條記錄的查詢和修改 要求快速響應用戶的請求,對數據的安全性、完整性及事物吞吐量要求很高。 OLAP是對數據的查詢和分析操作,通常是對海量歷史數據的查詢和分析 要訪問的數據量非常大,查詢和分析操作十分復雜 OLAP為宏觀分析 面向中上層和決策者使用 OLTP為微觀操作 面向企業的中下層業務人員使用 是周期性的生成事務等待圖進行檢測,不是執行每個事務都進行檢測 小知識 增加冗余列可以減少查詢過程中的JOIN連接操作 檢測事務等待圖并撤銷回路中的某個事務是在數據庫應用系統運行過程中由DBMS完成的工作 程序設計中預防死鎖的辦法 事務按同一順序訪問資源 將大事務切成若干個小事務、采用小事務模式, 使用綁定連接 差異備份 從最近一次完整備份到當前時間數據庫中變化的 數據和日志 使用日志備份不能降低數據庫的備份空間 分布透明性 分片透明性:是最高層次,指的是用戶或應用程序只對全局關系進行操作而不必考慮關系分片的情況 位置透明性:是下一層次,指用戶或應用程序只需了解數據分片情況,而不必了解片段的存儲場地 局部數據模型透明性:指的是用戶或用戶程序不必了解局部場地上使用的是哪種數據模型,但是必須了解全局數據的分片情況,還需了解各片斷的副本復制情況及各片斷和它們副本的場地位置分配情況 DBAS性能指標 索引 聚集索引:索引項的順序與表中記錄的物理順序一致 數據模型三要素 ①數據結構 研究對象類型的集合 是對系統靜態特征的描述 從語法角度表述了客觀世界中數據對象本身的結構和數據對象之間的關聯關系 ②數據操作 是對數據庫中對象的實例允許執行的操作的集合 主要指檢索和更新(插入、刪除、修改)兩類操作 數據模型必須定義這些操作的確切含義、操作符號、操作規則(如優先級)以及實現操作的語言。 ③數據完整性約束 數據操作是對系統動態特性的描述。 是一組完整性規則的集合,規定數據庫狀態及狀態變化所應滿足的條件 以保證數據的正確性、有效性和相容性。 數據庫三級模式結構 ③內模式也稱存儲模式或物理模式 它是數據物理結構和存儲結構的描述,是數據在數據庫內部的表示方式。 ①外模式也稱子模式或用戶模式 是數據庫用戶(包括應用程序員和最終用戶)看見和使用的局部數據的邏輯結構和特征的描述,是數據庫用戶的視圖,是與某一應用有關的數據的邏輯表示 外模式是模式的子集,一個數據庫可以有多個外模式。 ②模式也稱邏輯模式 并且一個數據庫只有一個內模式。 是數據庫中全體數據的邏輯結構和特征的描述,是所有用戶的公共數據視圖 它是數據庫系統模式結構的中間層,不涉及數據的物理存儲細節和硬件環境 與具體的應用和所使用的開發工具及高級程序設計語言無關。 數據庫系統的三級模式結構是指數據庫由外模式、模式和內模式三級構成,并通過二級映象功能將三個模式聯系起來。 需求分析常用的建模方法 DFD建模方法 DFD建模方法的核心是數據流,它能精確地在邏輯上描述系統的功能、輸入、輸出和數據存儲等,從而擺脫了其物理內容。 數據流圖是系統邏輯模型的重要組成部分。 特性 ①抽象性:在DFD中具體的組織機構、工作場所、物質流等都已經去掉,只剩下信息和數據存儲、流動、使用以及加工的情況。所以描述的是抽象出來的數據。 ②概括性:它把系統對各種業務的處理過程聯系起來考慮,形成一個總體,可反映出數據流之間的概括情況。 XML數據庫 主要包括XEDB,NXD和HXD三種 因為XML文檔本身標記知識文檔本身的描述, 需要經過解析 才能達到用途 構建數據倉庫不是把各種應用集中在一起,而是利用企業信息生成數據,以面向主體,集成的方式合理組織數據,解決數據分析 數據庫應用系統設計 1.概念設計 2.邏輯設計 3.物理設計 每個步驟的設計活動按照數據組織與存儲、數據訪問與處理、應用設計等幾個方面進行 采用 自下而上的ER設計 將關系模式轉換為具體DBMS平臺支持的關系表 設計視圖和關系模式的完整性約束 數據庫 主要用于提取數據中的潛在信息和知識 不做匯總和統計 位于全局概念模式和分片模式之間 ①數據操作響應時間,或數據訪問響應時間; ②系統吞吐量,即指系統在單位時間內可以完成的數據庫 事務或查詢 的數量; ③允許并發訪問最大用戶數; ④每TPS(Price per TPS)代價值。 IDEF0方法 UML方法 自頂向下逐步細化的結構化分析方法 適合索引使用的條件 ①在經常需要搜索的列上,可以加快搜索的速度 ②在經常使用連接的列上(這些列主要是一些外鍵)可以加快連接的速度, 在經常需要根據范圍進行搜索的列上創建索引,因為索引已經排序,其指定的范圍是連續的; ③在經常使用WHERE子句中的列上面創建索引,加快條件的判斷速度。 不適合索引的條件 ①對于那些在查詢中很少使用或者參考的列不應該創建索引 ②對于那些只有很少數據值的列也不應該創建索引 3經常進行更新的列不適宜創建索引。 代碼 讓用戶u1在數據庫DB1中具有查詢T1表的權限 GRANT SELECT ON DB1(T1) TO u1 數據庫物理設計不包括文件和數據庫的具體實現細節(創建文件,創建數據庫以及如何加載數據) 元數據 如數據庫中數據字典就是一種元數據 DBMS數據字典、數據庫結構證明文檔、前端應用程序表中數據庫的定義及說明文檔都是元數據 工作內容 數據庫邏輯結構設計 數據庫事務概要設計 SAD 32ezdw-+ 工作內容 數據庫邏輯模式調整 文件組織與存取設計 數據分布設計 安全模式設計 確定系統配置 物理模式評估 SQL中的操作符 ①IN 確定給定的值是否與子查詢或列表中的值相匹配,選擇與列表中的任意一個值匹配的行; ②EXCEPT 指在第一個集合中存在,但是不存在于第二個集合中的數據 ③INTERSECT 是指在兩個集合中都存在的數據 ④UNION 操作符用于合并兩個或多個SELECT 語句的結果集 請注意,UNION內部的SELECT 語句必須擁有相同數量的列。 列也必須擁有相似的數據類型。同時,每條SELECT語句中的列的順序必須相同 四個層次 ①表示層 位于最外層,離用戶最近,用于顯示數據和接受用戶輸入的數據 ②業務邏輯層 表示層和數據訪問層之間通信的橋梁,主要負責數據的傳遞和處理,例如數據有效性的檢驗、業務邏輯描述相關功能。 業務邏輯層概要設計包括:結構、行為、數據接口、故障處理、安全設計、系統維護與保障等方面的內容 ③數據訪問層 主要實現對數據的保存和讀取操 ④數據持久層 業務邏輯層的主要任務是梳理DBAS的各項業務活動,將其表示為各種系統構件(如類、模塊、組件等) 包含INTO子句的SELECT語句的語法格式為: SELECT 查詢列表序列INTO<新表名>FROM數據源 數據庫系統實施的活動 創建數據庫 裝載數據 應用程序的編碼和調試 數據庫的試運營 ODS 是數據倉庫體系結構中的一個可選部分,ODS具備數據令庫的部分特征和OLTP系統的部分特征 它是“面向主題的、集成的、當前或接近當前的、不斷變化的“數據 第一類ODS數據更新頻率是秒級, 第二類ODS的數據更新頻率是小時級, 第三類ODS的數據更新頻率是天級,上述三類是根據數據更新的速度劃分的 ODSIV:第四類ODS是根據數據來源方向和類型劃分的。 方法 創建觸發器 定義事務隔離性級別 數字簽名用于數據防篡改 定義主碼是用于實體的完整性 UML模型 協作圖主 用于描述對象在空間中如何交互,即除了動態交互,它也直接描述了對象如何鏈接在一起的情形 狀態圖 用于描述一個對象在其生存期間的動態行為,表現為一個對象所經歷的狀態序列,引起狀態轉移的事件,以及因狀態轉移而伴隨的動作 一般可以用狀態機對一個對象的生命周期建模,狀態圖用于顯示狀態機,重點在與描述狀態圖的控制流 順序圖 用于描述指定的一組對象是如何交互的,它著眼于消息隊列,也就是在消息間如何發送和接收信息。 部署圖 描述的是系統運行時的結構,展示了硬件的配置及其軟件如何部署到網絡結構中。 一個系統模型只有一個部署圖,部署圖通常用來幫助理解分布式系統。 以程序為媒介把表現層或服務層的數據持久化,他位于物理層和數據訪問層之間的 需求分析階段 從對數據組織與存儲的設計角度,辨識應用領域所管理的各類數據項和數據結構, 與數據處理需求分析結果一起,組成數據字典,形成"數據規范說明書"。 數據處理需求分析 ②功能需求分析 功能需求分析主要針對DBAS應具有的功能進行分析,是DBAS需求分析的核心環節,總體上可分為數據處理需求分析與業務規則需求分析。 3性能需求分析 性能需求則描述了系統應當做到什么程度,分析DBAS應具有的性能指標。 ④其他需求分析包括:存儲需求、安全性需求等。 a.存儲需求分析:存儲需求分析是指估計DBAS系統需要的數掘存儲量,如DB所存儲的數扼總量。 b.安全需求分析:主要用于數據庫安全設計,避免被非法使用和攻擊。 數據處理需求分析從數據訪問和處理的角度,明確對各數據項所需要進行的數據訪問操作 減少死鎖發生數量 1各個事務應順序訪問共享資源,將復雜的、大的事務分解成多個簡單、小的事務; 2按同一順序訪問對象; ③事務隔離性級別; 4.使用綁定連接; 5.靈活使用顯示加鎖技術等。 數據庫文件 每個數據庫有且僅有一個主要數據文件,可以有多個次要數據文件 每個數據庫必須至少有-一個日志文件,也可以有多個日志文件。 日志文件不能包含在文件組內。一個文件不可以是多個文件組的成員。 服務器容錯技術 :主-備方式(Active - Standby方式) 即指的是一臺服務器處于某種業務的激活狀態(即Active狀態), 另一臺服務器處于該業務的備用狀態(即Standby狀態) 該方式的特點是當Active狀態服務器出現故障的時候,通過軟件診斷將Standby機器激活,保證系統在最短時間內恢復正常使用。 雙主機方式(Active-Active方式) 即指兩種不同業務分別在兩臺服務器上互為主備狀態(即Active-Standby和Standby-Active狀態), 優點是兩臺服務器切換速度快,數據庫連接不中斷,應用不受影響。 SQL Server 2008三種恢復模式 1.簡單恢復 無日志備份。自動回收日志空間以減少空間需求,實際上不再需要管理事務日志空間。 最新備份之后的更改不受保護。在發生災難時,這些更改必須重做。只能恢復到備份的結尾。 2.完整恢復 需要日志備份。數據文件丟失或損壞不會導致丟失工作。 可以恢復到任意時點(例如應用程序或用戶錯誤之前)。 3.大容量日志恢復 需要日志備份。是完整恢復模式的附加模式,允許執行高性能的大容量復制操作。 通過使用最小方式記錄大多數大容量操作,減少日志空間使用量。 SQL Server支持對數據庫中的一個數據文件進行還原的操作,在還原過程中數據庫自動處于脫機狀態,其它的文件不能進行讀寫操作,因此將受到一定的影響。 關鍵字CLUSTERED表明該索引屬于聚集索引 SQL Server固定數據庫 角色及其權限如下: db-owner:具有在數據庫中進行全部操作的權限,包括配置、維護數據庫及刪除數據庫。 db-accessadmin:可以添加或刪除數據庫用戶的權限。 db-securityadmin:具有管理數據庫角色、角色成員以及數據庫中的語句和對象的權限。 db-ddladmin:具有執行數據定義語言(DDL)的權限。 db-backupoperator:具有備份數據庫、備份日志的權限。 db-datareader:具有查詢數據庫中所有用戶數據的權限 。 db.datawriter:具有插入、刪除和更新數據庫中所有用戶數據的權限。 db.denydatareader:不允許具有查詢數據庫中所有用戶數據的權限,等同于對所有的表和視圖授予了DENY SELECT權限。 db_denydatawriter:iA有INSERT,DELETE和UPDATE數據庫中所有用戶數據的權限。 數據流用 箭頭表示 處理用 矩形框表示 數據存儲用 圓角矩形框表示 外部項用 圓角框或者平行四邊形框表示 進行事務設計 進行應用系統的存儲結構設計 clustered 表示表創建聚集索引 數據庫運行維護與優化 數據庫的轉儲和恢復 數據庫的安全性和完整性控制 數據庫性能的監控分析和改進 數據庫的重組和重構 其中引入匯總表是屬于數據庫性能優化的一部分。 對象間的通信用對象生命線之間的水平消息線表示,箭頭說明消息的類型,如同步、異步或簡單。 順序圖可以表示遞歸過程,當一個操作調用它本身時,消息總是同步的。 在順序圖中可以描述如何創建和銷毀對象,創建或銷毀一個對象的消息一般是同步的。 順序圖中的消息可以有條件,并規定只有條件為真時才可以發送和接收消息,如果條件之間不互相排斥,則消息可能會并行發出。 觸發器 不能在視圖上定義AFTER型觸發器 標量函數中不適用SET語句 架構 在刪除架構時,如果使用CASCADE選項,則會將該架構中的所有架構對象一起全部刪除; 如果使用RESTRICT選項,如果被刪除的架構中包含架構對象,則拒絕刪除此架構。故答案為D項。 強制存取控制 僅當主體的許可證級別不低于客體的密級時,該主體才能讀取相應的客體 僅當主體的許可證級別不高于客體的密級時,該主體才能寫相應的客體。 范圍劃分 有利于范圍查詢及點查詢; 輪轉法 最適合于掃描整個關系的應用,在掃描時可以并行的從n個磁盤讀取數據,負載均衡,充分發揮了并行性; 散列劃分 適合于點查詢。 活動圖主要用于描述系統、用例和程序模塊中邏輯流程的先后執行次序 在使用TOP限定結果集中, WITH TIES表示包括最后一行取值并列的結果 TOP n表示取查詢結果的前n行數據 TOP n percent表示取查詢結果的前n%行數據 可以使用DROP FUNCTION語句從當前數據庫中刪除一個或多個用戶自定義函數 INSERTED表用于存儲INSERT和UPDATE語句所影響的行的副本。 用戶自定義函數主要包括標量函數和表值函數兩類。 如果要使某用戶可以將授予他的權限再轉授給其他用戶,那么在授權語句中需 上WITH GRANT OPTION選項。 本地自治、非集中式管理以及高可用性是分布式數據庫最基本的特征。 索引 創建索引 CREATE INDEX 索引名 ON 表名(列名) 默認為非聚集索引 創建唯一索引 CREATE UNIQUE INDEX 索引名 ON 表名(列名) 創建聚集索引 CREATE CLUSTERED INDEX 索引名 ON 表名(列名) 創建唯一性聚集索引按列名降序 CREATE UNIQUE CLUSTERED INDEX 索引名 ON 表名(列名 DESC) 五種約束類型 主鍵(PRIMARY KEY)約束、 外鍵(FOREIGN KEY)約束、 唯一(UNIQUE)約束、 缺省(DEFAULT)約束 檢查(CHECK)約束。 授權和收權 GRANT:允許一個數據庫用戶或角色執行所授權限指定的操作; DENY:拒絕一個數據庫用戶或角色的特定權限,并且阻止它們從其他角色中繼承這個權限; REVOKE:收回已經授予的權限。 三類OLAP技術 ①基于關系型數據庫的OLAP(ROLAP,Relational OLAP); ②基于多維數據庫的OLAP(MOLAP,Multi- Dimensional OLAP); 3.混合型OLAP(HOLAP,Hybrid OLAP) ER圖轉換為關系模式 1、將實體轉化為同名的關系,實體的屬性就是關系的屬性,實體的主碼就是關系的主碼 2、將一對多關系的m端的主屬性為主碼, 1端的主碼為m端的屬性并且為外碼 3、多對多的實體還是作為本身的關系,屬性還是自身的 4、多對多的聯系作為關系,兩邊的主碼作為屬性,是主碼同時也是外碼 四層建模概念框架 元元模型層 元模型層 模型層 用戶模型層 兩端加鎖協議保證事務調度的可串行性 并行數據庫中一維數據的劃分方法 (1)輪轉法:最適合于掃描整個關系; (2)散列劃分法:比轉轉法更適合點查詢,也適合順序掃描關系; (3)范圍劃分法:明顯利于范圍查詢和點查詢。 在SQL Server 2008中,對于更新操作的觸發器,系統將產生兩張邏輯工作表 DELETED表 INSERTED表 用于存儲更新前數據 用于更新后的數據 知識發現的三個步驟 數據準備 數據挖掘 結果的解釋評估 日志文件格式 以記錄為單位的日志文件 以數據塊為單位的日志文件 DBAS的性能指標 1、數據操作響應時間(或數據訪問響應時間):從提交請求到返回結果的時間 ②系統吞吐量:指系統在單位時間內所完成的事務或查詢的數量,單位為TPS; 3、允許并發訪問的最大用戶數:在保證響應時間的前提下,系統最多允許多少用戶同時訪問數據庫 ④每TPS代價值,用于衡量系統性價(性能價格)比的指標。 數據庫性能優化 數據庫性能優化一般可以從 數據庫運行環境、 數據庫參數調整、 模式調整、 數據庫存儲優化和查詢優化進行操作 只有物化視圖屬于數據庫性能優化中的存儲優化內容。 需求分析過程 標識問題 建立需求模型 描述需求 確認需求 DFD和IDEFO可用于建立需求模型 DFD和IDEFO可用于建立需求模型;而IDEF2用于系統模擬,建立動態模型。 組成IDEFO圖的基本元素 矩形框 箭頭 矩形框代表功能活動 子主題 其中矩形框左邊的輸入箭頭 表示完成活動需要的數據 矩形框上方的控制箭頭 描述了影響整個活動執行的事件或約束條件 右邊的輸出箭頭說明由活動產生的結果及信息 下方進入的機制箭頭 表示實施該活動的物理手段或完成活動需要的資源(計算機系統、人或組織)。 在IDEF1X中一個非確定聯系又稱為多對多關系或m:n聯 避免事務中的用戶交互 盡量縮短事務的長度 減少占有鎖的時間 盡量使用記錄級別的鎖(行鎖),少使用表級別的鎖 前觸發器 后觸發器 使用INSTEAD OF選項定義的觸發器為前觸發器 使用FOR或者AFTER選項定義的觸發器為后觸發的觸發器 只有在引發觸發器執行的語句中的操作都已成功執行,并且所有的約束檢查也成功完成后,才執行觸發器 SQL Server 2008數據庫中主要數據文件大小最小不能小于3MB RAID1提高了讀寫速度,加強了系統的可靠性,但是磁盤的利用率低; RAID5寫入數據的速度比對RAID1慢,但是磁盤的利用率比RAID1高,存儲成本相對較低 如果使用WITH DIFFERENTIAL關鍵字則表明采用差異備份。 在集中式數據庫系統中,查詢代價主要是由CPU代價和I/0代價來衡量的 在分布式數據庫系統中主要由通信代價衡量 無共享結構被認為是支持并行數據庫系統的最好并行結構, 它通過最小化共享資源來降低資源競爭的概率,具有極高的可擴展性,并可在復雜數據庫查詢處理和聯機事務處理過程中達到近線性的加速比 無共享結構比較適合OLTP之類的應用。 IDEF1X方法 直角矩形框用于表示獨立實體集 圓角矩形框用于表示從屬實體集 三層B/S架構系統 表示層 應用層 數據層 表示層位于客戶端,由Web瀏覽器實現 應用層位于Web應用服務器,實現面向具體應用領域的業務規則 數據層位于數據庫服務器,通過DBMS完成具體的數據存儲和數據存取等數據管理功能。 聲明游標的語法是:DECLARE游標名 cursor FOR SQL語句 增加冗余列的調優方法是指在多個表中增加具有相同語義的列,它常用來在查詢時避免連接操作。 分割表的調優方法 水平分割會給應用增加復雜度,特別是在查詢所有數據時需要union操作 垂直分割使得數據行變小,一個數據頁就能存放更多的數據,在查詢時就會減少I/0次數,從而提高系統性能,但其缺點是查詢所有數據時需要Join(連接)操作。 在UML的狀態機圖中,狀態之間的轉移是由事件驅動的。 數據庫 Created With MindMaster
總結
以上是生活随笔為你收集整理的三级数据库技术思维导图的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端学习(2306):react之组件使
- 下一篇: 前端学习(2045)vue之电商管理系统