一、選擇合適的資料型別
1.使用可存下資料的最小的資料型別
2.使用簡單地資料型別,int
二、正規化設計
一般需要遵循第三正規化的要求
資料表結構優化 第三正規化:要求資料庫中不存在非關鍵字段對任意候選關鍵字的傳遞函式依賴
不符合第三正規化要求的表存在以下問題:
1.資料冗餘:(分類、分類描述)對於每乙個商品都會進行記錄
2.資料插入異常
3.資料更新異常
4.資料刪除異常
反正規化化
為了查詢效率的考慮把原本符合第三正規化的表適當增加冗餘,以空間換取時間
三、表的拆分
垂直拆分
把原來有很多列的表拆分成多個表,原則是:
1.把不常用的字段單獨存放到乙個表中
2.把大字段獨立存放在乙個表中
3.把經常使用的字段放在一起
水平拆分
1.對customer_id進行hash運算,如果是要拆分成5個表的話,則使用mod(customer_id,5)
2.針對不同的hashid把資料存到不同的表中
mysql效能優化學習筆記
數量比頻率更好 64位使用32位的伺服器版本 32位不能使用超過4g的內容,因此選擇的時候需要注意。myisam innodb cpu 64位的cpu執行64位的系統 高併發的場景,cpu數量比頻率重要 cpu密集型的場景和複雜sql則頻率越高越好 記憶體 i o 選擇伺服器版本,而不是桌面版本。核...
效能優化學習筆記
js css鬆散耦合盡量避免直接用js操作樣式,改為控制類名 element.classname edit 解耦應用邏輯和事件處理程式 使用常量優化效能,提公升 維護性 避免全域性查詢 優化迴圈效能乙個基本的for迴圈 for let i 0 i values.length i 乙個減值操作的for...
ORACLE SQL效能優化(學習筆記)
記錄小的表應該在from的最後 多表查詢時 寫條件時from最後的哪個表應該先寫 where條件時要先寫表之間的連線 select 字句避免用 儘量減少訪問資料庫的次數 刪除全表時用truncate替代delete 不可恢復 盡量多使用 mit 使用表的別名 alias 使用exists替代in 並...