HANA作为内存数据库,在实现高性能访问的同时,必须也要有稳定的架构,今天我们就来看看企业部署SAP HANA时应该如何来设计数据库的架构。

HANA数据库在安装时,有以下几种选择方法,为方便大家理解,我们假设只有一个HANA节点,关于多节点的部署,我会在另一篇文章中进行介绍。

1、 一个数据库Instance,一个Schema,见上图中的(1)

在一个HANA节点中,安装一套HANA系统,一个数据库Instance,一个Database Schema,这是最常见的部署方法,不需要过多的介绍了。不过为了方便各位同学理解,这里有两个概念还是要说明一下:

什么是数据库Instance?一般教科书上都会说“Instance其实就是指操作系统中一系列的进程以及为这些进程所分配的内存块”,这么讲没错,但难以理解,我们还是举例来说,你在安装SAP的时候,系统提示你要创建一个数据库实例,这就是一个Instance,将来你这套SAP系统数据库的进程以及运行环境都是通过这个实例来统一管理的。一个数据库可中可以创建多个Instance

什么是Schema?所谓Schema是指表,视图,存储过程,序列,触发器,索引等。假如你在一个数据库Instance中创建了两个Schema,那这两个Schema中的表,视图等从权限上来看,都是独立管理的,从应用层面的访问都是隔离的。

2、 一个数据库Instance,多个Schema,见上图中的(2)

这就是我们一般说的MCOD(Multiple Components on One Database),是指在一个数据库Instance中创建多个Schema。大家都知道SAP系统一般建议三系统架构(注意:三系统架构不同于三层体系结构),也就是开发系统、测试系统和生产系统。在部署SAP系统时,如果硬件资源有限,可以考虑将开发和测试系统采用MCOD方式部署,在具体安装时,虽然开发和测试系统要有不同的,但要选择同一个,系统在安装过程中,会针对开发和测试系统创建不同的Schema。

MCOD也有一些缺点,因为采用的是一个数据库实例,两个系统之间在性能上会互相影响,在运维的时候也比较麻烦,数据库实例的启动会同时影响到两套系统的访问,所以MCOD一般不建议运用在生产环境中。

3、 一个HANA节点,两个虚拟机,见上图中的(3)

HANA也支持虚拟化管理,可以采用类似Vmware这样的技术,在一个HANA节点中建立两个虚拟机,在每个虚拟机中安装独立的OS操作系统,HANA系统以及数据库系统。现在的虚拟技术已经很成熟了,虚拟机在管理上跟实体机基本没有区别,一个虚拟机的维护包括操作系统重启等都不会影响到其他的虚拟机,而且虚拟机的CPU及内存资源也可以根据实际情况进行调整。这种部署方法的缺点是会浪费资源,因为OS操作系统会占用一些资源,一套HANA系统的安装也至少占用64G的内存。当然如果你想从OS层面就完全隔离各个系统,这还是一个比较好的做法。

4、 MDC(Multitenant Database Container)的方式,见上图中的(4)

在一个HANA节点中,安装一套OS操作系统,一套HANA系统,多个租户数据库。每个租户数据库都是一个完全独立的数据库,互相之间从数据库文件上都是独立的。这种部署方式的优点是节省资源,也可以通过建立跨租户数据库报表实现跨租户数据的访问,缺点是各个租户数据库在OS及HANA系统上是共用的,也就是说如果你要重启OS操作系统,则安装在各个租户数据库上的系统都要重新启动。

以上四种数据库的部署方式对SAP的版本有要求,如果你想要使用MDC模式,HANA的版本必须要是HANA SPS09之上。

