欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

數(shù)據(jù)庫(kù)分庫(kù)分表是什么,什么情況下需要用分庫(kù)分表

 更新時(shí)間:2021年03月22日 23:29:56   作者:strawqqhat  
這篇文章主要介紹了數(shù)據(jù)庫(kù)分庫(kù)分表是什么,什么情況下需要用分庫(kù)分表,需要的朋友可以參考下

數(shù)據(jù)量在什么情況下需要分表?

為了保證數(shù)據(jù)庫(kù)的查詢效率,當(dāng)數(shù)據(jù)達(dá)成一定量時(shí)建議進(jìn)行分表操作

1、oracle

當(dāng)oracle單表的數(shù)據(jù)量大于2000萬(wàn)行時(shí),建議進(jìn)行水平分拆。

2、mysql

當(dāng)mysql單表的數(shù)據(jù)量大于1000萬(wàn)行時(shí),建議進(jìn)行水平分拆。

單表容量到了1000W以上基本上稍微復(fù)雜一點(diǎn)的SQL都需要仔細(xì)優(yōu)化,這時(shí)候的SQL耗時(shí)主要集中在磁盤IO上,數(shù)據(jù)命令緩存的概率降低,總之不好搞,如果是正常的互聯(lián)網(wǎng)項(xiàng)目,提前分庫(kù)分表,在前期能做的先做了,后面會(huì)省很多時(shí)間處理數(shù)據(jù)遷移的事情,數(shù)據(jù)操作比較頻繁,比如訂單表,可能涉及到的插入和更新操作特別頻繁,特別是大并發(fā)的時(shí)候,這時(shí)如果只用一個(gè)庫(kù),對(duì)磁盤的IO和mysql的性能都是一種考驗(yàn),所以要分庫(kù)分表,把操作頻繁的表和基本信息表分開處理,減小單個(gè)數(shù)據(jù)庫(kù)的壓力,同時(shí)也不影響其他基本信息的讀寫

如果只有一臺(tái)服務(wù)器,當(dāng)select很多時(shí),update和delete會(huì)被這些select訪問(wèn)中的數(shù)據(jù)堵塞,等待select結(jié)束,并發(fā)性能不高,此時(shí)就要選擇讀寫分離了,主 庫(kù) 負(fù) 責(zé) 寫 , 從 庫(kù) 負(fù) 責(zé) 讀 \color{#FF0000}{主庫(kù)負(fù)責(zé)寫,從庫(kù)負(fù)責(zé)讀}主庫(kù)負(fù)責(zé)寫,從庫(kù)負(fù)責(zé)讀

具體情況根據(jù)數(shù)據(jù)庫(kù)服務(wù)器的配置和架構(gòu)有關(guān),僅供參考

3、sqlserver

sqlserver一般如下條件就可以選擇分區(qū)分表操作了

1、表的大小超過(guò)2GB。
2、表中包含歷史數(shù)據(jù),新的數(shù)據(jù)被增加都新的分區(qū)中。

當(dāng)一個(gè)數(shù)據(jù)表的數(shù)據(jù)量達(dá)到千萬(wàn)級(jí)別以后,每次查詢都需要消耗大量的時(shí)間,所以當(dāng)表數(shù)據(jù)量達(dá)到一定量級(jí)后我們需要對(duì)數(shù)據(jù)表水平切割。水平分區(qū)分表就是把邏輯上的一個(gè)表,在物理上按照你指定的規(guī)則分放到不同的文件里,把一個(gè)大的數(shù)據(jù)文件拆分為多個(gè)小文件,還可以把這些小文件放在不同的磁盤下。這樣把一個(gè)大的文件拆分成多個(gè)小文件,便于我們對(duì)數(shù)據(jù)的管理。 

分庫(kù)分表是什么,什么情況下需要用分庫(kù)分表

1、什么是分庫(kù)分表?

顧名思義,即把存于一個(gè)庫(kù)的數(shù)據(jù)分散到多個(gè)庫(kù)中,把存于一個(gè)表的數(shù)據(jù)分散到多個(gè)表中。

2、什么情況下需要分庫(kù)分表?

當(dāng)一個(gè)數(shù)據(jù)庫(kù)被創(chuàng)建之后,隨著時(shí)間的推移和業(yè)務(wù)量的增加,數(shù)據(jù)庫(kù)中表以及表中的數(shù)據(jù)量就會(huì)越來(lái)越多,就有可能出現(xiàn)兩種弊端:(1)數(shù)據(jù)庫(kù)的存儲(chǔ)資源是有限的,其負(fù)載能力也是有限的,數(shù)據(jù)的大量積累肯定會(huì)導(dǎo)致其處理數(shù)據(jù)的能力下降;(2)數(shù)據(jù)量越多,那么對(duì)數(shù)據(jù)的增刪改查操作的開銷也會(huì)越來(lái)越大,所以,當(dāng)出現(xiàn)如上兩種情況,分庫(kù)分表勢(shì)在必行。

3、分庫(kù)分表的方式

(1)垂直切分

適用場(chǎng)景:如果是因?yàn)楸淼膫€(gè)數(shù)多而讓數(shù)據(jù)多,可以按照功能劃分,把聯(lián)系密切的表切分出來(lái)放在同一個(gè)庫(kù)中(分庫(kù));

