SAP HANA

本文介绍了SAP HANA的应用架构及其周边软件环境,包括系统管理、数据建模、数据导入、数据建模工具及报表展示等方面的内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

原文地址:http://LiuAlex.com/archives/1776

 

也是刚刚开始学习HANA的一些知识,一边看书一遍做笔记,说到底无非是用自己的语言来理解标准帮组文档所讲解的意思,肯定有理解失误的地方,毕竟没有参加过标准培训,即使有培训,从老师那边来的知识也不可能是完整的传授过来,中间多少的知识遗漏是正常的,所以多看看HELP的文档,应该可以原汁原味的理解作者的意思。

image

这张图片是从SAP HANA的PPT上剪辑下来的,主要包含了SAP HANA的应用架构和在应用中会涉及到一些周边软件环境。

HANA架构下的亲戚关系

  • IMCE Studio
    用于HANA的系统管理,以及信息建模(各种维度,KPI等)
  • ERP
    这里指的是一般的数据源,会从ERP过来过来的业务数据
  • BO BI4
    BO的BI 4.0平台,主要提供ETL的核心功能,源系统数据导入,删选/合并/格式化数据,再导入目标系统
  • Other Source System
    其他的数据源,由于BI的
  • In-Memory Computing Engine
    IMCE的核心组件部分)
  • Clients
    客户端的工具,用什么方式浏览工具(查看报表或者查询),或者用什么工具来展现数据(报表设计工具,是用Explorer还是用Web Intelligence, 或者用Crystal Report也是可以的,这里不多加描述)

和数据导入相关的

image

  • Modeling 工具中可以创建数据库表
  • Replication Agent(这里可能是使用SLT实时同步的情况下),可以安装在ERP中作为一个但单独的组件,监控应用层的数据库修改,然后可以同步到HANA的数据库
  • Data Service Designer用来创建数据的source,以及target, 可以做mapping,作为ETL的工具,比如创建定时的作业,这样可以定期的从source system抽数据,然后导入到HANA的数据库中image
  • Data Service是服务器端(虽然使用DS作为ETL的工具,然后DS依然需要一个数据库来支持,注意!不是用来存储从ERP来的数据,然后传输到HANA中,是用来保存一些mapping关系的资源库)

数据建模的相关亲戚成员

image

  • 同样,Modeling工具(就是HANA的Admin Studio),用来创建数据模型,Attribute View,Analytical View,Calculation View,在Modeling工具中可以直接查看HANA中数据库表,也可以创建表等。
  • Meta Data Manager
  • SBO Information Design Tool, 比如创建一些Business Layer,然后发布成Universe,这样其他的BO的报表设计工具就可以使用这个基于Universe的数据模型了,然后开发出查询报表,等等。
  • Data Service Designer,除了帮助load 数据之外,它提供了

和报表相关的

image

  • MS Excel – BI Analysis for MS-Office Edition, 是个插件用来浏览报表用的
  • BI4 – Web Intelligence 可以用来做基于Universe发布的报表,稍微比Explorer灵活点

Administration - 管理

  • HANA的维护管理

    例如备份和恢复都是在IMCE Studio里面做的,和Information Modeling同一个界面,只是切换到管理视图的话,就可以看到用户,角色,schema等,以及HANA的服务的一些系统状态。
    image

  • Persistence Layer持久层

    HANA的服务器中用于储存数据的非闪存空间
    HANA中的数据都是保存在内存中的,一拉闸停电,数据就没有了,虽然服务器掉电的情况发生很少,但是这里还是解决了这个问题,当然不是专门为停电而解决的,比如数据库休克了或者HANA服务器死机了,必须重启的情况
    它有以下的功能 记录Log信息,包含last save point和因为停电而没有写入数据库中的那些log信息。
    image

    这里可以看到从HANA的内存写到Persistence Layer的数据,包含了2个部分:Data和Log,这个过程是持续不断的过程,当然中间有一定的时间间隔,其实Persistence Layer就是HANA的内存数据库的某个时点的一个完整的镜像照相机拷贝,以及这个拷贝之后所所有发生的数据库更新的Log信息(在停电前成功执行完毕的)

    为什么不直接写入磁盘保存呢? 因为HANA基于内存数据库(newDB),这种实时数据同步操作或者实时数据的更新是很快的,但是磁盘的读写速度往往和内存的速度有差异,为了解决这个问题,在硬件层面提供了一个闪存(即使断电,还有数据,有点像快速缓存,这个闪存有2~4 TB左右)用来同步保存内存数据库中的log信息,并且生成Save Point,然后写入真正的持久的磁盘存储。

  • Disk Storage, 硬盘/固态存储

    Disk Storage用于保存和备份HANA的数据库,因为Persistence Layer的容积是有限的,所以HANA的备份都是放在外部的物理存储的,比如高速率的硬盘或者其他的设备。在备份数据和恢复数据的时候会用到,比如重启服务器。
    image
    备份是从Persistence Layer到Disk,原因上面已经解释了,为了不影响HANA的运行,以及读写速率差异的问题。备份可以设定时间,比如每天一次,还是一周一次等。

    注意:

    文中特别之处,当前的版本1.0(SP12)不支持Log的备份以及Configuration文件的备份,这些必须手动的拷贝出来备份,下个一个版本应该会解决这些问题。
    image

