資料庫優化是整個網站性能優化的最基礎的一個環節,因為,大多數網站性能的瓶頸都是開在資料庫IO操作上,雖然提供了緩存技術,但是對資料庫的優化還是一個需要認真的對待。一般公司都有自己的DBA團隊,負責資料庫的創建,數據模型的確立等問題,不像我們現在幾個不懂資料庫優化的人只能在網上找一篇篇資料庫優化的文章,自己去摸索,並沒有形成一個系統的資料庫優化思路。
對於資料庫的優化來說,是一種用技術換金錢的方式。資料庫優化的方式很多,常見的可以分為:資料庫表結構優化、SQL語句優化、分區、分表、索引優化、使用存儲過程代替直接操作等 。
b) 在一個千萬級的資料庫查尋中,如何提高查詢效率?:http://blog.csdn.net/xlgen157387/article/details/44156679
另外,再設計資料庫表的時候需不需要創建外鍵,使用外鍵的好處之一可以方便的進行級聯刪除操作,但是現在在進行數據業務操作的時候,我們都通過事物的方式來保證數據讀取操作的一致性,我感覺相比於使用外鍵關聯MySQL自動幫我們完成級聯刪除的操作來說,還是自己使用事物進行刪除操作來的更放心一些。當然可能也是有適用的場景,大家如有很好的建議,歡迎留言!
對於SQL的優化,主要是針對SQL語句處理邏輯的優化,而且還要根據索引進行配合使用。另外,對於SQL語句的優化我們可以針對具體的業務方法進行優化,我們可以將執行業務邏輯操作的資料庫執行時間記錄下來,來進行有針對性的優化,這樣的話效果還是很不錯的!例如下圖,展示了一條資料庫操作執行調用的時間: