• OLAP工作的基本概念(结合个人工作)


    OLTP和OLAP
    传统的数据库系统都是OLTP,只能提供数据原始的操作。不支持分析工作。

    OLTP系统::执行联机事务和查询处理。一般超市进销存系统,功能:注册,记账,库存和销售记录等等,

    OLAP系统:数据分析与决策服务,组织不同格式数据,满足不同用户需求。

    区别:

    面向性。OLTP面向顾客,就是操作员,如超市收银员,银行柜台人员。OLAP面向市场,用于数据分析,分析人员包括数据分析员,做出决策的业务经理,或者策略制定部分。

             数据内容:OLTP当前数据。OLAP历史数据的汇总与聚集。

             数据库设计:OLTP用ER模型和面向应用数据库。OLAP 用星型或雪花模型,面向主题数据库设计。

             还有访问模式:操作事务与只读的分析计算的区别。

             等等

    多维数据模型:

    数据立方体cube:

    给定维度的每个子集产生一个cuboid(称为方体)。这样可以在不同粒度上的汇总级别或分组(group by),来显示数据,整体上方体的格成为cube。

    最低层汇总的方体称为基本方体(basecuboid)。出现某一个维度上的汇总后,则为非基本方体。

    汇总到最高层的数据称为顶点方体(apexcuboid),如0-d方体,that’s to say,所有维度汇总到一起只剩一个cuboid,不能再汇总了。

    顶点方体是最高泛化的方体。基本方体是最低特殊化的方体。

    粗细粒度是不同程度上的汇总,涉及操作:

    上卷(roll up),供应商称之为上钻drillup,沿着维度的概念分层向上

    下钻(drill down)沿着维度的概念分层向下,需找更细粒度的数据。

    切片:固定某一维度的取值,抽取这一维度下的子集。

    切块:由多个维度上选择多个取值,抽取其所映射的子立方体。

    旋转rotate: 也叫pivot数轴变换,简单说,二维表中的行列转置。到三维以上复杂,不同数轴之间的位置变换。说的高大上叫数据的视图角度转变

    概念分层:低层概念(如城市)映射到更高的层次概念(如国家)。从低到高叫泛化(generalize),从高到低叫特殊化(specialize)。

    模式分层(schema hierarchy)概念分层为数据库模式中属性的全序或偏序。

    集合分组分层(set-grouping hierarchy)给定维度的属性值的离散化或分组。如年龄age属性离散化为young、mid、old三个子集,分组group by sex的男女子集。

    数据立方体的实现:

    使用数据仓库的模型是多维模型,目前经常的有:

             星型模型:一个大而全,且无冗余的事实表(fact);以及不同分析维度上的维度表(dimension)。维度表围绕事实表,通过每个维度自身的dimension key(所有可能范围内的取值)关联。

             雪花模型:星型模型的进一步细化,即将其中包含多个值的维度表进行规范化的(就是将维度表包含的某个值提取出来,作为新的dimension表),以便减少冗余。

    这样把数据进一步分解到附加表中,易于维护,省空间(防止维度灾难),但查询时需要更多关联操作,降低时效性。

             事实星座模型(fact constellation)or 星系模式(galaxy schema):多个fact tableshare all dimesioms(共享维度表)。

    比如我的设计的data warehouse。Workbench

    Cube定义

    Dimension定义

    一般的data warehouse 都是用fact constellation。

    指标Index

    度量measure

    维度灾难(curse of dimensionality),当维度过多(特征空间非常复杂),那么维度之间的关联计算就变得非常多,而维度概念分层会加重灾难。反应在cube中,就是不同维度的计算就会产生巨大的数据,就是预计算cube中所有的方体(子cube),存储空间是爆炸似增长。N维会有2n个子cube,加上概念分层Li,则方体总数

    预计算:1不物化(no materialization)2全物化(full materialization)3部分物化(partial materialization)


  • 相关阅读:
    简单的NHibernate helper类,支持同一事务的批量数据处理
    外部唯一窗体
    Nhibernate常见的错误
    NHB下载地址
    oracle jdbc连接
    linux 中国发行版
    转:pl/sql develop的使用
    Oracle Database 10g Release 2 JDBC Drivers
    转:Setting up a Msysgit Server with copSSH on Windows
    oracle基础学习
  • 原文地址:https://www.cnblogs.com/cl1024cl/p/6205401.html
Copyright © 2020-2023  润新知