自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

2023年如何選擇合適的數(shù)據(jù)庫(kù)??

譯文
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)常常是應(yīng)用系統(tǒng)中最大的性能瓶頸。一旦部署到生產(chǎn)環(huán)境中,就很難遷移,因此為應(yīng)用系統(tǒng)選擇合適的數(shù)據(jù)庫(kù)至關(guān)重要。

譯者 | 布加迪

審校 | 孫淑娟?

數(shù)據(jù)庫(kù)常常是應(yīng)用系統(tǒng)中最大的性能瓶頸。一旦部署到生產(chǎn)環(huán)境中,就很難遷移,因此為應(yīng)用系統(tǒng)選擇合適的數(shù)據(jù)庫(kù)至關(guān)重要。?

做出正確決定的一個(gè)重要部分是知道面臨哪些選擇。數(shù)據(jù)庫(kù)領(lǐng)域在過(guò)去幾年迅速發(fā)生了變化,本文將試圖探討以下幾個(gè)主題?

  • 概述2023數(shù)據(jù)庫(kù)生態(tài)系統(tǒng)。?
  • 從技術(shù)角度闡述到底是什么因素使不同類型的數(shù)據(jù)庫(kù)有不同的性能?
  • 何時(shí)使用專用數(shù)據(jù)庫(kù)、何時(shí)使用通用數(shù)據(jù)庫(kù)。?

2023年的數(shù)據(jù)庫(kù)格局?

在深入研究之前,不妨看一下當(dāng)前數(shù)據(jù)庫(kù)生態(tài)系統(tǒng)以及各類數(shù)據(jù)庫(kù)的市場(chǎng)份額?

如您所,盡管NoSQL數(shù)據(jù)庫(kù)被大肆宣傳,關(guān)系數(shù)據(jù)庫(kù)仍是最常用的數(shù)據(jù)庫(kù)類型。如果我們看看最近的趨勢(shì),排名告訴我們略有不同的情形。?

顯示,在過(guò)去的兩年中,關(guān)系數(shù)據(jù)庫(kù)已被幾種不同類型的數(shù)據(jù)庫(kù)模型多少搶去了地盤。以下是一些日益被開發(fā)人員采用的主要數(shù)據(jù)庫(kù)模型?

  • 文檔數(shù)據(jù)庫(kù)?
  • 圖形數(shù)據(jù)庫(kù)?
  • 時(shí)間序列數(shù)據(jù)庫(kù)?
  • 列式數(shù)據(jù)庫(kù)?
  • 內(nèi)存數(shù)據(jù)庫(kù)?
  • -值數(shù)據(jù)庫(kù)?
  • 搜索引擎數(shù)據(jù)庫(kù)?

什么讓數(shù)據(jù)庫(kù)有不同的性能??

談到數(shù)據(jù)庫(kù)性能,沒有什么神奇的因素使一數(shù)據(jù)庫(kù)的性能優(yōu)于另一數(shù)據(jù)庫(kù)。計(jì)算機(jī)科學(xué)的所有事情一樣,歸結(jié)為讓企業(yè)可以針對(duì)特定用例優(yōu)化性能的權(quán)衡。具體就數(shù)據(jù)庫(kù)而言,CAP定理很好地介紹了為調(diào)優(yōu)性能而可能做出的一些權(quán)衡。?

比如在NoSQL數(shù)據(jù)庫(kù)的早期階段,其可擴(kuò)展備受炒作,但代價(jià)通常是犧牲標(biāo)準(zhǔn)關(guān)系數(shù)據(jù)庫(kù)提供的數(shù)據(jù)一致性保證。?