Backup & Restore 备份和恢复

  • 数据备份,从Persistence Layer备份到外部的存储系统,自动化处理时钟
    工具:IM Computing Studio 中有备份和恢复的功能可以使用太棒了
  • log备份, 暂时没有自动化,需要手工,不是体力活哦校车
  • Configuration 备份,没有自动化,需要手工,具体的校车

系统恢复的话,需要:

  • 最后一个SAVE POINT
  • 以及发生在这个save point之后成功被写入持久层的关于DB更新的log(不可以是损坏的文件)
    image

恢复到什么地方到,看上面图片,红线之前的数据库的状态能全部还原。

 

### SAP HANA 的功能与使用指南 SAP HANA 是一个高性能的内存计算平台,支持实时数据处理和分析。它集成了数据库、数据处理引擎和应用服务,能够处理大规模数据并提供实时业务洞察。SAP HANA 支持多种数据类型,包括结构化、非结构化和空间数据,并提供高级分析功能,如预测分析、文本分析和图计算。 SAP HANA 云允许拥有 SAP HANA 本地的客户继续构建应用程序并管理其数据库,而无需管理硬件、操作系统,也不必担心备份、更新、软件安装和补丁程序。当使用 SAP HANA 云时,所有这些管理和维护都由 SAP 负责。SAP HANA 本地保持不变,并且 SAP 始终提供常规更新和支持 [^1]。 SAP HANA 的使用包括多种场景,如实时数据分析、数据仓库优化、物联网(IoT)数据处理等。SAP HANA 提供了强大的 SQL 引擎,支持 ANSI SQL 标准,并引入了 SQL/JSON 扩展功能,如 `JSON_TABLE`,该功能允许将 JSON 数据拆解为虚拟表,并与传统表进行 JOIN 操作,显著降低了开发复杂度 [^4]。 ### SAP HANA 安装教程 SAP HANA 的安装涉及多个步骤,包括系统准备、安装介质获取、系统配置等。根据不同的操作系统和 SAP NetWeaver 版本,安装文档提供了详细的指导。例如: - **Installation Guide for SAP S/4 HANA 1610** - **Installation of SAP Systems Based on the Application Server ABAP of SAP NetWeaver 7.3 to 7.5 on UNIX: SAP HANA Database** - **Installation of SAP Systems Based on the Application Server ABAP of SAP NetWeaver 7.3 to 7.5 on Windows: SAP HANA Database** - **Installation of SAP Systems Based on the Application Server ABAP of SAP NetWeaver 7.31 to 7.5 on IBM i: SAP HANA Database** [^2] 安装过程中需要确保系统资源充足,包括内存、CPU 和磁盘空间。此外,还需要配置网络设置,确保 SAP HANA 实例能够与其他系统通信。 ### SAP HANA 架构设计 SAP HANA 的架构设计采用了内存计算技术,能够将数据存储在内存中,从而实现高速数据访问。SAP HANA 的架构包括以下几个关键组件: - **索引服务器(Index Server)**:负责数据存储和查询处理。 - **名称服务器(Name Server)**:管理数据库的拓扑结构。 - **预处理服务器(Preprocessor Server)**:负责文本分析和全文搜索。 - **统计服务器(Statistics Server)**:收集和存储系统性能数据。 - **会话和事务管理器(Session and Transaction Manager)**:管理用户会话和事务。 SAP HANA 还支持多租户数据库容器(MDC),允许在一个物理数据库中运行多个独立的逻辑数据库。这种架构设计提高了资源利用率,并简化了数据库管理。 SAP HANA 的部署基础架构(HDI)服务器 `HDBDI` 允许在专用主机上运行 SAP HANA XS 高级运行时,也可以与同一主机上的其他 SAP HANA 组件共存 [^3]。 ### 备份与恢复策略 为了保护数据免受硬件故障、逻辑错误或软件更改的影响,SAP HANA 提供了多种备份类型,包括完整备份、增量备份和日志备份。虽然保存点和日志可以保护数据免受某些失败的影响,但如果持久性存储本身损坏或发生逻辑错误,则必须有一个精心规划的备份和恢复策略 [^5]。 SAP HANA 还支持备份加密,确保备份数据的安全性。备份加密可以通过配置参数启用,并使用密钥管理工具进行管理。 ### 示例代码 以下是一个使用 `JSON_TABLE` 的示例,展示如何将 JSON 数据拆解为虚拟表并与传统表进行 JOIN 操作: ```sql SELECT * FROM JSON_TABLE( '[{"id": 1, "name": "Alice"}, {"id": 2, "name": "Bob"}]', '$[*]' COLUMNS ( id INT PATH '$.id', name VARCHAR(50) PATH '$.name' ) ) AS jt JOIN employees e ON jt.id = e.employee_id; ``` 此查询将 JSON 数据拆解为包含 `id` 和 `name` 列的虚拟表,并将其与 `employees` 表进行 JOIN 操作。 ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值