SAP HANA数据库架构部署方法的更多相关文章

  1. 利用Veeam保护SAP HANA数据库

    利用Veeam保护SAP HANA数据库 前言 针对越来越多的SAP HANA备份需求,我们Team翻译.整理.借鉴了Veeam 的SAP HANA 大神 Clemens Zerbe 和 Ali Sa ...

  2. 如何使用命令行备份SAP HANA数据库

    SAP HANA是一个在in-memory内存中的数据平台,部署为内部部署应用. 这是一个革命性的平台,它最适合进行实时分析,并开发和部署实时应用程序. 请点击这里了解更多有关SAP HANA. 通过 ...

  3. 使用ABAP(ADBC)和Java(JDBC)连接SAP HANA数据库

    在表DBCON里维护一条记录,指向HANA数据库.con_ENV里填入HANA数据库的主机名和端口号.如vmXXXX:30015 DATA: ls_new TYPE DBCON. ls_new-con ...

  4. 使用 SSL 加密的 JDBC 连接 SAP HANA 数据库

    近期客户为满足安全要求,提了让业务应用使用 SSL 方式连接 SAP HANA 数据库的需求.本人查询 SAP官方文档 发现数据库支持 SSL 连接,有参数直接加到 JDBC 的 URL 后边就行了, ...

  5. sap hana 数据库 EBS

    SAP实时数据平台详解 ************************************************************ EBS是Oracle 公司对原有应用产品整合后的一个产 ...

  6. MySQL,Oracle,PostgreSQL,mongoDB,Hive, SAP HANA 数据库web维护客户端管理工具

    TreeDMS数据库管理系统使用JAVA开发,采用稳定通用的springMVC +JDBC架构,实现基于WEB方式对 MySQL,Oracle,PostgreSQL,mongoDB ,Hive, SA ...

  7. 如何在云端部署SAP HANA实战, Azure 上的 SAP HANA(大型实例)概述和体系结构

    什么是 Azure 上的 SAP HANA(大型实例)? Azure 上的 SAP HANA(大型实例)是一种针对 Azure 的独特解决方案. 除了提供 Azure 虚拟机以用于部署和运行 SAP ...

  8. 【HANA系列】SAP 【第一篇】EXCEL连接SAP HANA的方法(ODBC)

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP [第一篇]EXCEL连接 ...

  9. 【HANA系列】SAP HANA的特点总结

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA的特点总结   ...

随机推荐

  1. Delphi中如何进行BASE64解码

    //方法1: uses EncdDecd; Memo2.Text:=UTF8Decode( DecodeString(Memo1.Text)); //方法2: // 使用控件 Memo2.Text:= ...

  2. <亲测>阿里云centos7安装redis

    安装redis yum install redis 启动redis systemctl start redis.service 设置redis开机启动 systemctl enable redis.s ...

  3. DEVC怎么建工程

    1.DEVC建工程 1.1 新建项目 打开文件,选择新建-->项目-->ConsoleApplication(控制台程序),输入项目名,选择保存路径.(单独建一个文件夹存放) 项目建成功后 ...

  4. JAVA多线程之中断机制(stop()、interrupted()、isInterrupted())

    一,介绍 本文记录JAVA多线程中的中断机制的一些知识点.主要是stop方法.interrupted()与isInterrupted()方法的区别,并从源代码的实现上进行简单分析. JAVA中有3种方 ...

  5. 天朝屁民每天做T跟菜贩一样,进菜-卖菜,为伟大的菜贩精神点赞

    天朝屁民每天做T跟菜贩一样,进菜-卖菜,为伟大的菜贩精神点赞

  6. sql server 2008 R2 备份还原到sql 2012

    从sql server 2008 r2备份的在sql server 2012中还原时一直读不到备份文件,然后把2008r2备份文件放到sql 2012的安装路径对应的Backup文件夹后可以读到了,不 ...

  7. Python——pandas读取JSON数据,xml,html数据(python programming)

  8. OpenStack单节点网络设置

    一.上传镜像文件 1.上传镜像 2.检索镜像 二.创建网络 1.创建内部网络 2.创建外部网络 3.创建内部网络子网 设置DHCP分配地址池,点击已创建 4.创建外部网络子网 注意:外部网络与仅主机( ...

  9. Shell案例:图案打印

    打印三角形图案 #!/bin/bash echo "Stars" ; i<=; i++ )) do ; j<=i; j++ )) do echo -n " * ...

  10. 分段覆盖率TPR

    黑产监控中,需要尽可能做到尽可能少的误伤和尽可能准确地探测,可以选择“在FPR较低时的TPR加权平均值”作为平均指标. 根据混淆矩阵计算TPR(覆盖率)和FPR(打扰率): 覆盖率:TPR = TP ...