資料結構、sql、索引是成本最低,且效果最好的優化手段。
1. sql 以及索引的優化
首先要根據需求寫出結構良好的 sql,然後根據 sql 在表中建立有效的索引。但是如果索引太多,不但會影響寫入的效率,對查詢也有一定的影響。
2. 合理的資料庫設計
(1)根據資料庫三正規化來進行表結構的設計。設計表結構時,就需要考慮如何設計才能更有效的查詢。
資料庫三正規化:
(2)有時候可以根據場景合理地反規範化:
(3)資料庫五大約束:
(4)字段型別選擇:
3.優化的步驟
(1)**優化
第一步就應該是分析相關的**,找出相應的瓶頸,再來考慮具體的優化策略。有一些效能問題,完全是由於**寫的不合理,通過直接修改一下**就能解決問題的,比如 for 迴圈次數過多、作了很多無謂的條件判斷、相同邏輯重複多次等。
(2)定位慢 sql,並優化
由自帶的慢查詢日誌或者開源的慢查詢系統定位到具體的出問題的 sql,然後使用 explain、profile 等工具來逐步調優,最後經過測試達到效果後上線。
當在配置檔案中開啟慢查詢日誌記錄之後,就會在指定的存放目錄生成日誌檔案。
(一)語句優化
(二)合理使用索引
索引一般情況下都是高效的。但是由於索引是以空間換時間的一種策略,索引本身在提高查詢效率的同時會影響插入、更新、刪除的效率,頻繁寫的表不宜建索引。
1.索引型別
2.注意
(三)分表
1.分表方式
水平分割(按行)、垂直分割 (按列)
2.分表場景
3.水平分表策略
資料庫相關概念
一 資料庫好處 可以持久化資料到本地 磁碟 使用結構化查詢,比較容易管理 二 資料庫概念 db 資料庫,儲存資料的容器 dbms 資料庫管理系統,又稱為資料庫軟體或者資料庫產品,用於建立或者管理 db。mysql oracle sqlserver sql 結構化查詢語言,用於和資料庫通訊的語言,幾乎...
資料庫相關概念 Hadoop相關
資料庫資料庫管理系統 資料庫系統 資料庫是存放資料的地方。資料庫管理系統是管理對資料庫中的檔案,例如進行查詢 新增等操作。資料庫系統 是乙個實際可執行的儲存 維護和應用系統提供資料的 軟體系統 是儲存介質 處理物件和管理系統的集合體。它通常由軟體 資料庫和 資料管理 員組成。其軟體主要包括 作業系統...
資料庫的相關概念
資料庫定義 是相關資訊和組織良好資訊的集合,是安裝資料庫軟體時的物理檔案組成。資料庫模型定義 有組織和有序的描述儲存在計算機上的資訊集。通俗的理解就是,我把資料存在資料庫裡面,並不是雜亂無章的放進去,而是進行有效的儲存,以方便操作,所以就需要模型。層次結構資料庫模型和網路資料庫模型 層次結構資料庫模...