声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4295513.html
 
有些特征是不带属性的(如下面的电话号码、过期日期、交货完成标识)——称简单特征,这种特征是不带主数据的,即没有属性P表(但还是有S表,用来存储SID的底表,加快查询速度);有些是带文本的(如下面的性别标识有文本),会有对应的T表文本表;再如下面的Product即带属性、又带文本、还带层次关系,只要是带属性的特征,在底层就会有一张P表与之对应(文本、层次也是有对应的底表的):
带属性、文本、层次的特征:

时间相关的层次:

如果某个特征带层次结构,特征的“Attribute Only”不能勾上
 
SID表:只要是特征,不管该特征是否是勾上了“仅属性Attribute Only”选项,也不管该特征是否带属性、文本、层次,特征都会有一个SID表,该表中特征本身是主键,而SID字段为整型类型字段,这样设计的目的是加块查询的率效(因为一般通过整型类型的字段进行关联与查询速度要快,Fact表里存储的就是SID,不是特征本身的值),所以SAP在设计特征时都会生成一个SID表:
 
 
M表:实质上不是表,而是视图,它的字段来自P表或Q表、或者是P表+Q表中的字段,存储了特征的 Attribute 页签中的所有附加属性。
当所有属性都是时间无关的属性时,就只有P表,没有Q表(有无P表、Q表,与是否导航无关,只与时间有关),此时M表的所有字段只来自于P表:
 
 
  • 当所有属性都是时间相关的属性时,就只有Q表,没有P表(有无P表、Q表,与是否导航无关,只与时间有关),此时M表的所有字段只来自于Q表:
 
 
 
  • 当有部分属性是时间相关的,另一部分又是与时间无关的属性时,就会有P表,也有Q表(有无P表、Q表,与是否导航无关,只与时间有关),此时M表的是由 P表与Q表Join而来:
 
 
  • 当特征的Master data/texts 页签中的 With master data勾去掉,且没有附加属性时(加了属性后,激活时With master data会自动勾上),M表就不会存在,但只要 With master data勾上,就会有M表:
  • 只要With master data勾上,即使没有附加属性,都会生成M、P表:
 
 
 
P表:只要有时间无关的属性,就会生成P表,且此时时间无关的属性都会成为该表的组成字段
X表:只要有时间无关的导航属性,就会生成X表,X表实质上就是SID,就像特征本身有一个SID表一样,因为为了导航速度快,所以需要为导航属性生成对应的SID
Q表:只要有时间相关的属性,就会生成Q表,且此时时间相关的属性都会成为该表的组成字段
Y表:只要有时间相关的导航属性,就会生成Y表,与X表一样,Y表实质上也是SID,也是为了导航速度快而生成的
 
 
 
T表:文本表
 

