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

Oracle10個分區(qū)和Mysql分區(qū)區(qū)別詳解

 更新時間:2017年02月15日 16:28:02   作者:想你的夜713  
MySQL分區(qū)常用的是:range、list、hash、key,Oracle10g分區(qū)常用的是:range(范圍分區(qū))、list(列表分區(qū))、hash(哈希分區(qū))、range-hash(范圍—哈希分區(qū))、range-list(列表—復(fù)合分區(qū))。下面通過本文詳細給大家介紹Oracle10個分區(qū)和Mysql分區(qū)區(qū)別,一起看看

Oracle10g分區(qū)常用的是:range(范圍分區(qū))、list(列表分區(qū))、hash(哈希分區(qū))、range-hash(范圍—哈希分區(qū))、range-list(列表—復(fù)合分區(qū))。

Range分區(qū):Range分區(qū)是應(yīng)用范圍比較廣的表分區(qū)方式,它是以列的值的范圍來做為分區(qū)的劃分條件,將記錄存放到列值所在的range分區(qū)中。

        如按照時間劃分,2010年1月的數(shù)據(jù)放到a分區(qū),2月的數(shù)據(jù)放到b分區(qū),在創(chuàng)建的時候,需要指定基于的列,以及分區(qū)的范圍值。

       在按時間分區(qū)時,如果某些記錄暫無法預(yù)測范圍,可以創(chuàng)建maxvalue分區(qū),所有不在指定范圍內(nèi)的記錄都會被存儲到maxvalue所在分區(qū)中。如:

createtable pdba (id number, time date) partition by range (time)
(
partitionp1 values less than (to_date('2010-10-1', 'yyyy-mm-dd')),
partitionp2 values less than (to_date('2010-11-1', 'yyyy-mm-dd')),
partitionp3 values less than (to_date('2010-12-1', 'yyyy-mm-dd')),
partitionp4 values less than (maxvalue)
)

Hash分區(qū):

  對于那些無法有效劃分范圍的表,可以使用hash分區(qū),這樣對于提高性能還是會有一定的幫助。hash分區(qū)會將表中的數(shù)據(jù)平均分配到你指定的幾個分區(qū)中,列所在分區(qū)是依據(jù)分區(qū)列的hash值自動分配,因此你并不能控制也不知道哪條記錄會被放到哪個分區(qū)中,hash分區(qū)也可以支持多個依賴列。如:

createtable test
(
transaction_idnumber primary key,
item_idnumber(8) not null
)
partitionby hash(transaction_id)
(
partitionpart_01 tablespace tablespace01,
partitionpart_02 tablespace tablespace02,
partitionpart_03 tablespace tablespace03
);

在這里,我們指定了每個分區(qū)的表空間。

List分區(qū):

  List分區(qū)也需要指定列的值,其分區(qū)值必須明確指定,該分區(qū)列只能有一個,不能像range或者hash分區(qū)那樣同時指定多個列做為分區(qū)依賴列,但它的單個分區(qū)對應(yīng)值可以是多個。

  在分區(qū)時必須確定分區(qū)列可能存在的值,一旦插入的列值不在分區(qū)范圍內(nèi),則插入/更新就會失敗,因此通常建議使用list分區(qū)時,要創(chuàng)建一個default分區(qū)存儲那些不在指定范圍內(nèi)的記錄,類似range分區(qū)中的maxvalue分區(qū)。

     在根據(jù)某字段,如城市代碼分區(qū)時,可以指定default,把非分區(qū)規(guī)則的數(shù)據(jù),全部放到這個default分區(qū)。如:

createtable custaddr
(
idvarchar2(15 byte) not null,
areacodevarchar2(4 byte)
)
partitionby list (areacode)
(partition t_list025 values ('025'),
partitiont_list372 values ('372') ,
partitiont_list510 values ('510'),
partitionp_other values (default)
)

