亚洲精品久久久久久第一页-人妻少妇精彩视品一区二区三区-91国产自拍免费视频-免费一级a在线播放视频正片-少妇天天日天天射天天爽-国产大屁股喷水视频在线观看-操美女骚穴抽插性爱视频-亚洲 欧美 中文字幕 丝袜-成人免费无码片在线观看

國內(nèi)外個人免費云服務(wù)器推薦 liunx服務(wù)器搭建與管理( 四 )


自從你的網(wǎng)站支持了動態(tài)能力,免不了要和數(shù)據(jù)庫打交道,但隨著用戶的增長,你發(fā)現(xiàn)數(shù)據(jù)庫的查詢速度越來越慢 。
這個時候,你需要:
數(shù)據(jù)庫索引技術(shù)想想你手上有一本數(shù)學(xué)教材,但是目錄被人給撕掉了,現(xiàn)在要你翻到講三角函數(shù)的那一頁,你該怎么辦?
沒有了目錄,你只有兩種辦法,要么一頁一頁的翻,要么隨機翻,直到找到三角函數(shù)的那一頁 。
對于數(shù)據(jù)庫也是一樣的道理,如果我們的數(shù)據(jù)表沒有“目錄”,那要查詢滿足條件的記錄行,就得全表掃描,那可就惱火了 。所以為了加快查詢速度,得給數(shù)據(jù)表也設(shè)置目錄,在數(shù)據(jù)庫領(lǐng)域中,這就是索引 。
一般情況下,數(shù)據(jù)表都會有多個字段,那根據(jù)不同的字段也就可以設(shè)立不同的索引 。
索引的分類主鍵索引聚集索引非聚集索引主鍵我們都知道,是唯一標識一條數(shù)據(jù)記錄的字段(也存在多個字段一起來唯一標識數(shù)據(jù)記錄的聯(lián)合主鍵),那與之對應(yīng)的就是主鍵索引了 。
聚集索引是指索引的邏輯順序與表記錄的物理存儲順序一致的索引,一般情況下主鍵索引就符合這個定義,所以一般來說主鍵索引也是聚集索引 。但是,這不是絕對的,在不同的數(shù)據(jù)庫中,或者在同一個數(shù)據(jù)庫下的不同存儲引擎中還是有不同 。
聚集索引的葉子節(jié)點直接存儲了數(shù)據(jù),也是數(shù)據(jù)節(jié)點,而非聚集索引的葉子節(jié)點沒有存儲實際的數(shù)據(jù),需要二次查詢 。
索引的實現(xiàn)原理索引的實現(xiàn)主要有三種:
B+樹哈希表位圖其中,B+樹用的最多,其特點是樹的節(jié)點眾多,相較于二叉樹,這是一棵多叉樹,是一個扁平的胖樹,減少樹的深度有利于減少磁盤I/O次數(shù),適宜數(shù)據(jù)庫的存儲特點 。
哈希表實現(xiàn)的索引也叫散列索引,通過哈希函數(shù)來實現(xiàn)數(shù)據(jù)的定位 。哈希算法的特點是速度快,常數(shù)階的時間復(fù)雜度,但缺點是只適合準確匹配,不適合模糊匹配和范圍搜索 。
位圖索引相對就少見了 。想象這么一個場景,如果某個字段的取值只有有限的少數(shù)幾種可能,比如性別、省份、血型等等,針對這樣的字段如果用B+樹作為索引的話會出現(xiàn)什么情況?會出現(xiàn)大量索引值相同的葉子節(jié)點,這實際上是一種存儲浪費 。
位圖索引正是基于這一點進行優(yōu)化,針對字段取值只有少量有限項,數(shù)據(jù)表中該列字段出現(xiàn)大量重復(fù)時,就是位圖索引一展身手的時機 。
所謂位圖,就是Bitmap,其基本思想是對該字段每一個取值建立一個二進制位圖來標記數(shù)據(jù)表的每一條記錄的該列字段是否是對應(yīng)取值 。
索引雖好,但也不可濫用,一方面索引最終是要存儲到磁盤上的,無疑會增加存儲開銷 。另外更重要的是,數(shù)據(jù)表的增刪操作一般會伴隨對索引的更新,因此對數(shù)據(jù)庫的寫入速度也是會有一定影響 。
你的網(wǎng)站現(xiàn)在訪問量越來越大了,同時在線人數(shù)大大增長 。然而,大量用戶的請求帶來了后端程序?qū)?shù)據(jù)庫大量的訪問 。漸漸的,數(shù)據(jù)庫的瓶頸開始出現(xiàn),無法再支持日益增長的用戶量 。老板再一次給你下達了性能提升的任務(wù) 。
緩存技術(shù) && 布隆過濾器從物理CPU對內(nèi)存數(shù)據(jù)的緩存到瀏覽器對網(wǎng)頁內(nèi)容的緩存,緩存技術(shù)遍布于計算機世界的每一個角落 。
面對當前出現(xiàn)的數(shù)據(jù)庫瓶頸,同樣可以用緩存技術(shù)來解決 。
每次訪問數(shù)據(jù)庫都需要數(shù)據(jù)庫進行查表(當然,數(shù)據(jù)庫自身也有優(yōu)化措施),反映到底層就是進行一次或多次的磁盤I/O,但凡涉及I/O的就會慢下來 。如果是一些頻繁用到但又不會經(jīng)常變化的數(shù)據(jù),何不將其緩存在內(nèi)存中,不必每一次都要找數(shù)據(jù)庫要,從而減輕對數(shù)據(jù)庫對壓力呢?


以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請您及時就醫(yī)或請專業(yè)人士給予相關(guān)指導(dǎo)!

「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對您有所幫助: