首页 理论教育 多信息提供者和信息集的原理和区别详解

多信息提供者和信息集的原理和区别详解

时间:2023-06-09 理论教育 版权反馈
【摘要】:表9-3 销售和发货的原始数据2)用MultiProvider连接两个DSO,Union的结果如表9-4所示。表9-6 InfoSet Left Outer Join的结果MultiProvider和InfoSet是比较常用的两种逻辑视图类InfoProvider,初学者往往混淆或者误用,所以除了会操作,还要掌握好它们的原理和区别,这样在项目中就可以得心应手。

多信息提供者和信息集的原理和区别详解

除了上面的操作实例,还可以通过下面的实例来理解它们的原理和区别,读者可以参考本节内容,在系统中建模并加载数据验证。

1)下面有两个DSO,分别表示销售和发货情况,如表9-3所示。

表9-3 销售和发货的原始数据

978-7-111-37555-5-Part03-81.jpg

2)用MultiProvider连接两个DSO,Union的结果如表9-4所示。

表9-4 MultiProvider Union的结果

978-7-111-37555-5-Part03-82.jpg

3)用InfoSet连接两个DSO,通过月份连接,Inner Join的结果如表9-5所示。

表9-5 InfoSet Inner Join的结果

978-7-111-37555-5-Part03-83.jpg(www.xing528.com)

4)用InfoSet连接两个DSO,通过月份连接,Left Outer Join的结果如表9-6所示。

表9-6 InfoSet Left Outer Join的结果

978-7-111-37555-5-Part03-84.jpg

MultiProvider和InfoSet是比较常用的两种逻辑视图类InfoProvider,初学者往往混淆或者误用,所以除了会操作,还要掌握好它们的原理和区别,这样在项目中就可以得心应手。

●两者关键的区别是数据的连接方式,MultiProvider是Union,而InfoSet是Join。

●MultiProvider连接的下层对象中,具有同一个特性的记录分别有M条和N条,那么MultiProvider就最少有Max(M,N)条记录,即M和N中的最大值,最多有M+N条记录。

●InfoSet设定连接的特性后,如果在连接的下层对象中,具有同一个特性的记录分别有M条和N条,那么InfoSet就有M×N条记录

●MultiProvider是InfoCube的结构,所有的Characteristics都是主键,它是用这个结构去下层对象里提取数据,再在报表中展现数据。当下层对象记录缺少相应的特性时,就显示“#”,即初始值。

在实际项目应用中,我们首先要根据业务需求来考虑使用MultiProvider或InfoSet,一定要确保获得有实际业务意义的结果集,其次还要考虑性能问题。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