會(huì)影響數(shù)據(jù)庫(kù)性能的其他一些設(shè)計(jì)因素,包括如下:?

  • 磁盤存儲(chǔ)格式——數(shù)據(jù)庫(kù)如何在硬盤驅(qū)動(dòng)器上實(shí)際存儲(chǔ)和組織數(shù)據(jù)對(duì)性能有重大影響。隨著更多的公司開始存儲(chǔ)用于分析工作負(fù)載的大量數(shù)據(jù),以Parquet等基于列的格式在磁盤上存儲(chǔ)數(shù)據(jù)越來(lái)越受歡迎。?
  • 主索引數(shù)據(jù)結(jié)構(gòu)——數(shù)據(jù)庫(kù)如何索引數(shù)據(jù)也會(huì)對(duì)性能產(chǎn)生重大影響。數(shù)據(jù)庫(kù)通常有存儲(chǔ)引擎使用的主索引,然后允許用戶定義輔助索引。簡(jiǎn)單來(lái)說(shuō),索引有助于提升讀取性能,但為寫入新數(shù)據(jù)點(diǎn)增加了開銷。?
  • 數(shù)據(jù)壓縮——如何壓縮數(shù)據(jù)將會(huì)影響到存儲(chǔ)數(shù)據(jù)的成本以及數(shù)據(jù)庫(kù)的查詢性能。一些壓縮算法旨在盡可能數(shù)據(jù)的大小。其他算法的壓縮比可能較低,但在解壓縮數(shù)據(jù)時(shí)速度更快,這意味著您可以獲得更好的數(shù)據(jù)查詢性能。?
  • 熱存儲(chǔ)和冷存儲(chǔ)——現(xiàn)在許多數(shù)據(jù)庫(kù)系統(tǒng)允許數(shù)據(jù)在更快速更昂貴的熱存儲(chǔ)和更緩慢更便宜的存儲(chǔ)之間移動(dòng)。理論上說(shuō),這可以為頻繁查詢的數(shù)據(jù)提供更好的性能,并節(jié)省存儲(chǔ)成本,同時(shí)仍允許訪問(wèn)冷存儲(chǔ)中的數(shù)據(jù),而不是直接刪除。?
  • 持久性/災(zāi)難恢復(fù)——數(shù)據(jù)庫(kù)如何處理災(zāi)難恢復(fù)對(duì)性能也有影響。設(shè)計(jì)數(shù)據(jù)庫(kù)以應(yīng)對(duì)各種故障通常會(huì)降低性能,因此對(duì)于些用例數(shù)據(jù)不是關(guān)鍵,偶爾丟失數(shù)據(jù)點(diǎn)也沒關(guān)系)而言,數(shù)據(jù)庫(kù)可以擯棄一些安全保證以獲得更好的性能。?

所有這些因素以及本文未提到的許多其他因素都會(huì)影響數(shù)據(jù)庫(kù)的性能。通過(guò)調(diào)整這些因素,就可以針對(duì)非常具體的性能特征優(yōu)化數(shù)據(jù)庫(kù),犧牲某些方面實(shí)際上不會(huì)成為問(wèn)題,因?yàn)槟承┣闆r下不需要它們。?

何時(shí)為您的應(yīng)用系統(tǒng)使用專門的數(shù)據(jù)庫(kù)??

決定為您的應(yīng)用系統(tǒng)使用哪個(gè)數(shù)據(jù)庫(kù)牽涉很多因素。不妨看看為應(yīng)用系統(tǒng)選擇數(shù)據(jù)庫(kù)時(shí)需要考慮的幾個(gè)主要因素。?

  • 數(shù)據(jù)訪問(wèn)模式?

