資料庫開發(21)高階應用開發
1、效能調整包括發現和消除瓶頸,以及新增適當的硬體,如記憶體或硬碟。
基準是一些任務的標準化集合,他們有助於刻畫資料庫系統的效能特徵。
測試要求生成資料庫狀態和測試輸入,並驗證輸出是否匹配預期的輸出。
2、批量更新:允許使用單次資料庫通訊來執行多個插入操作。
巢狀子查詢:如果一個子查詢沒有被去除相關性,它會被重複的執行,這可能導致大量的隨機I/O。
批量匯入:從檔案讀取資料,以一種非常高效的方式執行完整性約束檢查以及索引維護。批量匯入/匯出功能也支援資料庫特定的二進位制格式以及XML格式。
3、在一個效能均衡的系統中,任何單個的部件都不會稱為瓶頸。一個事務向資料庫系統請求各種服務,從進入一個伺服器程式開始,在執行過程中需要讀磁碟,需要CPU週期,以及併發控制所需要的鎖。資料庫系統中請求的到達從不是均勻的,而總是隨機的。
4、可調引數:
1)最低階別是在硬體層上。這一級上調整選項包括:如果磁碟I/O是瓶頸,則增加磁碟或使用RAID系統;如果磁碟緩衝容量是瓶頸,則增加更多記憶體;如果CPU使用是瓶頸,則改用更快的處理器。
2)第二個級別由資料庫系統引數組成,比如緩衝區大小和檢查點間隔。
3)第三級別是最高階別,它包括模式和事務。
5、硬體調整:
調整事務處理系統的一個重要因素就是確保磁碟子系統能夠處理I/O操作鎖需要的速率。限制因素並不是磁碟容量,而是能夠隨機進行資料訪問的速度。把經常使用的資料放在記憶體中以減少磁碟I/O次數而增加的額外的記憶體開銷是值得的。
5分鐘規則:如果一頁在5分鐘裡被使用的次數多於一次,它就應該被儲存在記憶體中。
對於順序訪問的資料,每秒可能會讀取非常多的頁。
6、索引調整:如果經常使用範圍查詢,那麼B樹索引比雜湊索引更合適。
7、在立即檢視維護的情況下,如果一個事務的更新操作影響到物化檢視,那麼這個物化檢視必須作為該事務的一部分進行更新,因此事務的執行會變慢。在延遲檢視維護的情況下,物化檢視會在以後更新。在物化檢視更新前,物化檢視可能會與資料庫關係不一致。
8、應用系統測試:
程式測試包括設計一個測試集,即一個測試用例的集合。測試不是一次性的過程。迴歸測試包括把程式執行在測試集中的每個測試用例上,並檢查程式是否產生預期的測試輸出。
一個測試用例由兩部分組成:資料庫狀態,以及一個應用程式特定介面的輸入。
SQL查詢可能有難以捕獲的細微錯誤。在一個預期查詢和該查詢的突變上產生不同輸出的測試用例,稱為消滅突變。一個測試集應該有能消滅(大多數)經常發生的突變的測試用例。
如果一個測試用例執行對資料庫的更新,為了檢查它是否正確執行,必須驗證資料庫的內容與預期內容相匹配。因此,預期的輸出不僅包括顯示在使用者螢幕上的資料,而且包括資料庫狀態(的更新)。
由於資料庫狀態可能相當大,多個測試用例可能共享同一個資料庫狀態。
對於效能測試,測試資料庫必須和真實資料庫一樣大。
9、逆向過程包括檢查遺產系統程式碼,提出所需資料模型中的設計模式。還要檢查程式碼找出實現的程式和過程,以得到系統的高層模型。
10、ODBC允許一個客戶端同時連結到多個資料來源,並在這些資料來源之間進行切換,但各個資料來源上的事務是獨立的,ODBC不支援兩階段提交。
相關文章
- Hive 高階應用開發示例(一)Hive
- 資料庫開發(22)高階事務處理資料庫
- 資料庫應用開發一、vs資料庫
- SAP高階應用開發一書原始碼包原始碼
- CNTV資料庫高階經理田發明:SQL稽核與開發規範資料庫SQL
- JSP+JDBC資料庫應用開發初步JSJDBC資料庫
- Android應用開發進階Android
- .NET Framework 高階開發Framework
- 高階Web開發教程Web
- SAP BTE高階開發
- 從零開始學Python:21課-函式的高階應用Python函式
- 漸進式web應用開發---promise式資料庫(五)WebPromise資料庫
- 基於雲資料庫MongoDB版進行應用開發資料庫MongoDB
- 應聘高階前端開發,應該注意哪些問題?前端
- 一套高階大資料開發面試題(刷起來!!!)大資料面試題
- 用【庫存】看懂雲開發資料庫事務資料庫
- Java高階開發工程師Java工程師
- 達夢資料庫開發資料庫
- 使用js開發資料庫JS資料庫
- SQLserver本地資料庫開發SQLServer資料庫
- 資料庫開發(20)XML資料庫XML
- Oracle資料庫開發——序列Oracle資料庫
- windows phone資料庫開發Windows資料庫
- 鴻蒙原生應用開發——分散式資料物件鴻蒙分散式物件
- Windows phone應用開發[19]-RSA資料加密Windows加密
- Windows phone 應用開發[2]-資料快取Windows快取
- 高階Java開發面試解答,Java開發面試題及答案Java面試題
- 嵌入式應用開發第一階段
- 資料庫開發---常用物件-觸發器資料庫物件觸發器
- 33.企業級開發進階6:資料庫操作資料庫
- 資料網站 (開發用)網站
- 資料庫應用程式開發入門篇—— 關聯式資料庫中的基本概念資料庫
- 中高階前端開發高頻面試題前端面試題
- 招聘:PHP高階開發工程師PHP工程師
- Android高階開發突破瓶頸Android
- 智慧家居方向招聘高階前端開發前端
- ios開發-UI高階 HTTP協議iOSUIHTTP協議
- 招聘JAVA高階開發工程師Java工程師