組合分區(qū):

      如果某表按照某列分區(qū)之后,仍然較大,或者是一些其它的需求,還可以通過分區(qū)內(nèi)再建子分區(qū)的方式將分區(qū)再分區(qū),即組合分區(qū)的方式。

  組合分區(qū)呢在10g中有兩種:range-hash,range-list。注意順序,根分區(qū)只能是range分區(qū),子分區(qū)可以是hash分區(qū)或list分區(qū)。

如:

createtable test
(
transaction_idnumber primary key,
transaction_datedate
)
partitionby range(transaction_date) subpartition by hash(transaction_id)
subpartitions3 store in (tablespace01,tablespace02,tablespace03)
(
partitionpart_01 values less than(to_date('2009-01-01','yyyy-mm-dd')),
partitionpart_02 values less than(to_date('2010-01-01','yyyy-mm-dd')),
partitionpart_03 values less than(maxvalue)
);
createtable emp_sub_template (deptno number, empname varchar(32), grade number)
partitionby range(deptno) subpartition by hash(empname)
subpartitiontemplate
(subpartitiona tablespace ts1,
subpartitionb tablespace ts2,
subpartitionc tablespace ts3,
subpartitiond tablespace ts4
)
(partitionp1 values less than (1000),
partitionp2 values less than (2000),
partitionp3 values less than (maxvalue)
);
createtable quarterly_regional_sales
(deptnonumber, item_no varchar2(20),
txn_datedate, txn_amount number, state varchar2(2))
tablespacets4
partitionby range (txn_date)
subpartitionby list (state)
(partitionq1_1999 values less than (to_date('1-apr-1999','dd-mon-yyyy'))
(subpartitionq1_1999_northwest values ('or', 'wa'),
subpartitionq1_1999_southwest values ('az', 'ut', 'nm'),
subpartitionq1_1999_northeast values ('ny', 'vm', 'nj'),
subpartitionq1_1999_southeast values ('fl', 'ga'),
subpartitionq1_1999_northcentral values ('sd', 'wi'),
subpartitionq1_1999_southcentral values ('ok', 'tx')
),
partitionq2_1999 values less than ( to_date('1-jul-1999','dd-mon-yyyy'))
(subpartitionq2_1999_northwest values ('or', 'wa'),
subpartitionq2_1999_southwest values ('az', 'ut', 'nm'),
subpartitionq2_1999_northeast values ('ny', 'vm', 'nj'),
subpartitionq2_1999_southeast values ('fl', 'ga'),
subpartitionq2_1999_northcentral values ('sd', 'wi'),
subpartitionq2_1999_southcentral values ('ok', 'tx')
),
partitionq3_1999 values less than (to_date('1-oct-1999','dd-mon-yyyy'))
(subpartitionq3_1999_northwest values ('or', 'wa'),
subpartitionq3_1999_southwest values ('az', 'ut', 'nm'),
subpartitionq3_1999_northeast values ('ny', 'vm', 'nj'),
subpartitionq3_1999_southeast values ('fl', 'ga'),
subpartitionq3_1999_northcentral values ('sd', 'wi'),
subpartitionq3_1999_southcentral values ('ok', 'tx')
),
partitionq4_1999 values less than ( to_date('1-jan-2000','dd-mon-yyyy'))
(subpartitionq4_1999_northwest values ('or', 'wa'),
subpartitionq4_1999_southwest values ('az', 'ut', 'nm'),
subpartitionq4_1999_northeast values ('ny', 'vm', 'nj'),
subpartitionq4_1999_southeast values ('fl', 'ga'),
subpartitionq4_1999_northcentral values ('sd', 'wi'),
subpartitionq4_1999_southcentral values ('ok', 'tx')
)
);

