亲爱的读者,
在这个博客中,我提供了关于如何在HANA系统上的BW中执行表重新分配和重新分区的详细信息。本文档中描述的几个步骤仅针对HANA系统上的BW。此活动是在HANA 1.0 SPS12系统中执行的。
在扩展的HANA系统中,表和表分区分布在多个主机上。这些表最初作为安装的一部分分发。随着越来越多的数据被注入系统,分布可能会发生扭曲,一些主机持有大量数据,而另一些主机持有的数据则少得多。这会导致过载主机中的资源利用率更高,并可能导致这些主机上的各种问题,如CPU利用率更高、频繁的内存不足转储、增加的重做日志生成,而这些又会导致到灾难恢复站点的系统复制出现问题。如果重载主机中的重做日志生成速率高于将日志传输到灾难恢复站点的速率,它增加了缓冲区的满计数,并对主节点和次节点之间的复制网络施加压力。
表重新分布和重新分区操作应用了先进的算法,以确保表在所有活动节点之间以最佳方式分布,并考虑到主要考虑几个参数-➢分区数➢表和分区的内存使用➢表和分区的行数➢表格分类
除此之外,大数据都学什么,内部HANA算法在执行重新分配和重新分区任务时会考虑其他几个参数。
确定是否需要重新分配和重新分区
您可以考虑以下因素来确定系统中是否需要重新分配和重新分区。
➢执行SQL脚本"HANA\u Tables\u ColumnStore\u TableHostMapping"来自OSS note 1969700。从这个查询的输出中,您可以看到所有主机上磁盘中表的总大小。在我们的系统中,正如您在下面的屏幕截图中看到的,分布是不均匀的,与其他节点相比,一些节点保存了太多的数据。
➢如果您观察到由于列存储表对这些主机的高内存利用率,在少数主机中频繁生成内存不足转储。可以执行以下SQL语句来查看列存储表所占用的内存空间。选择host,count(*),round(sum(memory \u size \u in \u total/1024/1024/1024))作为大小\u GB from m m m \u cs \u tables group by host order by host正如您在下面的屏幕截图中所看到的,在某些主机中,列存储表占用的内存空间比其他主机高得多。
➢如果系统中添加了新主机,表不会自动分配给这些主机。只有添加主机后创建的新表才能存储在那里。要将表从现有主机分发到新主机,需要执行"优化表分发"活动。
➢如果indexserver跟踪文件中显示太多以下错误消息,则"表重新分发和重新分区"活动也会处理这些问题。潜在的性能问题:表ABC和XYZ被不利的标准分割。这不会阻止数据存储工作,但可能会显著降低性能。潜在的性能问题:表ABC被拆分,表XYZ被适当的标准拆分,但相应的部分位于不同的服务器上。这不会阻止数据存储工作,但可能会显著降低性能。
检查表
▼更新表格"表格放置"›维护参数向SAP架构用户授予权限▼运行一致性检查报告▼运行存储过程检查本机HANA表的一致性和目录▼运行cleanup python脚本来清理虚拟文件▼检查行存储中是否有创建的业务表。将它们转换为列存储▼运行内存化python脚本▼进行数据库备份▼暂停crontab作业▼保存当前表分布›增加执行表重分发的线程数从主系统注销辅助系统(如果已设置DR)▼停止SAP应用程序›锁定用户☆执行"优化表分布"操作›启动SAP▼运行表压缩
详细步骤
OSS note 1908075提供了一个附件,其中包含了针对不同HANA版本和不同扩展场景的多个脚本。下载附件并根据HANA版本、从属节点数和每个节点的内存量导航到该文件夹。在SQL脚本中,将$$占位符替换为系统的SAP架构名称。执行脚本。这将更新SYS schema下的表"table Placement"。HANA算法将引用此表来决定表的重新分配和重新分区活动。
根据您的HANA版本维护OSS note 1958216中建议的HANA参数。
对于HANA 1.0 SPS10以后的版本,确保SAP模式用户(在本例中为SAPBIW)具有系统权限"表管理"。
SAP提供专门针对HANA数据库上的SAP系统的ABAP报告"rsdu\u表一致性"。首先,如果您的HANA版本>=SPS10,请确保您应用了此报告的最新版本,哪个云服务器好,并应用了OSS说明2175148–SHDB:关于schema SYS(HANA SP100)中的表\u位置。否则,如果您选择选项"CL\u SCEN\u TAB\u CLASSIFICATION",则在执行此报告时可能会出现短转储。从SA38执行此报告,特别是通过选择选项"CL\u SCEN\u PARTITION\u SPEC"和"CL\u SCEN\u TAB\u CLASSIFICATION"。(您也可以选择所有其他选项)。如果报告了任何错误,请通过在修复模式下运行报告来修复这些错误。
注意:此报告应在按照第一步中所述维护表"table\u placement"后运行。此报告引用该表以确定和修复与表分类相关的错误。
执行存储过程检查表一致性,检查非BW表的目录,确保报告了严重错误。如果报告了任何严重错误,老虎淘客,请先修复这些错误。