zoukankan      html  css  js  c++  java
  • oracle_根据ID(字符型)建立分区表

    方案思路:有一张暴增的数据表(10亿级别),以后需求需要提高单条查询性能, 这个表有个唯一ID,

    假设是UUID,采用区分首字母的方法,不同字母的数据入到不同的物理文件中。 

    第一步:

    查找数据库服务器本机 物理文件存放位置 例如 ,D:oracleproduct10.2.0oradatadatabase  

    在此目录下新建文件夹  partition   。用于存放分区表 下不同表空间的dbf(物理文件)。

    第二步: 

    建立分区表需要的表空间 。

    CREATE  TABLESPACE tablespace_a  LOGGING  DATAFILE  'D:oracleproduct10.2.0oradatadatabasepartition ablespace_a_0.DBF '   SIZE 10M  AUTOEXTEND  ON   NEXT  10M MAXSIZE 100M  EXTENT MANAGEMENT LOCAL;

    CREATE  TABLESPACE tablespace_b  LOGGING  DATAFILE  'D:oracleproduct10.2.0oradatadatabasepartition ablespace_b_0.DBF '   SIZE 10M  AUTOEXTEND  ON   NEXT  10M MAXSIZE 100M  EXTENT MANAGEMENT LOCAL;

    第三步:

    建立分区表

    ---create by cphmvp  20131220
    create table tab_page_relation_partition
    (
     
      UNIQUE_ID         CHAR(32) not null,
      DATA_ID           CHAR(32),
      NICK_ID           NUMBER,
      URL               VARCHAR2(512),
      UPDATE_TIME       DATE,
      INSERT_TIME       DATE default sysdate not null,
      LAST_CRAWLER_TIME DATE,
      MARK              NUMBER default 0 not null
    )
    --根据unique_id区分 数据,逻辑上独立,物理上分开 
    partition by range(UNIQUE_ID)
    (
      partition part_a values less than('b') tablespace tablespace_a,
      partition part_b values less than(maxvalue) tablespace tablespace_b
     
    );
    

      

     四:

    插入测试

    INSERT INTO tab_page_relation_partition (unique_id) VALUES('accccccccccc');

    INSERT INTO tab_page_relation_partition (unique_id) VALUES('bccccccccccc');

    INSERT INTO tab_page_relation_partition (unique_id) VALUES('cccccccccccc');

    commit;

    查询:

    SELECT * FROM tab_page_relation_partition ;
    select*from tab_page_relation_partition PARTITION(PART_A);
    select*from tab_page_relation_partition PARTITION(PART_B);

    五:

    清理工作 

    删除表

    DROP TABLE tab_page_relation_partition;

    删除物理文件含表空间

    DROP TABLESPACE TABLESPACE_A INCLUDING CONTENTS AND DATAFILES;
    DROP TABLESPACE TABLESPACE_B INCLUDING CONTENTS AND DATAFILES;

  • 相关阅读:
    linux如何给程序添加自启动
    nginx 反向代理apache服务器 配置java与PHP共存环境
    eclipse配置Js环境spket
    Linux下实现秒级定时任务的两种方案
    Linux时间戳和标准时间的互转
    thinkphp与php共享session
    安装PHP sphinx扩展 sphinx-1.1.0/sphinx.c:105:2: error: too few arguments 错误
    MySQLCouldn't find MySQL manager
    PHP 使用header函数设置HTTP头的示例方法 表头 (xlsx下载)
    JAVA正则表达式 Pattern和Matcher
  • 原文地址:https://www.cnblogs.com/cphmvp/p/3483802.html
Copyright © 2011-2022 走看看