《SAP HANA平台应用开发》—第3章3.1节信息建模

简介:

本节书摘来自华章出版社《SAP HANA平台应用开发》一书中的第3章,第3.1节信息建模,作者刘刚,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

第3章 信 息 建 模
如果读者已经具有关于SAP HANA信息建模和存储过程的知识,可以跳过本章及第4章,直接学习第5章,这样并不会对后续的学习有任何影响。
在SAP HANA中进行XS应用开发时,最先接触到的开发对象应就是HANA信息模型(属性视图、分析视图、计算视图、SQL视图)了。但是,信息建模仅仅是SAP HANA XS应用开发的一个组成部分,相对比较独立。
在实际项目中,不使用任何信息模型也能完成整个XS应用的开发。但是,因为基于SAP HANA的信息模型是一个虚拟多维数据立方体,并且还提供了应用权限(Application Privileges)对象,这可以使我们很容易应用它的高效率聚合运算、层级视图、虚拟计算列、访问隔离特性、灵活复用性、易于升级等功能,而且信息模型的运算效率比纯SQL的表关联查询效率要高,这也是在XS应用中大量应用它的原因。
**注意事项:
第3章和第4章执行和演示的开发方式均没有采用XS项目的方式,而是直接在HANA运行期的Content下进行开发的。之所以这样做,是因为SAP HANA信息建模只是XS应用开发的一个部分,并且不依赖于任何XS对象,它还早于XS应用服务器被包含到SAP HANA产品中的,所以,笔者觉得第3章和第4章与XS应用开发没有直接关系(没有引用任何XS应用的对象)。只是从SPS08开始,HANA信息建模也有了设计期对象(xxx.attributeview、xxx.analyticalview等),开发人员在XS项目中对其进行创建、修改、激活操作。
如果将这些信息建模的内容放入XS应用开发的过程中进行讲解,读者可能突然就从XS应用的开发中跳转到HANA信息建模了,然后在2章之后,又回到XS应用的开发,这样会导致本书的编排出现问题,会使读者觉得内容不够自然和流畅。
学习完SAP HANA信息建模之后,再学习开发XS应用,直接在XS项目下创建一个HANA信息模型、分析权限,然后在XS项目中使用这些创建好的信息模型就可以了。
这里应注意一点:在XS应用下开发的SAP HANA信息模型是放在XS项目下的package中,而不是直接在content中创建出来的。**

3.1 准备工作和TPC-H
在2.3.4节,已经创建了DEMO、DEMO_2、HANA_TPCH三个用户,接下来会使用HANA_TPCH用户登录到SAP HANA系统,然后创建TPC-H表,并且导入一些测试数据。
HANA_TPCH这个用户拥有以下权限:
MODELING(系统权限)。
_SYS_BIC的SELECT、EXECUTE操作权限。
_SYS_BI的SELECT、EXECUTE操作权限。
TPC-H表定义的SQL脚本和数据,可以在www.hanapost.com/download中下载,打开TPC-H的SQL脚本之后,记得将Schema名字换成你自己创建的Schema名字。图3-1所示为TPC-H模型的所有数据库表的关系图,如果读者创建了一些测试数据,也应考虑这些数据的一致性。
接下来,介绍在SAP HANA工作台中的具体操作步骤。由于Attribute View(属性视图)是SAP HANA建模的基础,因此这里先介绍如何使用SAP HANA工作台的建模工具创建TPC-H模型中的两个属性视图,如图3-2所示。
本节将重点介绍客户(CUSTOMER)属性视图的创建步骤。对于供应商部件(SUPPLIER_PART),其操作步骤与客户类似。为了节省篇幅,在本节的结尾只会围绕几个截图进行简要介绍,不再涉及具体步骤。
从建模方法来看,SAP HANA建模应该归到ROLAP(Relational OLAP)的范畴,因此,属性视图取代了传统RDBMS中的维度表。并且,可以使用属性视图实现更加灵活、复杂的功能:
可以在多张OLTP业务表的基础上构建单个维度。
可以暴露数据库表的部分列,或添加新列(Calculated Column)。
可以预先设置过滤条件(Filter),减少查询时的数据量,提高效率。
可以创建Hierarchy(层次结构),实现分析中常用的钻取功能。


694995cd3f8e20b27205e3423a8c982052a7ca81


db415e0d91cb73e4537018cf29858e7da4454307

SAP HANA模型视图需要存放在同一个地方,所以,首先需要创建一个后面要用到的package。在本例中,创建一个名为demo的package。
步骤如下:切换到SAP HANA Modeler视角,然后在Content文件夹中右击,创建一个package(名称为demo),暂时不为它分配任何Delivery Unit。
相关文章
|
1月前
|
开发者 数据处理 数据管理
SAP HANA 的不同类型
SAP HANA 的不同类型
38 9
SAP HANA 的不同类型
|
1月前
|
SQL 数据库 索引
关于 SAP ABAP REPOSRC 数据库表在 HANA 中的 DDL Definition
关于 SAP ABAP REPOSRC 数据库表在 HANA 中的 DDL Definition
20 1
关于 SAP ABAP REPOSRC 数据库表在 HANA 中的 DDL Definition
|
2月前
|
Linux 开发工具 开发者
关于 SAP HANA 开发那些事
关于 SAP HANA 开发那些事
24 0
|
4月前
|
SQL 存储 数据可视化
SAP HANA 内存数据库不同类型的视图的应用场景介绍
SAP HANA 内存数据库不同类型的视图的应用场景介绍
58 0
|
1月前
|
数据库 存储 监控
什么是 SAP HANA 内存数据库 的 Delta Storage
什么是 SAP HANA 内存数据库 的 Delta Storage
18 0
什么是 SAP HANA 内存数据库 的 Delta Storage
|
27天前
|
Java BI API
SAP Cloud for Customer 里如何通过 ABSL 二次开发方式消费 SAP S/4HANA 系统的 API
SAP Cloud for Customer 里如何通过 ABSL 二次开发方式消费 SAP S/4HANA 系统的 API
18 0
|
1月前
|
Linux 数据库连接 数据库
如何在 Linux 系统下使用 PHP 和 ODBC 连接 SAP HANA
如何在 Linux 系统下使用 PHP 和 ODBC 连接 SAP HANA
17 0
|
1月前
|
数据库
SAP S/4HANA 系统的底层基石 - 通过实际的例子,介绍 CDS View 入门级的概念试读版
SAP S/4HANA 系统的底层基石 - 通过实际的例子,介绍 CDS View 入门级的概念试读版
8 0
SAP S/4HANA 系统的底层基石 - 通过实际的例子,介绍 CDS View 入门级的概念试读版
|
1月前
|
数据库 SQL 应用服务中间件
SAP ABAP CDS View 和 HANA CDS View 相同点和不同点辨析
SAP ABAP CDS View 和 HANA CDS View 相同点和不同点辨析
22 0
SAP ABAP CDS View 和 HANA CDS View 相同点和不同点辨析
|
3月前
|
存储 数据库
如何查询 SAP ABAP 系统做过的基于源代码的增强信息试读版
如何查询 SAP ABAP 系统做过的基于源代码的增强信息试读版
19 0