http://scn.sap.com/community/developer-center/hana/blog/2013/01/11/what-can-you-do-with-decision-tables-in-sap-hana-sp05

利用SAP HANA,越来越多的计算和应用逻辑被放到数据库层,从而利用多核CPU的能力来更快的得到结果。但是在这样一个计算过程里,当一个应用想要做一个操作决 策,不论是应用层要拿回控制权来执行一些规则(BRFplus,NW BRM等等),还是这些规则被专家编写为SQL脚本/存储过程。

在第一种情况里,往返时间和ETL处理(把数据传送到规则引擎或者从规则引擎传出)花费了很多时间,这样你基于HANA的应用可能不会在你希望的亚秒级时间里应答你的动作,这对于大数据集来说更显而易见。

在第二种情况中,往返时间没有问题,但是规则不能被不懂SQL的人定义,比如一个业务用户。所以在建立规则的时候就会有潜在问题,这样就不够敏捷并且开销更多。所以,一个规则引擎宿主在SAP HANA中就非常必要。

决策表在SAP HANA SP05中提供,有了它,一名非技术用户可以用简单的语言定义操作决策/规则,他们懂得这些传输到SAP HANA的SQL存储过程中。

决策表让你为规则建模,根据来自不同SAP HANA的数据,如一个或更多HANA表、建模视图(比如属性视图,计算视图)、HANA表类型,确定的决策可以在相关表里更新,或者它也可以被返回到调用的应用程序中。要知道更多关于如何在SP05中创建决策表的信息,参考该PDF文档(142页)。

所有这些在博客中提到的,我想说的是决策表能做什么。

如果你读过上面的pdf文档,你应该意识到当你激活一个决策表,你定义的规则会被翻译成任何应用程序都可以调用的SQL存储过程。同样地,那些不更新数据集的决策表会生成一个基于列的视图。当你有规则编为存储过程和列视图,你可以变很多魔术;-)

1.应用可操作的业务规则——价格规则,信用决策,信用分数规则,报销,欺诈检测,数据清理规则,ETL规则,这张列表没完没了,我不会对此解释太多细节,因为这对于任何决策表来说是非常基础的需求。

3. 在其他存储过程中使用。由于决策表生成SQL存储过程,你可以从其他HANA SQL存储过程中使用它。

2. 在计算视图中使用。把决策表生成的列视图添加给计算视图,并且在开头部分添加你的逻辑。改变规则,激活,并刷新计算视图来模拟规则如何改变你的结果(然后适应最佳的规则)。

例子:这可以被用于模拟或者预计你的打折规则如何改变你的利润和利润率。

3. HANA分析中使用,并且得到最好的可能的决策,决定模式和趋势。

4. 你可以开发一款移动应用使用决策表生成的存储过程(通过jersey客户端或者HANA XS)。例如,理赔专员在客户现场可以查询理赔是否已经被批准了,或者还需要进一步的调查,这基于该客户历史保险理赔记录里的规律性/非规律性检查规则。

结论:

决策表是一种可用的SAP HANA,不仅可以在你的可操作规则中“传统地”使用它(来提高业务规则的敏捷性以及自动性),但是你也可以创建其他HANA组件(比如一个计算视图)或者一个移动应用来使用你的规则,从而浏览、模拟以及改编你的规则。