特征的SID表、M表、P表、Q表、X表、Y表、T表的更多相关文章

  1. Linux 在 i 节点表中的磁盘地址表中,若一个文件的长度是从磁盘地址表的第 1 块到第 11 块 解析?

    面试题: 在 i 节点表中的磁盘地址表中,若一个文件的长度是从磁盘地址表的第 1 块到第 11块,则该文件共占有 B  块号.A 256 B 266 C 11 D 256×10 linux文件系统是L ...

  2. Oracle笔记 五、创建表、约束、视图、索引、序列、同义词、表空间

    alter table userInfo add(msn varchar2(20)); 1.建表 create table userInfo ( id number(6), name varchar2 ...

  3. SQL中如何将一个表中的某一列的数据复制到另一个表中的某一列里

    表一: SPRD PRD_NO      SPC 001                NULL 002               NULL 003               NULL ...   ...

  4. springdata 查询思路:基本的单表查询方法(id,sort) ---->较复杂的单表查询(注解方式,原生sql)--->实现继承类---->复杂的多表联合查询 onetomany

    springdata 查询思路:基本的单表查询方法(id,sort) ---->较复杂的单表查询(注解方式,原生sql)--->实现继承类---->复杂的多表联合查询 onetoma ...

  5. 注册表的作用、bat文件中REG ADD命令添加注册表项以及bat

    注册表的用途与设置 注册表是windows的核心,里面储存着大量的系统信息,说白了就是一个庞大的数据库.如果你不懂什么是数据库,那没关系,不影响你了解注册表,不过最好对数据库有所了解.注册表里面所有的 ...

  6. pycharm 直接删掉数据表之后,makemigration和migrate 之后,数据库中依然没有生成数据表的问题

    综合分析一下行程这个问题的原因: 在终端中运行 select * from django_migrations; 查看 提交的记录,如果你的表删掉了,记录还在,那么数据库会觉得,这个表依然是存在的,所 ...

  7. java模拟表单上传文件,java通过模拟post方式提交表单实现图片上传功能实例

    java模拟表单上传文件,java通过模拟post方式提交表单实现图片上传功能实例HttpClient 测试类,提供get post方法实例 package com.zdz.httpclient; i ...

  8. MySQL---数据表基本操作(增删改查、排序、分组、连表)

    一.表操作 1.创建表 create table 表名( 列名 类型 是否可以为空, 列名 类型 是否可以为空 )ENGINE=InnoDB DEFAULT CHARSET=utf8 是否可空,nul ...

  9. phalcon: 按年分表的model怎么建?table2017,table2018...相同名的分表模型怎么建

    phalcon: 按年分表的model怎么建?table2017,table2018...相同名的分表模型怎么建 场景:当前有一张表:Ntime,因为表太大了,考虑要分表: Ntime2017 Nti ...

  10. SQL将一个表中的某一列值全部插入到另一个表中

    1.  SQL将一个表中的某一列值全部插入到另一个表中 插入的话: insert into a(col) select col from b; 更新的话: update a set col=selec ...

随机推荐

  1. Windows NT驱动程序的基本结构和实例

    Windows驱动程序分为两类:一类是不支持即插即用功能的NT式驱动程序:另一类是支持即插即用功能的WDM驱动程序. NT式驱动的基本结构: 1)驱动加载过程与驱动入口函数DriverEntry: 驱 ...

  2. response的Writer输出数据的问题

    package cn.itcast.response; import java.io.IOException; import java.io.OutputStream; import java.io. ...

  3. 【iCore3 双核心板】例程十九:USBD_MSC实验——虚拟U盘

    实验指导书及代码包下载: http://pan.baidu.com/s/1i4eNbQd iCore3 购买链接: https://item.taobao.com/item.htm?id=524229 ...

  4. 使用DB4o做一个.Net版的website(一)环境

    一个机缘巧合之下,知道了DB4o这个数据库引擎,下载查看之后,被其方便.高效.以及便捷的管理方式锁折服. 故决定使用其做一个.NET版本的web站点,来巩固学到的知识,以及为后来人做一点点贡献. 首先 ...

  5. 【Swing】理解Swing中的事件与线程

    talk is cheap , show me the code. Swing中的事件 事件驱动 所有的GUI程序都是事件驱动的.Swing当然也是. GUI程序不同于Command Line程序,一 ...

  6. php应用路径变量问题总结

    实际效果测试,不考虑原理! 本地服务器,域名http://d.com,根路径D:\phpnow\vhosts\d.com.yii,相对根目录拥有文件/x.php代码里requeir_once /a/a ...

  7. magento 每日新品展示

    http://blog.csdn.net/benben0503/article/details/8647020 1.创建Newarrivals.php文件: <?php /** * This i ...

  8. oracle 用户锁定及到期

    select * from dba_users where username='HR'--查询用户状态 alter user HR identified by HR;--重新更新密码alter use ...

  9. Did not find handler method for springMVC资源文件扫描不到---关于spring的那些坑

    今天将项目的spring版本升级到4.2.5版本后,登录首页发现资源文件全部访问不到,页面彻底挂掉: 查找原因,后来又查找spring的更新文档后,才确认下来原来是mvc-dispatcher-ser ...

  10. iOS,文本输入,键盘相关

    1.UIKeyboard键盘相关知识点 2.点击空白区域隐藏键盘(UIKeyboard) 3.键盘(UIKeyboard)挡住输入框处理 4.自定义键盘(UIKeyboard) 5.监听键盘弹出或消失 ...