日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql结构优化_MySQL优化----数据库结构优化

發布時間:2023/12/19 数据库 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql结构优化_MySQL优化----数据库结构优化 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

數據庫結構優化

選擇合適的數據類型

數據類型的選擇,重點在于合適二字,如何確定選擇的數據類型是否合適?

1.使用可以存下你的數據的最小的數據類型。

2.使用簡單的數據類型。Int要比carchar類型在mysql處理上簡單。

3.盡可能的使用not null定義字段。

4.盡量少用text類型,費用不可時最好考慮分表。

-使用int來存儲日期時間,利用FROM_UNIXTIME(),UNIX_TIMESTAMP()兩個函數來轉換

-使用bigint來存IP地址,利用INET_AUTO(),INET_NTOA()兩個函數來進行轉換

表的范式化和反范式化

范式化是指數據庫設計的規范,目前說到范式化一般是指第三設計范式,也就是要求數據表中不存在非關鍵字段對任意候選字段的傳遞函數依賴則符合第三范式

存在以下傳遞函數依賴關系:

(商品名稱)->(分類)->(分類描述)

也就是說存在非關鍵字段”分類描述“對關鍵字段”商品名稱“的傳遞函數依賴。

反范式化是指為了查詢效率的考慮把原符合第三范式的表適當的增加冗余,以達到優化查詢效率的目的,反范式化是一種以空間來換取時間的操作。

表的垂直拆分

所謂的垂直拆分,就是把原來一個有很多列的表拆分成多個表,這解決了表的寬度問題,通常垂直拆分可以按以下原則進行:

1.把不常用的字段單獨存放到一個表中。

2.把大字段獨立存放到一個表中。

3.把經常一起使用的字段放到一起。

表的水平拆分

表的水平拆分是為了解決單表的數據量過大的問題,水平拆分的表每一個表的結構都是完成一致的。

常用的水平拆分方法為:

1.對主鍵id進行hash運算,如果要拆分五個表則使用mod(id,5)取出0-4個值

2.針對不同的hashID把數據存到不同的表中。

挑戰:1.跨分區表進行數據查詢.2.統計及后臺報表操作.

總結

以上是生活随笔為你收集整理的mysql结构优化_MySQL优化----数据库结构优化的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。