【ITOO】--SQL資料庫優化:切割、資料庫連線池
上篇講到了考試過程中,開發人員需要關注cpu和記憶體。sql日誌也不容忽視,sql日誌中顯示了資料庫作業系統的報錯日誌,給排錯提供了很大的便利。
考試的資料庫中寫入了一些監聽死鎖和當前最耗資源語句的SQL語句。可以及時的監控死鎖和了解當前考試進行到哪一步,是抽題,還是答題,還是交卷。
其中,聽到了兩個詞:切割、資料庫連線池。
後來查了一下,發現這兩種方法都可以從不同的程度上對資料庫的效能進行優化。
一、切割
橫向切割:
就是把行分類,常用的兩種是按照時間、索引劃分。時間劃分:比如5年的歷史資料,根據二八定律,1年的資料可能就足夠滿足大部分的業務需求,所以單獨的把1年的資料拿出。這樣查詢起來效率會更高。索引劃分:比如部門編號,各個車間只儲存自己車間的零件資訊,把各個車間的資訊分成單獨的表更加方便查詢。
縱向切割:
就是所謂的列切割。大資料的時候,列的個數直接影響到存取效果。
例項分割:
就是把共同的業務部分抽象,分別儲存在不同的資料庫中。例如賬戶資料庫(儲存使用者資訊)、日誌資料庫(儲存監測資料)……
例項物理儲存分割:
大資料的時候,放到不同的伺服器上統計資訊,可以通過分散式計算,大大提高運算速度。
二、資料庫連線池
顧名思義,就是盛放資料庫連線的池子,擁有分配、管理、釋放資料庫連線的能力。
具體就是初始化的時候,建立一定量的資料庫連線放到連線池中,使用者訪問資料庫的時候,無需建立新的連線,直接從連線池中拿就可以了,用完了再放回去。就像公共汽車似的,下車了,別人還可以接著來。30個座位,肯定能保證2個人在用,汽車司機和售票員,這個是最小連線數;來50個人,車只能放下30個,30就是最大連線數。剩下的幾個人就只能排隊等下一班車了。
好處:
資料庫連線是一種關鍵的昂貴的有效的資源,資料庫連線池增加了系統的伸縮性和健壯性。很少改動,就可以實現高吞吐量和低延遲和高效能。釋放時間>最大空閒時間,容易造成資料庫連線遺漏,連線池的接力賽很好的避免了這一問題。
三、總結
學習就是把理論應用於實踐,希望以後做系統能把自己學到的理論知識很好的應用到實踐當中,加油!
相關文章
- 資料庫連線池-Druid資料庫連線池原始碼解析資料庫UI原始碼
- 《四 資料庫連線池原始碼》手寫資料庫連線池資料庫原始碼
- 資料庫連線池原理資料庫
- Flask資料庫連線池Flask資料庫
- python資料庫連線池Python資料庫
- 資料庫優化SQL資料庫優化SQL
- 資料庫優化 - SQL優化資料庫優化SQL
- 【MySQL】自定義資料庫連線池和開源資料庫連線池的使用MySql資料庫
- 聊聊資料庫連線池 Druid資料庫UI
- 資料庫連線池實現資料庫
- Javaweb-資料庫連線池JavaWeb資料庫
- 手寫資料庫連線池資料庫
- Python資料庫連線池DButilsPython資料庫
- 【資料庫】查詢優化之子連線優化資料庫優化
- MYSQL資料庫------SQL優化MySql資料庫優化
- 第 67 期 Go database/sql 資料庫連線池分析GoDatabaseSQL資料庫
- MySql資料庫連線池專題MySql資料庫
- Java Druid資料庫連線池+SpringJDBCJavaUI資料庫SpringJDBC
- JavaWeb之事務&資料庫連線池JavaWeb資料庫
- mysql資料庫連線池配置教程MySql資料庫
- 資料庫連線池優化配置(druid,dbcp,c3p0)資料庫優化UI
- MySQL 資料庫與 SQL 優化MySql資料庫優化
- 【資料庫】優化SQL語言資料庫優化SQL
- Golang 全域性sql資料庫連線GolangSQL資料庫
- c#連線SQL Server資料庫C#SQLServer資料庫
- 帶你進入資料庫連線池資料庫
- 資料庫連線池技術詳解資料庫
- Spring Boot整合Druid資料庫連線池Spring BootUI資料庫
- druid資料庫連線池的配置類UI資料庫
- Springboot 整合阿里資料庫連線池 druidSpring Boot阿里資料庫UI
- Druid資料庫連線池使用體驗UI資料庫
- 淺談JDBC和資料庫連線池JDBC資料庫
- 【資料庫資料恢復】sql server資料庫連線失效的資料恢復案例資料庫資料恢復SQLServer
- java 資料庫程式設計(一)JDBC連線Sql Server資料庫Java資料庫程式設計JDBCSQLServer
- 用Navicat連線資料庫-資料庫連線(MySQL演示)資料庫MySql
- 連線資料庫資料庫
- 「資料庫、資料庫連線池、資料來源」這些概念你真的理解了嗎?資料庫
- 資料庫連線池的實現及原理資料庫
- 資料庫連線池_druid基本使用&工具類資料庫UI