成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

數(shù)據(jù)庫中表分割和表分區(qū)的區(qū)別比較

數(shù)據(jù)庫
本文我們對數(shù)據(jù)庫操作中的表分區(qū)和表分割進行了解釋說明與比較,通過比較,我們可以更容易地理解一些表分區(qū)和表分割的知識,希望能夠?qū)δ兴鶐椭?/div>

數(shù)據(jù)庫操作中,我們常常會聽到表分區(qū)表分割這兩個術(shù)語,那么它們是做什么的呢?它們之間的區(qū)別又是什么呢?本文我們就來介紹這一部分內(nèi)容。

個人認為理論上使用表分割在性能上應(yīng)該和建立表分區(qū)查不多,但是,表分割對于所有的數(shù)據(jù)庫都適用,而表分區(qū)只能用于oracle這樣的特定的數(shù)據(jù)庫;表分區(qū)屬于數(shù)據(jù)庫物理設(shè)計,表分割屬于邏輯設(shè)計。

表分區(qū):

表分區(qū)是ORACLE對于非常大的表進行優(yōu)化的一種有效方法, 是非常有效的一種手段, 在很多情況下,比你說的表分割更有效,比如,有一個代碼表,使用分區(qū)表把100萬紀錄分在10個分區(qū)中(ID 每從1到10萬為一個分區(qū)),那樣寫查詢語句的時候,只要給出查詢條件中所需要的代碼,ORACLE自動會定位到對應(yīng)的分區(qū)進行查詢,大大降低的查詢時間. 而采用表分割,那必須先根據(jù)查詢的代碼指定所要查詢的表,才能找到相應(yīng)的紀錄. 而且,如果有下面這樣的語句,查詢的條件是跨分區(qū)的:

SELECT * FROM MYTABLE WHERE ID BETWEEN 99000 AND 10111;

在分區(qū)表中是非常容易實現(xiàn)的,ORACLE會自動在兩個分區(qū)中查詢;而采用表分割的話是否必須寫成兩個查詢語句在UNION ALL。

事實上,大型的數(shù)據(jù)庫都有對大表的特殊處理方式(類似于分區(qū)表),如果太強調(diào)可移植性而放棄這些最重要的特性的話,那性能很可能受到很大的影響.

即便是oracle數(shù)據(jù)庫,當數(shù)據(jù)量很大時,用分表比用表分區(qū)要快些,尤其是在表用到group by求和等操作。

我也認為表分區(qū)要好一些,也就是一般說來的分區(qū)表,對這些表操作起來有很多強大的功能,說他強大主要是體現(xiàn)在對與表中有海量數(shù)據(jù)的情況之下的,試問大家一個其中有1億條記錄的表你是否會經(jīng)常的將其移植到其他數(shù)據(jù)庫系統(tǒng)當中去呢?

表分區(qū)基于物理存儲,還有就是基于分區(qū)的索引可以使用,很不錯的,當然,這些都是在海量數(shù)據(jù)情況之下的比較,但是如果真要是數(shù)據(jù)量不大的情況下比較,我想要比較分區(qū)表和表分割就沒什么意思了。

表分區(qū)的效果對硬件有所依賴,而且效果恐怕不如諸位想象中那么好。我做過一點測試,很失望。

而表分割的效率提升在很多時候(不是所有時候)是很明顯的。

當然這都是在巨型表的前提下討論,縮小表和索引的規(guī)模有利于提高效率,這正是分割表的特點。

表分割:

1、水平分割:根據(jù)一列或多列數(shù)據(jù)的值把數(shù)據(jù)行放到兩個獨立的表中。

水平分割通常在下面的情況下使用:A 表很大,分割后可以降低在查詢時需要讀的數(shù)據(jù)和索引的頁數(shù),同時也降低了索引的層數(shù),提高查詢速度。B 表中的數(shù)據(jù)本來就有獨立性,例如表中分別記錄各個地區(qū)的數(shù)據(jù)或不同時期的數(shù)據(jù),特別是有些數(shù)據(jù)常用,而另外一些數(shù)據(jù)不常用。C需要把數(shù)據(jù)存放到多個介質(zhì)上。