如果表的字段太多,可以以列為出發(fā)點(diǎn),將字段進(jìn)行拆分(分表);

(2)水平切分

適用場(chǎng)景:如果是因?yàn)楸碇械臄?shù)據(jù)量過(guò)于龐大,則可以采用水平切分,按照某種約定好的規(guī)則將數(shù)據(jù)切分到不同的數(shù)據(jù)庫(kù)中;

必須要根據(jù)當(dāng)前數(shù)據(jù)庫(kù)的情況做出合適的選擇,也可以將兩種情況結(jié)合在一起。

4、如何聯(lián)合查找?

分庫(kù)分表的結(jié)果會(huì)使數(shù)據(jù)分散,不好查詢,主要有兩種查詢方式:

(1)、分步查:先查找主表,然后得到關(guān)聯(lián)表的id,再發(fā)起請(qǐng)求得到關(guān)聯(lián)數(shù)據(jù);

(2)、聯(lián)合查:同時(shí)發(fā)起多個(gè)查詢請(qǐng)求,然后將所有的結(jié)果集合起來(lái)。 

到此這篇關(guān)于數(shù)據(jù)庫(kù)分庫(kù)分表是什么,什么情況下需要用分庫(kù)分表的文章就介紹到這了,更多相關(guān)數(shù)據(jù)庫(kù)分庫(kù)分表內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Linux的HBASE數(shù)據(jù)庫(kù)集群部署方法

    Linux的HBASE數(shù)據(jù)庫(kù)集群部署方法

    HBase是一種針對(duì)海量數(shù)據(jù)的key-value型NoSQL數(shù)據(jù)庫(kù),本文詳細(xì)介紹了在Linux系統(tǒng)下HBase的安裝與配置步驟,本文給大家介紹Linux的HBASE數(shù)據(jù)庫(kù)集群部署方法,感興趣的朋友一起看看吧
    2024-10-10
  • MyISAM與InnoDB索引實(shí)現(xiàn)對(duì)比詳解

    MyISAM與InnoDB索引實(shí)現(xiàn)對(duì)比詳解

    這篇文章主要給大家介紹了關(guān)于MyISAM與InnoDB索引實(shí)現(xiàn)對(duì)比的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • powerdesigner?for?mysql腳本要求字段、表名有注釋操作

    powerdesigner?for?mysql腳本要求字段、表名有注釋操作

    在PowerDesigner中,可以通過(guò)修改DBMS設(shè)置為MySQL數(shù)據(jù)庫(kù)添加字段和表名的注釋,具體步驟包括編輯當(dāng)前的DBMS設(shè)置,并在相應(yīng)的Script選項(xiàng)下調(diào)整Column和Table的配置,本文給大家介紹powerdesigner?for?mysql腳本要求字段、表名有注釋操作,感興趣的朋友跟隨小編一起看看吧
    2023-07-07
  • openGauss數(shù)據(jù)庫(kù)在CentOS上的安裝實(shí)踐記錄

    openGauss數(shù)據(jù)庫(kù)在CentOS上的安裝實(shí)踐記錄

    這篇文章主要介紹了openGauss數(shù)據(jù)庫(kù)在CentOS上的安裝實(shí)踐,本文是基于華為云ECS+CentOS 7的openGauss數(shù)據(jù)庫(kù)安裝實(shí)踐,需要的朋友可以參考下
    2022-07-07
  • Navicat最新永久安裝使用方法(推薦)

    Navicat最新永久安裝使用方法(推薦)

    Navicat是一款輕量級(jí)的用于MySQL連接和管理的工具,非常好用,使用起來(lái)方便快捷,簡(jiǎn)潔,下面我會(huì)簡(jiǎn)單的講一下其安裝以及使用的方法,感興趣的朋友一起看看吧
    2023-10-10
  • 數(shù)據(jù)庫(kù) 三范式最簡(jiǎn)單最易記的解釋

    數(shù)據(jù)庫(kù) 三范式最簡(jiǎn)單最易記的解釋

    數(shù)據(jù)庫(kù) 三范式最簡(jiǎn)單最易記的解釋,整理一下方便大家記憶。
    2009-07-07
  • mysql與MongoDB性能對(duì)比,哪個(gè)更適合自己

    mysql與MongoDB性能對(duì)比,哪個(gè)更適合自己

    經(jīng)??吹接腥擞懻?,mongodb性能不如MySQL,MySQL能不能代替之類的說(shuō)法?,其實(shí)作為技術(shù)人,很不喜歡哪個(gè)比哪個(gè)好這種說(shuō)法,基本就是挑事,我們今天一起
    2023-06-06
  • leaf方案實(shí)現(xiàn)美團(tuán)點(diǎn)評(píng)分布式ID生成系統(tǒng)

    leaf方案實(shí)現(xiàn)美團(tuán)點(diǎn)評(píng)分布式ID生成系統(tǒng)

    在復(fù)雜分布式系統(tǒng)中,往往需要對(duì)大量的數(shù)據(jù)和消息進(jìn)行唯一標(biāo)識(shí)。如在美團(tuán)點(diǎn)評(píng)的金融、支付、餐飲、酒店、貓眼電影等產(chǎn)品的系統(tǒng)中,數(shù)據(jù)日漸增長(zhǎng),對(duì)數(shù)據(jù)分庫(kù)分表后需要有一個(gè)唯一ID來(lái)標(biāo)識(shí)一條數(shù)據(jù)或消息,數(shù)據(jù)庫(kù)的自增ID顯然不能滿足需求
    2022-01-01
  • 淺談數(shù)據(jù)庫(kù)事務(wù)四大特性

    淺談數(shù)據(jù)庫(kù)事務(wù)四大特性

    這篇文章主要介紹了淺談數(shù)據(jù)庫(kù)事務(wù)四大特性,小編覺(jué)得挺不錯(cuò)的,這里分享給大家,供需要的朋友參考。
    2017-10-10
  • 復(fù)雜SQL實(shí)現(xiàn)分組分情況分頁(yè)查詢代碼實(shí)例

    復(fù)雜SQL實(shí)現(xiàn)分組分情況分頁(yè)查詢代碼實(shí)例

    最近學(xué)習(xí)了一下SQL的分頁(yè)查詢,總結(jié)了復(fù)雜SQL分組分頁(yè)查詢的方法,這篇文章主要給大家介紹了關(guān)于復(fù)雜SQL實(shí)現(xiàn)分組分情況分頁(yè)查詢的相關(guān)資料,需要的朋友可以參考下
    2023-12-12

最新評(píng)論