當由于大量用戶或正在執(zhí)行的操作而導致軟件數據庫上托管的數據量非常大時,數據庫分片是一種常見的做法,可以簡化數據庫以減少加載時間。那么數據庫分片有什么優(yōu)缺點?
一、數據庫分片的優(yōu)點:
對數據庫進行分片的主要吸引力在于它可以幫助促進水平擴展,也稱為向外擴展。其優(yōu)點:
1、較小的數據庫更易于管理。
生產數據庫必須得到全面管理,以執(zhí)行定期備份、數據庫優(yōu)化和其他常見任務。對于單個大型數據庫,如果僅就完成所需的時間窗口而言,這些常規(guī)任務可能很難完成。通過使用分片方法,每個單獨的“分片”都可以獨立維護,提供更易于管理的場景,并行執(zhí)行此類維護任務。
2、較小的數據庫更快。
分片的可擴展性是顯而易見的,并通過在網絡中的多個分片和服務器之間分配處理來實現。不太明顯的是,每個單獨的分片數據庫由于其較小的尺寸而將勝過單個大型數據庫。通過將每個分片數據庫托管在自己的服務器上,內存和磁盤數據的比例得到適當平衡,從而減少磁盤 I/O 并最大限度地利用系統資源。這會導致更少的爭用、更高的連接性能、更快的索引搜索和更少的數據庫鎖定。因此,分片系統不僅可以擴展到新的容量水平,單個事務的性能也會受益。
3、數據庫分片可以降低成本。
大多數數據庫分片實施利用低成本的開源數據庫和商品數據庫。該技術還可以充分利用許多商業(yè)數據庫的價格合理的“工作組”版本。
二、數據庫分片的缺點:
1、增加系統的復雜性:正確實施分片數據庫架構是一項復雜的任務。如果操作不當,分片過程會導致數據丟失或表損壞的風險很大。分片也會對您團隊的工作流程產生重大影響。
2、重新平衡數據:在分片數據庫架構中,有時一個分片會超過其他分片并變得不平衡,這也稱為數據庫熱點。在這種情況下,分片數據庫的任何好處都被抵消了。數據庫可能需要重新分片以實現更均勻的數據分布。
3、連接來自多個分片的數據:為了實現一些復雜的功能,我們可能需要從分布在多個分片中的不同來源提取大量數據。我們無法發(fā)出查詢并從多個分片中獲取數據。我們需要向不同的分片發(fā)出多個查詢,獲取所有響應并將它們合并。
4、沒有本機支持:并非每個數據庫引擎都本機支持分片。因此,分片通常需要“自己動手”。這意味著分片文檔或故障排除技巧通常很難找到。
以上是數據庫分片優(yōu)缺點的分享,希望能幫助到大家參考!
審核編輯黃宇
-
數據庫
+關注
關注
7文章
4020瀏覽量
68349
發(fā)布評論請先 登錄
恒訊科技解析:如何安裝MySQL并創(chuàng)建數據庫
恒訊科技解析:如何在日本服務器上安裝和配置數據庫(如MySQL)?
不同類型的電能質量在線監(jiān)測裝置數據存儲方式有哪些優(yōu)缺點?
數據庫性能優(yōu)化指南
數據庫數據恢復—服務器異常斷電導致Oracle數據庫故障的數據恢復案例
三款主流國產數據庫的技術特點
數據庫數據恢復—MongoDB數據庫文件丟失的數據恢復案例
oracle數據恢復—oracle數據庫誤執(zhí)行錯誤truncate命令如何恢復數據?
MySQL數據庫采集網關是什么?有什么功能?
SQLSERVER數據庫是什么
MySQL數據庫是什么
SEGGER emFile支持大型數據庫
數據庫數據恢復——MongoDB數據庫文件拷貝后服務無法啟動的數據恢復
恒訊科技分享:數據庫分片有什么優(yōu)缺點?
評論