例如法規(guī)表law就可以分成兩個表active-law和 inactive-law。activea-authors表中的內(nèi)容是正生效的法規(guī),是經(jīng)常使用的,而inactive-law表則使已經(jīng)作廢的法規(guī),不常被查詢。水平分割會給應(yīng)用增加復(fù)雜度,它通常在查詢時需要多個表名,查詢所有數(shù)據(jù)需要union操作。在許多數(shù)據(jù)庫應(yīng)用中,這種復(fù)雜性會超過它帶來的優(yōu)點,因為只要索引關(guān)鍵字不大,則在索引用于查詢時,表中增加兩到三倍數(shù)據(jù)量,查詢時也就增加讀一個索引層的磁盤次數(shù)。

2、垂直分割:把主碼和一些列放到一個表,然后把主碼和另外的列放到另一個表中。

如果一個表中某些列常用,而另外一些列不常用,則可以采用垂直分割,另外垂直分割可以使得數(shù)據(jù)行變小,一個數(shù)據(jù)頁就能存放更多的數(shù)據(jù),在查詢時就會減少I/O 次數(shù)。其缺點是需要管理冗余列,查詢所有數(shù)據(jù)需要join操作。

關(guān)于數(shù)據(jù)庫中表分割和表分區(qū)的知識就介紹到這里了,希望本次的介紹能夠?qū)δ兴斋@。

【編輯推薦】

  1. 數(shù)據(jù)庫集群中間件CJDBC詳細介紹
  2. SQL Server 2005無法連接到本地服務(wù)器的解決
  3. Linux下重新配置MySQL數(shù)據(jù)庫引擎innodb的過程
  4. SQL Server通過整理索引碎片和重建索引提高速度
  5. Linux+Oracle 10g RAC雙網(wǎng)卡綁定和解除綁定的實現(xiàn)
責任編輯:趙鵬 來源: CSDN博客
相關(guān)推薦

2011-10-11 17:07:12

數(shù)據(jù)庫Internet文件數(shù)據(jù)庫

2018-05-14 16:14:56

數(shù)據(jù)庫MySQL分表與分區(qū)

2017-03-14 13:12:19

2011-08-10 15:46:29

數(shù)據(jù)庫

2010-04-06 11:02:30

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

2011-03-11 16:42:51

Oracle數(shù)據(jù)庫視圖

2022-02-14 09:00:00

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

2011-08-10 16:16:28

數(shù)據(jù)庫水平分割垂直分割

2011-07-20 16:03:06

SQL Server數(shù)分區(qū)表

2010-09-10 13:37:30

表分區(qū)SQL Server

2010-04-08 18:45:35

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

2010-04-07 18:26:43

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

2011-06-28 12:58:44

表分區(qū)

2010-04-08 18:54:32

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

2018-05-30 10:31:10

2020-09-03 11:35:22

SQLiteMySQLPostgreSQL

2010-09-01 13:43:06

DB2表空間

2010-04-06 10:52:06

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

2010-05-11 18:23:31

MySQL數(shù)據(jù)庫分區(qū)

2011-05-30 14:30:08

函數(shù)存儲過程
點贊
收藏

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

主站蜘蛛池模板: 亚洲精品一区二三区不卡 | 国产日韩欧美一区二区在线播放 | 久久久久久久久精 | 青青草中文字幕 | 成人午夜精品 | 99精品国产在热久久 | www久| 在线观看特色大片免费网站 | 国产精品免费一区二区三区四区 | 国产精品久久久久久久一区探花 | 99久久精品免费看国产四区 | 日韩一区二区不卡 | 久久不卡 | 亚洲精品在线视频 | 亚洲免费视频一区二区 | 国产午夜精品福利 | 久在线视频播放免费视频 | 亚洲视频免费在线观看 | 亚洲一区成人 | 亚洲最色网站 | h在线播放 | 精品亚洲一区二区三区 | 国产精品一区三区 | 欧美一区二区三区日韩 | 日本精品视频在线 | 国产yw851.c免费观看网站 | 在线观看中文字幕视频 | 国产成人久久精品一区二区三区 | 日韩伦理一区二区三区 | 亚洲福利| 国产日韩一区二区三免费 | 找个黄色片 | 日本久久精品视频 | av黄色在线| 亚洲男人天堂网 | 精品国产黄a∨片高清在线 www.一级片 国产欧美日韩综合精品一区二区 | 成人久久久 | 久久天堂 | 日韩二 | av一二三区 | 久久精品免费观看 |