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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

物理设计介绍

發布時間:2024/4/13 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 物理设计介绍 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
所謂的數據庫的物理設計呢,就是根據所選擇的關系型數據庫的特點,對邏輯數據庫中,所建立的模型,進行具體的存儲結構的設計,針對我們的MYSQL,進行物理設計階段呢

主要包括以下的一些內容,首先定義數據庫表,及字段的命名規范,接下來就是要選擇合適的存儲引擎,為表中的字段建立合適的數據類型,以及建立數據表的具體的結構,現在我們依次來看一下每一項中,所具體的工作

首先是定義數據庫,表,字段的命名規范,我們當前的程序項目,開發往往是多個人協作完成的,所以為了工作中的工作方便,我們就需要為數據庫,表,字段,起名字呢,都有一個共同約定的規范,這個就稱之為命名規范,符合我們約定的命名規范呢,來建立數據庫,表,在大家不用查看數據字典的情況下呢,可以基本的知道,這個庫表中,以及表中的字段中,大概的內容是什么,要做到這一點呢,我們在對數據庫命名時呢,有以下幾個原則,首先第一個原則稱之為可讀性原則,而所謂的可讀性原則呢,就是說,在對數據庫起名時呢,我們應該盡量的使名稱有更好的可讀性,比如使用下劃線來分割不同的單詞,或者對每個單詞的首字母進行大寫,不過要注意的是,對于MYSQL來說,表名的大小寫呢,是敏感的,所以我們使用大小寫字母的方式呢,來區分命名不同的部分呢,可能會在以后我們的使用中呢,造成不必要的麻煩,而第二個要遵守的規范呢,表意型原則,也就是在我們給命名時呢,應該給表起有意義的名字,例如呢,我們剛才在設計訂單表中,起名叫ORDER表,也可以起名為t1表,但是顯然啟用order這個命名呢,要比t1更能夠體現這種表中所存儲的內容,所以我們要選中order這個表名,而數據庫命名的最后一個原則呢,就稱之為長名性原則,而有些開發人員呢,進行命名時喜歡比較短的名字,這種命名方法呢,往往使得,名字無法體現出所代表的內容,所以第三個原則實際上就是要求我們,在進行數據庫對象命名時呢,盡量少的使用或者是不使用縮寫,當然對象的名字也不能太長,否則使用起來就不方便了,所以對于以上原則呢,還要把握一個適度的原則,按照物理設計的步驟呢,下面就要選擇合適的存儲引擎了

前面的內容中呢,對于MYSQL常用的存儲引擎,以及各自的特點呢,都做過一個詳細的介紹,所以我們在這里就不再做重復的說明了,下表列出了mysql存儲引擎的特點,我們從這個表中也可以看出,我們的業務使用什么樣的存儲引擎比較合適,下面我們簡單地來看一下這張表

首先說一下MyISAM存儲引擎,他呢是非事務的,并且它的鎖粒度呢,是表級鎖,它主要應用呢,是select和insert這種場景下,忌用在讀寫比較頻繁的表中,因為在讀寫比較頻繁的表下呢,他很容易進行鎖表,所以會阻塞我們并發的查詢,性能也不會太好,MRG_MYISAM呢,實際上和MYISAM是差不多的了,他只不過是把多個MYISAM表呢,合成一個表來使用,所以他同樣是支持表級鎖的,它主要應用場景呢,主要用于分段歸檔啊,數據倉庫的情況下,而且禁用在全局查詢過多的情況下,因為如果全局查詢的多呢,性能就會很差,因為多個表查詢之后再進行匯總,而Innodb呢,同樣我們說過了,它是支持事務的存儲引擎,并且支持MVC的行級鎖,主要應用場景呢,事務處理,當然了,之前我們也說過,除了事務處理,實際上在大多數場景中呢,都可以使用Innodb,所以他的忌用場景是無,而Archive存儲引擎呢,它是不支持事務的,同樣他的鎖是行級鎖,之前我們介紹過,他的主要適用場景呢,主要是用于日志記錄,或者只支持insert,和select操作,對于其他的delete,update操作呢,它是不支持的,所以如果想要用到隨機讀取,或者更新刪除,是不適合使用的,最后Ndb存儲引擎,這個是MYSQL集群存儲引擎,同樣他支持行級鎖,同樣他的作用場景是高可用的場景,但是要注意呢,當前NDB存儲引擎呢,要求把數據呢,全部存儲在內存中的,效率并不高,在大部分應用中是不建議使用的

?

總結

以上是生活随笔為你收集整理的物理设计介绍的全部內容,希望文章能夠幫你解決所遇到的問題。

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