MySQL分區(qū)常用的是:range、list、hash、key

     RANGE分區(qū)(portioning):根據(jù)列值所屬的范圍區(qū)間,將元組分配到各個分區(qū)。

    LIST分區(qū):類似于按RANGE分區(qū),區(qū)別在于LIST分區(qū)是基于列值匹配一個離散值集合中的某個值來進行選擇。

    HASH分區(qū):根據(jù)用戶定義的函數(shù)的返回值來進行選擇的分區(qū),該表達式使用將要插入到表中的這些行的列值進行計算。這個函數(shù)可以包含MySQL 中有效的、產(chǎn)生非負整數(shù)值的任何表達式。

    KEY分區(qū):類似于按HASH分區(qū),區(qū)別在于KEY分區(qū)只支持計算一列或多列,且MySQL 服務(wù)器提供其自身的哈希函數(shù)。

 以上所述是小編給大家介紹的Oracle10個分區(qū)和Mysql分區(qū)區(qū)別詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • MySQL下的RAND()優(yōu)化案例分析

    MySQL下的RAND()優(yōu)化案例分析

    這篇文章主要介紹了MySQL下的RAND()優(yōu)化案例,包括對JOIN查詢和子查詢的優(yōu)化,需要的朋友可以參考下
    2015-05-05
  • mysql數(shù)據(jù)庫空間統(tǒng)計sql代碼示例

    mysql數(shù)據(jù)庫空間統(tǒng)計sql代碼示例

    在mysql中有一個information_schema數(shù)據(jù)庫,這個數(shù)據(jù)庫中裝的是mysql的元數(shù)據(jù),包括數(shù)據(jù)庫信息、數(shù)據(jù)庫中表的信息等,這篇文章主要給大家介紹了關(guān)于mysql數(shù)據(jù)庫空間統(tǒng)計sql的相關(guān)資料,需要的朋友可以參考下
    2024-08-08
  • bitronix 連接 MySQL 出現(xiàn)MySQLSyntaxErrorException 的解決方法

    bitronix 連接 MySQL 出現(xiàn)MySQLSyntaxErrorException 的解決方法

    這篇文章主要介紹了bitronix 連接 MySQL 出現(xiàn)MySQLSyntaxErrorException 的解決方法的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • MyCAT上新增一個庫及MyCAT報錯1184的問題及解決

    MyCAT上新增一個庫及MyCAT報錯1184的問題及解決

    這篇文章主要介紹了MyCAT上新增一個庫及MyCAT報錯1184的問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • MySQL表分區(qū)配置入門指南

    MySQL表分區(qū)配置入門指南

    這篇文章主要為大家介紹了MySQL表分區(qū)配置入門指南,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-05-05
  • 使用Python的Django框架中的壓縮組件Django Compressor

    使用Python的Django框架中的壓縮組件Django Compressor

    這篇文章主要介紹了使用Python的Django框架中的壓縮組件Django Compressor,這個工具主要用于實現(xiàn)js/css的壓縮,需要的朋友可以參考下
    2015-05-05
  • MySQL中常見的六個約束類型詳解

    MySQL中常見的六個約束類型詳解

    數(shù)據(jù)類型是為了節(jié)約內(nèi)存,提高計算, 數(shù)據(jù)約束是為了完整性(存儲關(guān)系),下面這篇文章主要給大家介紹了關(guān)于MySQL中常見的六個約束類型的相關(guān)資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2021-09-09
  • Mysql時間軸數(shù)據(jù) 獲取同一天數(shù)據(jù)的前三條

    Mysql時間軸數(shù)據(jù) 獲取同一天數(shù)據(jù)的前三條

    這篇文章主要介紹了Mysql時間軸數(shù)據(jù) 獲取同一天數(shù)據(jù)的前三條 ,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-07-07
  • MySQL中查詢、刪除重復(fù)記錄的方法大全

    MySQL中查詢、刪除重復(fù)記錄的方法大全

    mysql中刪除重復(fù)記錄的方法有很多種,下面這篇文章主要給大家總結(jié)了在MySQL中查詢、刪除重復(fù)記錄的方法大全,文中給出了詳細的示例代碼供大家參考學(xué)習(xí),需要的朋友下面來一起看看吧。
    2017-06-06
  • mysql 觸發(fā)器語法與應(yīng)用示例

    mysql 觸發(fā)器語法與應(yīng)用示例

    這篇文章主要介紹了mysql 觸發(fā)器語法與應(yīng)用,結(jié)合實例形式詳細分析了mysql 觸發(fā)器的基本語法與插入、更細、刪除等相關(guān)操作技巧,需要的朋友可以參考下
    2020-05-05

最新評論