数据模型查询

时间:2017-10-27 03:30:27

标签: oracle data-modeling

民间,

我有大约200万个资产,在给定的一天内发送15分钟的间隔数据(即)给定的一天总共96个间隔。什么是最好的数据库建模方法。我的目标RDBMS是Oracle。

我按周划分,每隔一段时间我需要存储间隔类型(INT_TYPE)(即实际或估计等),

选项 - 1在数据方面会过于深入。

选项 - 2可以最小化音量,但我如何在选项-2中建模列间隔类型?这样我们就可以捕获间隔类型??

- 选项1

CREATE TABLE TRANS.ASSET_DAILY_INT(
    INT_READ_DT                        DATE             NOT NULL,
     ASSET_ID                        VARCHAR2(30)      NOT NULL,  
     MINUTES                         NUMBER (2,0)       NOT NULL,  
    INT_VALUE                   FLOAT(126)              NOT NULL,
    **INT_TYPE                    VARCHAR2(30)          NOT NULL,**
   ASSET_TYPE                     NUMBER(38,0),
    INT_SUM_DAY_USG                  FLOAT(126),
    HIGHEST_INT_DAY_USG              FLOAT(126),
    CREATED_DT                       DATE,
    MODIFIED_DT                      DATE,
     )

TABLESPACE TRANS
PARALLEL(DEGREE 4 INSTANCES 1)
PARTITION BY RANGE(MDM_READ_DT)
INTERVAL (NUMTODSINTERVAL(7,'DAY'))
(PARTITION p_first VALUES LESS THAN ('01-JAN-2010'));

- 选项2如何在Option-2中对列间隔类型建模?这样我们就可以捕获间隔类型??

