• Top
    首頁 > 正文

    有關數據庫性能的基本知識

    Thomas LaRock,SolarWinds首席極客
    發布時間:2022-05-06 16:15        來源:賽迪網        作者:

    圖片1

    隨著數據要素市場化建設上升為中國的國家戰略,數據已成為中國企業和行業的一項戰略資源。統計數字也說明了這一點:根據中國信息通信研究院(CAICT))的統計,2020年全球數據庫市場規模為671億美元,其中中國數據庫市場規模約為240.9億元人民幣,占全球的5.2%。預計到2025年,全球數據庫市場規模有望達到798億美元,CAICT還預測中國數據庫市場規模將達到688億元人民幣,復合年增長率(CAGR)為23.4%。

    內存、CPU和索引——了解基本原理可以幫你解決難題

    數據庫對企業的成功至關重要,它幫助企業管理最重要的資產——數據,因此IT專業人士必須將提高數據庫的性能放在首位。了解數據庫是如何工作的并且知道該監控什么,對數據庫的整體性能提升至關重要。下面我們就來看一看影響數據庫性能的一些基本問題。

    內存的重要性

    內存是影響數據庫性能的關鍵因素。數據庫引擎自帶內存管理和用于管理數據檢索的內部操作系統。也就是說,數據庫會根據需要自動使用盡可能多的內存。

    與內存訪問相比,磁盤直接讀/寫的速度很慢,所以數據庫引擎會盡可能使用內存進行緩存。數據庫有一個緩存區來存儲經?;蜃罱褂玫臄祿K,因此引擎不必去磁盤檢索這些頁面。

    如果數據庫引擎的內存耗盡,它會使用一個臨時數據庫或文件系統上的一個文件來完成任務。這類似于對磁盤進行系統進程分頁,會對整體性能造成不利的影響。不過,可通過在構建和執行數據庫查詢時監控內存的使用情況來避免這種情況,幫助系統減少資源消耗。通常情況下,當內存已滿時,也可以通過增加內存來提高性能。

    在CPU中進行的工作

    CPU也是一項對數據庫性能至關重要的資源。一般情況下,如果數據庫服務器的CPU利用率很高,則說明有些方面尚未優化,比如索引等簡單的問題,或者工作量過大。即便數據庫經過優化,這些問題也有可能發生。閑置的連接可能對數據庫性能產生負面影響,它們消耗內存和CPU資源并影響整體并發。

    如果CPU利用率高于預期,請查看數據庫引擎,找到使用CPU最多的查詢并進行分析和優化。同時,找到頻繁運行并在每次運行時都消耗CPU資源的查詢,優化這些小規模的查詢將減少整體CPU的消耗,避免CPU資源被 “蠶食殆盡”。

    索引對性能的影響

    在內存和CPU之外,還有一些會影響數據庫性能的因素。除了高效的查詢結構和數據庫設計,高效的索引也能提高數據庫的性能。

    索引是數據庫中表的子集,由一個或多個表列組成,但不一定包含所有的行。索引與表相鏈接,所以當插入、更新或刪除數據時,這些操作會在數據庫標記事務完成之前先反映在索引中。

    如果沒有索引,數據庫引擎會掃描查詢中所請求的每張表的每一條記錄,而數據的刪除、更新或插入會導致其他查詢阻塞。索引顯著減少了操作的I/O量并抵消了讀寫活動的開銷,加快了查詢的執行速度。

    高效的索引對提升數據庫性能的作用顯而易見,但也不要過于依賴索引。無需為所有區域建立索引,低效的索引反而會給數據庫引擎增加工作量,導致性能問題。相反,應該集中精力為在數據庫中最能受益的區域建立索引,例如經常訪問的欄目。

    還有許多方法來優化數據庫性能,但只要掌握了這些基本知識,就可以了解數據庫中哪里在使用資源,或者哪里產生了問題。

    專題訪談

    合作站點
    stat
    乳峰高耸的少妇,亚洲精品无播放器线播放,欧美特大黄AaVv片片高清免费