zoukankan      html  css  js  c++  java
  • 拉链表设计

     在企业中,由于有些流水表每日有几千万条记录,数据仓库保存5年数据的话很容易不堪重负,因此可以使用拉链表的算法来节省存储空间。

    1.采集当日全量数据存储到 ND(当日) 表中。 
    2.可从历史表中取出昨日全量数据存储到 OD(上日数据)表中。
    3.用ND-OD为当日新增和变化的数据(即日增量数据)。

    两个表进行全字段比较,将结果记录到tabel_I表中

    4.用OD-ND为状态到此结束需要封链的数据。 (需要修改END_DATE)

    两个表进行全字段比较,将结果记录到tabel_U表中 
    5.历史表(HIS)比ND表和OD表多两个字段(START_DATE,END_DATE) 
    6.将tabel_I表的内容全部insert插入到HIS表中。START_DATE='当日',END_DATE可设为'9999-12-31' 
    7.更新封链记录的END_DATE

    历史表(HIS)和tabel_U表比较,START_DATE,END_DATE除外,以tabel_U表为准,两者交集将其END_DATE改成当日,说明该记录失效。 
    8。取数据时对日期进行条件选择即可,如:取20100101日的数据为 
    (where START_DATE<='20100101' and END_DATE>'20100101' )

  • 相关阅读:
    推荐系统学习--cb+cf 初见
    耳机的阻抗和灵敏度问题
    java中常见的几种Runtimeexception
    java泛型
    ubuntu安装opencv
    ubuntu12.04静态ip设置问题
    Graph Theory
    SQL简单上手教程
    C++ 构造函数、拷贝构造函数和赋值运算符重载
    C语言函数调用栈
  • 原文地址:https://www.cnblogs.com/zhangchenliang/p/2680945.html
Copyright © 2011-2022 走看看