暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle分区表基础运维-03HASH分区

IT小Chen 2021-04-13
1349

Hash Partitioning

Hash partitioning maps data to partitions based on a hashing algorithm that Oracle applies to the partitioning key that you identify.

The hashing algorithm evenly distributes rows among partitions, giving partitions approximately the same size.

Hash partitioning is the ideal method for distributing data evenly across devices. Hash partitioning is also an easy-to-use alternative to range partitioning, especially when the data to be partitioned is not historical or has no obvious partitioning key.

创建HASH分区表

---创建hash分区表hash_part_tab

    create table hash_part_tab (id number,deal_date date,area_code number,contents varchar2(4000))
    partition by hash (deal_date)
    PARTITIONS 12;

    --以下是插入一整年日期随机数和表示福建地区号含义(591到599)的随机数记录,共有10万条,如下:

      insert into hash_part_tab
      (id, deal_date, area_code, contents)
      select rownum,
      to_date(to_char(sysdate - 365, 'J') +
      TRUNC(DBMS_RANDOM.VALUE(0, 365)),
      'J'),
      ceil(dbms_random.value(590, 599)),
      rpad('*', 400, '*')
      from dual
      connect by rownum <= 100000;
      commit;

      ---查看当前用户下有哪些分区表

        select TABLE_NAME from user_tables a where a.partitioned='YES';

        ---查看分区表名,分区名,表空间等信息

          select table_name, partition_name, tablespace_name, high_value
          from user_tab_partitions
          where table_name = 'HASH_PART_TAB';

          ---通过object_id查看每个分区数据分布情况

            select * from dba_segments where segment_name = 'HASH_PART_TAB';
            select * from dba_objects where object_name='HASH_PART_TAB';
            select dbms_rowid.rowid_object(rowid) obj_id, count(*)
            from HASH_PART_TAB
            group by dbms_rowid.rowid_object(rowid)
            order by 1;

            hash partition不能直接增加分区,而是split当前分区hash bucket总是2的N次方,如果分区数不足,则会合并数据,产生不均衡的情况,这样增加分区时,只需要对应分区的数据做split即可。同理,减少分区也不是简单的drop,而是合并分区。

            例如上面我们创建了12个分区,实际上hash bucket数量是24次方,既16hash bucket,多出的4hash bucket会进行合并,会产生数据不均,也就是有4个分区的数据会比较多。即OBJ_ID=77373,77374,77375,77376四个分区数据较多。

            ---增加新分区P1

              alter table HASH_PART_TAB add partition P1;

              此时OBJ_ID=77373的分区,分裂成OBJ_ID=77392OBJ_ID=77393,数据由11191分成57615431分布存在这两个分区里。

              ---增加新分区P2

                alter table HASH_PART_TAB add partition P2;

                ---增加新分区P3

                  alter table HASH_PART_TAB add partition P3;

                  ---增加新分区P4

                    alter table HASH_PART_TAB add partition P4;

                    此时有16个分区了,是24次方,数据较比12个分区时,分布更均匀了。

                    ---增加新分区P5,第一个分区OBJ_ID=77369分裂成两个新分区,其他分区数据不变。

                      alter table HASH_PART_TAB add partition P5;

                      HASH分区表不能通过如下方式进行删除

                        alter table HASH_PART_TAB drop partition P5;

                        ORA-14255:table is not partitioned by Range, List, Composite Range or Composite List method

                        更多数据库相关学习资料,可以查看我的ITPUB博客,网名chenoracle

                        http://blog.itpub.net/29785807/

                        oracle
                        文章转载自 IT小Chen,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                        评论

                        哆哆女性网网站建设学习班免费ipa自签名网站界面设计步骤给一个卖古典家具的公司起名专业公司网站设计深圳高端品牌网站建设免费韩国伦费影视在线观看做梦被耗子咬周公解梦2021年小升初录取分数线读书的个性签名短句池州有什么特色美食张爱玲经典语录甘姓男孩起名字大全夏邑县孔庄镇老鹰捉小鸡作文我想起一名名字回收公司名字怎么起世界 未解之谜起名含土营销推广案例分析梦见掉牙齿怎么化解车牌号查询车主信息欧式设计网站周公破解梦大全饭店网站设计特产网站的设计北京卫视节目网站优化推广怎么作网站营销推广计划书合作社起名字免费淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻不负春光新的一天从800个哈欠开始有个姐真把千机伞做出来了国产伟哥去年销售近13亿充个话费竟沦为间接洗钱工具重庆警方辟谣“男子杀人焚尸”男子给前妻转账 现任妻子起诉要回春分繁花正当时呼北高速交通事故已致14人死亡杨洋拄拐现身医院月嫂回应掌掴婴儿是在赶虫子男孩疑遭霸凌 家长讨说法被踢出群因自嘲式简历走红的教授更新简介网友建议重庆地铁不准乘客携带菜筐清明节放假3天调休1天郑州一火锅店爆改成麻辣烫店19岁小伙救下5人后溺亡 多方发声两大学生合买彩票中奖一人不认账张家界的山上“长”满了韩国人?单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#青海通报栏杆断裂小学生跌落住进ICU代拍被何赛飞拿着魔杖追着打315晚会后胖东来又人满为患了当地回应沈阳致3死车祸车主疑毒驾武汉大学樱花即将进入盛花期张立群任西安交通大学校长为江西彩礼“减负”的“试婚人”网友洛杉矶偶遇贾玲倪萍分享减重40斤方法男孩8年未见母亲被告知被遗忘小米汽车超级工厂正式揭幕周杰伦一审败诉网易特朗普谈“凯特王妃P图照”考生莫言也上北大硕士复试名单了妈妈回应孩子在校撞护栏坠楼恒大被罚41.75亿到底怎么缴男子持台球杆殴打2名女店员被抓校方回应护栏损坏小学生课间坠楼外国人感慨凌晨的中国很安全火箭最近9战8胜1负王树国3次鞠躬告别西交大师生房客欠租失踪 房东直发愁萧美琴窜访捷克 外交部回应山西省委原副书记商黎光被逮捕阿根廷将发行1万与2万面值的纸币英国王室又一合照被质疑P图男子被猫抓伤后确诊“猫抓病”

                        哆哆女性网 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化