選擇數(shù)據(jù)庫(kù)的主要因素是如何創(chuàng)建和使用應(yīng)用系統(tǒng)中的數(shù)據(jù)。最常見的入手途徑莫過(guò)于確定您的工作負(fù)載是在線分析處理OLAP)還是在線事務(wù)處理(OLTP。OLAP工作負(fù)載以分析為中心,與關(guān)系數(shù)據(jù)庫(kù)旨在處理的標(biāo)準(zhǔn)的OLTP工作負(fù)載相比,OLAP工作負(fù)載有不同的訪問(wèn)模式。OLAP查詢通常只觸及少數(shù)列來(lái)執(zhí)行計(jì)算,可以通過(guò)使用為此設(shè)計(jì)的列式數(shù)據(jù)庫(kù)進(jìn)行優(yōu)化。舉例說(shuō),由于性能優(yōu)勢(shì),大多數(shù)數(shù)據(jù)倉(cāng)庫(kù)構(gòu)建在面向列的數(shù)據(jù)庫(kù)之上。?

旦大致確定了工作負(fù)載的類型,現(xiàn)在就需要考慮查詢的延遲需求和寫入數(shù)據(jù)的頻率等方面。如果您的用例需要對(duì)監(jiān)測(cè)之類的任務(wù)進(jìn)行低延遲的近實(shí)時(shí)查詢,可以考慮使用時(shí)間序列數(shù)據(jù)庫(kù),這種數(shù)據(jù)庫(kù)旨在處理高寫吞吐量,同時(shí)還允許在攝取數(shù)據(jù)后很快查詢數(shù)據(jù)。?

對(duì)于OLTP類型的工作負(fù)載而言,通常需要選擇關(guān)系數(shù)據(jù)庫(kù)還是文檔數(shù)據(jù)庫(kù)。這里的關(guān)鍵因素是查看數(shù)據(jù)模型,確定您是想要NoSQL文檔數(shù)據(jù)庫(kù)提供的模式靈活性,還是更喜歡關(guān)系數(shù)據(jù)庫(kù)提供的一致性保證。?

可能考慮的最后一點(diǎn)是,您是否預(yù)計(jì)工作負(fù)載在一天當(dāng)中相當(dāng)一致,還是會(huì)呈“突發(fā)式”,要求數(shù)據(jù)庫(kù)偶爾處理大得多的讀寫量。在后一種情況下,就有必要使用這種數(shù)據(jù)庫(kù)很容易擴(kuò)增或縮減硬件,這樣您不會(huì)大多數(shù)時(shí)候不需要的硬件而面臨停運(yùn)或高昂成本。?

  • 內(nèi)部知識(shí)?

在決定使用什么數(shù)據(jù)庫(kù)時(shí),應(yīng)該考慮到團(tuán)隊(duì)現(xiàn)有的技能組合。您需要確定使用專用數(shù)據(jù)庫(kù)的潛在好處是否值得為此投入資源來(lái)培訓(xùn)團(tuán)隊(duì)學(xué)習(xí)如何使用它,是否值得為了學(xué)習(xí)新技術(shù)而犧牲生產(chǎn)力。?

如果您知道構(gòu)建的服務(wù)不需要針對(duì)性能全面優(yōu)化,可以使用團(tuán)隊(duì)最熟悉的數(shù)據(jù)庫(kù)來(lái)完成工作。另一方面,如果您知道性能很重要,克服采用新數(shù)據(jù)庫(kù)帶來(lái)的困難可能是值得的。?

  • 架構(gòu)復(fù)雜性?

確保軟件架構(gòu)盡可能簡(jiǎn)單理想,因此系統(tǒng)添加另一個(gè)組件(比如新數(shù)據(jù)庫(kù)應(yīng)該與管理數(shù)據(jù)庫(kù)將給系統(tǒng)增添的額外復(fù)雜性進(jìn)行權(quán)衡。?

如果您的應(yīng)用系統(tǒng)非常適合專門的數(shù)據(jù)庫(kù),它可以充當(dāng)應(yīng)用系統(tǒng)數(shù)據(jù)的主數(shù)據(jù)庫(kù),那么這不是一個(gè)大問(wèn)題。另一方面,如果您將使用通用的數(shù)據(jù)庫(kù)作為應(yīng)用系統(tǒng)的主存儲(chǔ),那么為一小部分數(shù)據(jù)添加一種額外的數(shù)據(jù)庫(kù)可能不值得,除非您面臨嚴(yán)重的性能問(wèn)題。?

結(jié)論?

數(shù)據(jù)庫(kù)生態(tài)系統(tǒng)在迅速發(fā)展。雖然選擇自己的數(shù)據(jù)庫(kù)始終是不錯(cuò)的選擇,但開發(fā)人員有必要密切關(guān)注一些新發(fā)布的技術(shù),看看它們是否適合自己構(gòu)建的系統(tǒng)搭建一種專門的數(shù)據(jù)庫(kù)可以從許多方面幫助應(yīng)用系統(tǒng)取得成功,比如節(jié)省成本、為用戶提升性能更容易擴(kuò)展以及提高開發(fā)人員的生產(chǎn)力。?

原文標(biāo)題:??How to Choose the Right Database in 2023??,作者:Charles Mahler?

鏈接:??https://thenewstack.io/how-to-choose-the-right-database-in-2023/???

責(zé)任編輯:華軒 來(lái)源: 51CTO
相關(guān)推薦

2020-06-17 15:01:30

物聯(lián)網(wǎng)數(shù)據(jù)庫(kù)物聯(lián)網(wǎng)數(shù)據(jù)庫(kù)

2016-10-08 18:13:55

數(shù)據(jù)庫(kù)性能工具數(shù)據(jù)庫(kù)管理系統(tǒng)

2017-06-19 16:20:09

數(shù)據(jù)庫(kù)性能工具

2021-02-23 23:06:31

數(shù)據(jù)庫(kù)Redis技術(shù)

2018-10-25 08:00:00

數(shù)據(jù)庫(kù)開源數(shù)據(jù)庫(kù)開源技術(shù)

2021-01-10 15:29:53

開源數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)

2022-07-25 09:46:25

React數(shù)據(jù)庫(kù)

2010-03-30 17:40:59

Oracle數(shù)據(jù)庫(kù)

2024-07-09 08:27:30

2023-11-02 08:52:52

數(shù)據(jù)庫(kù)實(shí)踐

2010-07-08 15:48:34

開源

2013-07-23 10:31:59

冗余數(shù)據(jù)遠(yuǎn)程數(shù)據(jù)中心數(shù)據(jù)中心

2024-03-28 09:00:00

NoSQL數(shù)據(jù)庫(kù)

2014-10-29 15:38:58

2010-07-27 09:38:11

DB2數(shù)據(jù)庫(kù)設(shè)計(jì)

2020-12-18 09:11:43

數(shù)據(jù)庫(kù)SQLNoSQL

2023-05-18 14:54:31

2019-03-11 15:48:13

企業(yè)存儲(chǔ)數(shù)據(jù)

2015-05-19 16:52:13

企業(yè)網(wǎng)D1Net

2018-06-19 10:38:42

數(shù)據(jù)中心遷移時(shí)機(jī)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)