本文最初發布於scalegrid的部落格,經授權由infoq中文站翻譯並分享。
哪些資料庫是2023年的「大勢」?在developerweek上,我們詢問了數百名開發人員、工程師、軟體架構師、開發團隊和it領導者,以了解當前nosql與sql的使用情況、最流行的資料庫、需要跟蹤的重要指標以及最耗時的資料庫管理任務。通過本文,你可以了解mysql、mongodb、postgresql、redis和其他許多資料庫管理系統的最新資訊,看看今年最受歡迎的資料庫管理系統是哪乙個。
任何資料庫管理員都知道,你必須問自己的第乙個問題是,應用程式是使用sql還是nosql資料庫。這兩者有什麼區別?
sql資料庫也稱為關係型資料庫,基於結構化查詢語言(sql)定義和運算元據。sql資料庫是最常用的資料庫,對於處理結構化資料非常有用。結構化資料是指組織資料元素,並標準化它們之間以及與不同屬性之間的關係。
nosql資料庫也稱為非關係型資料庫,允許使用動態模式儲存和檢索非結構化資料。nosql由於其建立獨特結構的靈活性而被廣泛使用,它可以把文件、圖、列,甚至是鍵值組織為資料結構。
幾十年來,sql資料庫一直領先於非關係型資料庫,但是,隨著mongodb、redis和cassandra等資料庫的流行,nosql正在迅速縮小差距。儘管許多組織選擇從遺留資料庫(如oracle)遷移,但並非所有組織都採用nosql方式。根據我們的調查,隨著對postgresql等系統的需求不斷增長,sql仍然佔據了60%的市場份額。
sql資料庫使用率: 60.48%
nosql資料庫使用率:39.52%
那麼,2023年,哪些資料庫最受歡迎?我們了解到,超過3/5的受訪者使用sql,你可能會認為oracle搶了風頭。再猜一遍。mysql以38.9%的使用率高居榜首,其後依次是mongodb(24.6%)、postgresql(17.4%)、redis(8.4%)和cassandra(3.0%)。oracle僅以1.8%的使用率排在這些資料庫之後,而couchdb、berkeley db、microsoft sql server、redshift、firebase、elasticsearch和influxdb的使用者總和僅佔2.4%。
雖然這些數字可能令人震驚,但毫無疑問,mysql、mongodb和postgresql正變得越來越流行。那麼,該調查與最知名的資料庫管理系統趨勢相比如何呢?資料庫引擎排名——流行趨勢報告將這些領導者排在了前5位,但oracle仍然保持在第1位,而microsoft sql server位列第3位。
雖然按照我們的預期,到場的oracle資料庫使用者會多得多,但在世界最大的開發博覽會上,oracle使用者卻來的很少。
與將所有的雞蛋都放在乙個籃子裡的傳統策略相比,多資料庫型別的使用在過去10年出現了**式增長。那麼有多少?在我們交流過的組織中,有將近一半實際上使用了不止一種型別的資料庫來支援他們的應用程式,而不是單個資料庫!使用多個資料庫的比例為44.3%,使用乙個資料庫的比例為55.7%:
因此,我們了解到,將近一半的受訪者正在組合多個資料庫來支援他們的產品,他們把哪種型別的資料庫管理系統一起使用?這一點不那麼令人吃驚,75.6%的多資料庫型別組合使用了sql和nosql資料庫。這進一步說明,對於許多組織來說,並不能一刀切。對於sql和nosql,雖然你可能有偏愛,但不可否認的事實是,它們相比於對方都提供了明顯的優勢。與其將你的組織限制在一種資料庫型別上,不如發展你的資料庫策略,使其具有相容性,以便這些強大的資料庫管理系統能夠互相補充,並填補你資料需求中的空白!
sql + nosql資料庫使用率:75.6%
sql + sql資料庫使用率:14.6%
nosql + nosql資料庫使用率:9.8%
如果你是乙個單型別資料庫使用者,並且正在考慮將另一種資料庫型別新增到你的組合中,那麼這一節可能會非常有趣——sql和nosql,哪些資料庫最常一起使用。
mysql和mongodb的組合是明顯的贏家,這對組合佔據了多資料庫型別超過三分之一的份額。雖然mongodb通常被認為是mysql的替代品,但如果設計得當,這兩個資料庫可以很好地協同。第二流行的組合是mysql和postgresql的組合。這兩個sql資料庫顯然是競爭對手,但可以一起使用,用於儲存不同的資料集。從上一節的圖中可以看到,mysql和postgresql組合的使用率為9.76%,佔了多資料庫中sql + sql組合的絕大部分。
好了,我們已經知道了哪些資料庫管理系統、型別和使用組合最流行,讓我們看看在資料庫管理方面什麼任務消耗了我們的時間。任何以前管理過資料庫的人都知道,維護乙個健康的生產部署涉及無數的任務。因此,對於最耗時的資料庫管理任務這個問題,有如此多樣化的回答,我們並不感到驚訝。
根據我們的調查,監控排在第一位,佔12.6%,稍稍領先於備份,管理磁碟空間、擴充套件和新增表都以11.6%的比例並列第二。排在第三位的是檢視和儲存程式的維護和變更發布,佔8.7%。清理和資料庫安裝配置並列第四,佔7.2%。公升級以6.5%的比例排在第五位,其他十幾項任務佔11.6%,包括遷移、查詢、比較、調優和複製。
雖然對於最重要的資料庫管理任務,我們看到了各種各樣的回答,但是,對於最重要的效能跟蹤指標則有三個最為突出的。
查詢響應時間不僅是跟蹤最多的指標,也是回答中最多的指標,有51.8%!在我們2023年10月編制的乙份最耗時的postgresql管理任務報告中,我們預計這一比例將達到30.8%,但是,當擴充套件到所有的資料庫管理系統時,這一比例大幅增加。查詢速度是乙個非常重要的度量指標,需要連續跟蹤,這樣就可以確定執行緩慢的查詢是否會影響應用程式的效能。許多dba使用乙個慢查詢分析器工具來識別問題查詢,看看它與哪種查詢相關,按時間範圍理解它們的查詢,並找到導致系統中讀取負載的頂級查詢,以識別那些沒有索引的查詢。
記憶體以8.2%的回答排在第三位。可用記憶體越多,資料庫的效能就應該越好。理解和監控記憶體使用應該是你的首要任務,因為記憶體不足或耗盡將導致資料庫讀取和向磁碟寫入資料的速度非常慢。
檢視英文原文:2019 database trends – sql vs. nosql, top databases, single vs. multiple database use
2019資料庫趨勢報告,最受歡迎的是MySQL
本文最初發布於scalegrid的部落格,經授權由infoq中文站翻譯並分享。哪些資料庫是2019年的 大勢 在developerweek上,我們詢問了數百名開發人員 工程師 軟體架構師 開發團隊和it領導者,以了解當前nosql與sql的使用情況 最流行的資料庫 需要跟蹤的重要指標以及最耗時的資料...
2019資料庫趨勢報告,最受歡迎的是MySQL
本文最初發布於scalegrid的部落格,經授權由infoq中文站翻譯並分享。哪些資料庫是2019年的 大勢 在developerweek上,我們詢問了數百名開發人員 工程師 軟體架構師 開發團隊和it領導者,以了解當前nosql與sql的使用情況 最流行的資料庫 需要跟蹤的重要指標以及最耗時的資料...
2019資料庫趨勢報告,最受歡迎的是MySQL
本文最初發布於scalegrid的部落格,經授權由infoq中文站翻譯並分享。哪些資料庫是2019年的 大勢 在developerweek上,我們詢問了數百名開發人員 工程師 軟體架構師 開發團隊和it領導者,以了解當前nosql與sql的使用情況 最流行的資料庫 需要跟蹤的重要指標以及最耗時的資料...