首页 > 数据库 > 数据库开发技术 > 使用下SAP HANA强大的Cloud控制台

SAP的HANA数据库(注:这里指是云平台版本,不是platform的本地部署版本)的版本发布,基本上每个季度都有一次发布。2024年的第一个版本内部已经Release了,很快就会推到生产环境当中。当前要发布的版本是:2024.2.6 (QRC 1/2024)。而且每个版本的维护周期最长不会超过7个月(等于半年之后有一个月的缓冲期)。更新迭代相当快。也是为了适应云环境的需求。
本文并不打算介绍2024. QRC 1的新功能,待正式发布之后再进行有关功能的详细介绍。有些同学问起,关于HANA Cloud下边,我们要通过Web控制台去访问具体的租户数据库中的表,该如何访问?这里头确实有一些需要注意的地方,稍不小心,可能就绕进去了。
在SAP BTP的云环境下,现在都基本上使用的是HANA Cloud Instance。即先准备一个全局的HANA Cloud Database, 称作一个Instance。然后在此Instance下边创建基于HDI Container的多租户架构,每个租户(tenant)一个独立的schema。都有独立的deploy user, runtime user,决定能否访问用户数据的是runtime user。
在你的HANA实例下边,直接可以进到管理控制界面,看到它的版本号:

一个有趣的版本信息会是下边这个样子:

这边你可以明确的看到,这是正式的按季度发布的策略。而且维护周期在1月15号已经过期,实际上是需要立即进行升级的。后边我会花专门的篇幅介绍如何进行发布周期策略的选择,以及如何进行有效升级。
从上边的 Actions选项里,可以有多个可选的动作:

前边两个Copy, 一个可以拿到完整的Cloud DB主机地址,另一个Copy instance ID,它可以帮你拿到全局唯一的DB ID (基本上都是一个UUID值)。而那个Endpoint的值,基本上都是{DB ID}.{domain}:{port}这样的形式。
Open In SAP HANA Cloud Central: 直接用于管理HANA实例,比如是否需要replication, 是否支持MultiAZ, 是否升级,是否要进行restore, 是否要进行一些特殊的配置。
Open In SAP HANA Cockpit:这个会帮你进入到监控的控制台页面。在生产环境中,往往意味着,同一个数据中心的实例都会就近纳入到一个监控页面组合当中。可以随时进入一个目标实例,去查看一些监控指标。基本上日常管理与监控的80%的功能都可以在这个控制台上完成。
一个完整的基础监控管理的页面,包含如下内容:

Open in HANA Database Explorer: 这主要是给DBA和开发人员使用的。
Open SQL Console比Database Explorer更简化了一下。里边的用户认证验证方式基本上是一样的。
我们回到上图中的用户及密码的输入框,它们可以是两种级别的用户:dbadmin以及普通的schema下的runtime user。还有一个专用于hdi container的部署用户,这里可以忽略。
runtime user来自哪里?你从创建的hai-shared的面向schema的hana shared实例(实际上对应的就是一个租户)。当你的应用绑定这个实例时,就会生成对应的credentials信息。它的典型内容如下:
{
"database_id": "{uuid}",
"host": "{db host},
"port": "443",
"driver": "com.sap.db.jdbc.Driver",
"url": "jdbc:sap://{db host}:443?encrypt=true&validateCertificate=true¤tschema={schema}",
"schema": "{schema}",
"hdi_user": "{hdi user}",
"hdi_password": "{hdi password}",
"user": "{runtime user}",
"password": "{runtime password}",
}
上边要填的就是runtime user和它的密码部分。连接是没有问题的。但是你连完以后,发现缺省的展现方式,往往是令人失望的。
它会像下边显示的样子:

看到的默认的schema是一个长长的runtime user的schema,而不是真正代表租户的schema。想要达到这个目的,需要点击选择的那个选择框:
这也是SAP UI上比较有特点的选择控件,习惯了就好。选择以后,你会发现有多种schema可以供你选择:
默认显示的是那个最长的用户名。你可能什么也看不到。要看到tenant相关的表及其它对象,就得选择下边一个schema。至此,你才算真正用上了这个SQL控制台。
这里同时也列举了其它可以看到的系统内部的schema。视情况而定。有的可能能看到里边的对象,有的是什么也看不到。
对比一下使用DBEaver进行连接以后的效果:
你可以直接指定schema, 或者直接点击选择对应的schema。它只列出runtime user, public, 以及tenant对应的schema, 操作起来还是比较方便的。但是这一切都是建立在DBEaver客户机IP地址允许去访问HANA cloud instance的基础上。
在实际的生产环境当中,往往是不允许公网访问的。那个时候只能借助于HANA 管理控制台来进行访问。
对于多租户的天然支持,是目前HANA的很大的一个优势。它现在能做到面向特定tenant的PITR,而不影响其它tenant。能面向特定tenant进行数据全加密,并且加密方式还可以由客户来指定。这些都已经超越了同在BTP下运行的hyperscaler PG很多。毕竟,它们面向的客户群还是有区别的。后者并不向面SAP的ERP系统。使用的价格及成本也有很大差别。
后边有时间,会再介绍HANA与PG在云环境下的一些痛点,以及可以借鉴的地方。
https://help.sap.com/docs/hana-cloud/sap-hana-cloud-administration-guide/sap-hana-database-upgrades-and-patches

原文作者:数据库杂记;如有侵权,请联系管理员删除。