CREATE TABLE TRANS.ASSET_DAILY_INT(
    INT_READ_DT                        DATE             NOT NULL,
     ASSET_ID                        VARCHAR2(30)      NOT NULL,  
    INT_VALUE_0000                   FLOAT(126),
    INT_VALUE_0015                   FLOAT(126),
    INT_VALUE_0030                   FLOAT(126),
    INT_VALUE_0045                   FLOAT(126),
    INT_VALUE_0100                   FLOAT(126),
    INT_VALUE_0115                   FLOAT(126),
    INT_VALUE_0130                   FLOAT(126),
    INT_VALUE_0145                   FLOAT(126),
    INT_VALUE_0200                   FLOAT(126),
    INT_VALUE_0215                   FLOAT(126),
    INT_VALUE_0230                   FLOAT(126),
    INT_VALUE_0245                   FLOAT(126),
    INT_VALUE_0300                   FLOAT(126),
    INT_VALUE_0315                   FLOAT(126),
    INT_VALUE_0330                   FLOAT(126),
    INT_VALUE_0345                   FLOAT(126),
    INT_VALUE_0400                   FLOAT(126),
    INT_VALUE_0415                   FLOAT(126),
    INT_VALUE_0430                   FLOAT(126),
    INT_VALUE_0445                   FLOAT(126),
    INT_VALUE_0500                   FLOAT(126),
    INT_VALUE_0515                   FLOAT(126),
    INT_VALUE_0530                   FLOAT(126),
    INT_VALUE_0545                   FLOAT(126),
    INT_VALUE_0600                   FLOAT(126),
    INT_VALUE_0615                   FLOAT(126),
    INT_VALUE_0630                   FLOAT(126),
    INT_VALUE_0645                   FLOAT(126),
    INT_VALUE_0700                   FLOAT(126),
    INT_VALUE_0715                   FLOAT(126),
    INT_VALUE_0730                   FLOAT(126),
    INT_VALUE_0745                   FLOAT(126),
    INT_VALUE_0800                   FLOAT(126),
    INT_VALUE_0815                   FLOAT(126),
    INT_VALUE_0830                   FLOAT(126),
    INT_VALUE_0845                   FLOAT(126),
    INT_VALUE_0900                   FLOAT(126),
    INT_VALUE_0915                   FLOAT(126),
    INT_VALUE_0930                   FLOAT(126),
    INT_VALUE_0945                   FLOAT(126),
    INT_VALUE_1000                   FLOAT(126),
    INT_VALUE_1015                   FLOAT(126),
    INT_VALUE_1030                   FLOAT(126),
    INT_VALUE_1045                   FLOAT(126),
    INT_VALUE_1100                   FLOAT(126),
    INT_VALUE_1115                   FLOAT(126),
    INT_VALUE_1130                   FLOAT(126),
    INT_VALUE_1145                   FLOAT(126),
    INT_VALUE_1200                   FLOAT(126),
    INT_VALUE_1215                   FLOAT(126),
    INT_VALUE_1230                   FLOAT(126),
    INT_VALUE_1245                   FLOAT(126),
    INT_VALUE_1300                   FLOAT(126),
    INT_VALUE_1315                   FLOAT(126),
    INT_VALUE_1330                   FLOAT(126),
    INT_VALUE_1345                   FLOAT(126),
    INT_VALUE_1400                   FLOAT(126),
    INT_VALUE_1415                   FLOAT(126),
    INT_VALUE_1430                   FLOAT(126),
    INT_VALUE_1445                   FLOAT(126),
    INT_VALUE_1500                   FLOAT(126),
    INT_VALUE_1515                   FLOAT(126),
    INT_VALUE_1530                   FLOAT(126),
    INT_VALUE_1545                   FLOAT(126),
    INT_VALUE_1600                   FLOAT(126),
    INT_VALUE_1615                   FLOAT(126),
    INT_VALUE_1630                   FLOAT(126),
    INT_VALUE_1645                   FLOAT(126),
    INT_VALUE_1700                   FLOAT(126),
    INT_VALUE_1715                   FLOAT(126),
    INT_VALUE_1730                   FLOAT(126),
    INT_VALUE_1745                   FLOAT(126),
    INT_VALUE_1800                   FLOAT(126),
    INT_VALUE_1815                   FLOAT(126),
    INT_VALUE_1830                   FLOAT(126),
    INT_VALUE_1845                   FLOAT(126),
    INT_VALUE_1900                   FLOAT(126),
    INT_VALUE_1915                   FLOAT(126),
    INT_VALUE_1930                   FLOAT(126),
    INT_VALUE_1945                   FLOAT(126),
    INT_VALUE_2000                   FLOAT(126),
    INT_VALUE_2015                   FLOAT(126),
    INT_VALUE_2030                   FLOAT(126),
    INT_VALUE_2045                   FLOAT(126),
    INT_VALUE_2100                   FLOAT(126),
    INT_VALUE_2115                   FLOAT(126),
    INT_VALUE_2130                   FLOAT(126),
    INT_VALUE_2145                   FLOAT(126),
    INT_VALUE_2200                   FLOAT(126),
    INT_VALUE_2215                   FLOAT(126),
    INT_VALUE_2230                   FLOAT(126),
    INT_VALUE_2245                   FLOAT(126),
    INT_VALUE_2300                   FLOAT(126),
    INT_VALUE_2315                   FLOAT(126),
    INT_VALUE_2330                   FLOAT(126),
    INT_VALUE_2345                   FLOAT(126),
    ASSET_TYPE                     NUMBER(38,0),
    INT_SUM_DAY_USG                  FLOAT(126),
    HIGHEST_INT_DAY_USG              FLOAT(126),
    CREATED_DT                       DATE,
    MODIFIED_DT                      DATE,
     )
TABLESPACE TRANS
PARALLEL(DEGREE 4 INSTANCES 1)
PARTITION BY RANGE(MDM_READ_DT)
INTERVAL (NUMTODSINTERVAL(7,'DAY'))
(PARTITION p_first VALUES LESS THAN ('01-JAN-2010'));

0 个答案:

没有答案