SAP HANA 中的决策表(Decision Table)的更多相关文章

  1. SAP HANA中的SLT简介

    在以SAP系统作为主要ERP的企业中,不同系统之间的数据库数据同步是个重要的工作.对于这种需求,除了开发ABAP接口之外,也有高效的工具可用.SLT就是其中之一. SLT是SAP的第一个ETL(Ext ...

  2. SAP HANA中创建计算视图(Calculation View)

    [Step By Step]SAP HANA中创建计算视图(Calculation View) Demo Instruction: 该视图将两个表AUDIOBOOKS和BOOKS中的数据进行连接,并作 ...

  3. 【HANA系列】SAP HANA中null变成问号的问题

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA中null变成问 ...

  4. SAP HANA中创建层次分析视图(Hierarchy Analytic View)

    1. 创建层次Attribute View: ATTR_PRODUCT_HIERACHY ref:  http://www.cnblogs.com/omygod/archive/2013/04/30/ ...

  5. SAP HANA中创建分析权限(Analytic Privilege)

    Demo Instruction: 假定CustomerID > 100的为VIP客户,我们的权限设置为只显示VIP客户 所使用的Attribute View: ATTR_CUSTOMER_FU ...

  6. 【HANA系列】SAP HANA计算视图中的RANK使用方法

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA计算视图中的RA ...

  7. SAP NOTE 1999997 - FAQ: SAP HANA Memory

    Symptom You have questions related to the SAP HANA memory. You experience a high memory utilization ...

  8. SAP HANA procudure 创建用户

    SAP HANA中的用户是没有功能进行直接的拷贝的,但是我们可以通过建立存储过程调用,通过sql语句的方式进行拷贝: 存储过程定义如下,各位可根据自己的需求进行修改: CREATE PROCEDURE ...

  9. SAP HANA studio 创建分析视图

    [Step By Step]SAP HANA中创建分析视图(Analytic View) 1. 在Modeler视图中点击新建Analytic View 2. 设置分析视图的属性 Name: 分析视图 ...

随机推荐

  1. Back to High School Physics - UVa10071

    欢迎访问我的新博客:http://www.milkcu.com/blog/ 原文地址:http://www.milkcu.com/blog/archives/uva10071.html 题目描述 Pr ...

  2. python线程Example

    # -*- coding:utf-8 -*- import time import pymongo from threading import Thread from Queue import Que ...

  3. 《cracking the coding intreview》——链表

    前言 最近准备暑假回家回家修整一下,所以时间大部分用来完成项目上的工作,同时为了9月份的校招,晚上的时间我还在学习<cracking the coding intreview>,第二章链表 ...

  4. C# list distinct操作

    使用代理实现对C# list distinct操作   范型在c#编程中经常使用,而经常用list 去存放实体集,因此会设计到对list的各种操作,比较常见的有对list进行排序,查找,比较,去重复. ...

  5. MSSQL数据库迁移到Oracle

    MSSQL数据库迁移到Oracle 最近要把一个MSSQL数据库迁移到Oracle上面,打算借助PowerDesigner这个软件来实现;今天简单研究一下这个软件的运用;把一步简单的操作步骤记录下来: ...

  6. ASP.NET Web API是如何根据请求选择Action的?[下篇]

    ASP.NET Web API是如何根据请求选择Action的?[下篇] 再<上篇>中我们简单介绍了用于实现Action选择机制的HttpActionSelector,接下来我们来讨论本章 ...

  7. 广播,多播,IGMP:网际组管理协议

    广播,多播,IGMP:网际组管理协议 1.概述      IP有三种地址:单播地址, 广播地址,多播地址.      广播和多播仅应用于UDP.      每个以太网帧包含源主机和目的主机的以太网地址 ...

  8. Linux CPU监控指标

    Linux CPU监控指标 Linux提供了非常丰富的命令可以进行CPU相关数据进行监控,例如:top.vmstat等命令.top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执 ...

  9. C#基础之方法和参数

    C#基础之方法和参数 接上一篇<C#基础之类型和成员基础以及常量.字段.属性> 实例方法.静态方法 C#中的方法分为两类,一种是属于对象(类型的实例)的,称之为实例方法,另一种是属于类型的 ...

  10. 应用之星在线app开发平台,菜鸟也会做应用

    看着各类应用平台玲琅满目的应用,你是否幻想过,如果里面能有一款我开发的应用是件多NB的事,平凡的你肯定会说,我又不会设计又不会代码,怎么可能?现在告诉你,这不是幻想,即使你不会设计也不会代码,一样可以 ...