SAP ABAP 中的表缓冲

by | 15年2018月XNUMX日 | ABAP初学者

首页 » 树液 » ABAP » ABAP初学者 » SAP ABAP 中的表缓冲

前言 – 这篇文章是的一部分 ABAP初学者 系列。

SAP ABAP 中的表缓冲

在我们开始“SAP ABAP 中的表缓冲”之前。 让我们举一个一般的例子。 你用过 YouTube 吗? 而且,您在观看之前是否曾经缓冲过视频?

如果是,那么您已经有了缓冲的想法。

如果没有,请转到 YouTube 并暂停您的视频,它会加载它(缓冲它)。 因此,在这种情况下,YouTube 视频被加载到您的浏览器/应用程序中,当您播放它时,它不再从 YouTube 服务器加载它,而是直接从您的应用程序服务器的缓冲区播放它。

通过这种方式,您可以节省时间并获得更好的体验。 ABAP 表也使用了缓冲的这一概念,在 SAP ABAP 中称为表缓冲。

定义

SAP ABAP 中的表缓冲是 ABAP 表中的一个概念,用于提高性能(10 到 100 倍)并减少处理(访问)表的时间。

缓冲区是数据库层和应用程序层之间的接口。 应用层与缓冲区通信,缓冲区与数据库层通信,反之亦然。

SAP ABAP 中的表缓冲

*注意: 数据库接口确定数据是否在缓冲区中。 如果没有,它会从数据库中获取数据并同步缓冲区。

使用表中的缓冲区

步骤01: 从缓冲权限中选择一个单选按钮。

允许产品描述
不允许缓冲这是默认值。 适用于数据变化频繁的事务表
允许缓冲但已关闭缓冲器是允许的,但它是关闭的,可以根据客户的要求随时打开
缓冲已开启允许缓冲。 在这种情况下,我们需要提供 Buffering 类型。

 

步骤02: 选择缓冲类型:它定义了将加载哪些数据以及何时加载。

缓冲类型产品描述
完全缓冲每当访问表的单个记录时,系统就会将所有数据加载到 Buffer 中。
通用缓冲当访问具有特定通用键的记录时,该通用键的所有其他记录也会被缓冲。
单记录缓冲只有真正访问过的记录才会被缓冲。

 

完全缓冲

当使用完全缓冲时,要么缓冲整个表,要么不缓冲任何记录。 当访问单个记录时,该表的整个数据/记录都会被缓冲。 缓冲是指所有记录都在缓冲表中。

何时使用完全缓冲

  • 较大的表像 Master Table 一样很少写入和经常读取,然后我们需要使用 Full Buffering。
  • 对于像自定义主要读取的表这样的小表。

通用缓冲

当使用 Generic Buffering 时,所有带有 Generic 键的记录都会被一次性缓冲。

*注意:

  • 通用键:仅用于从表中过滤数据的某些键的组合键。
  • 通用键是主键的一部分。
  • 在 SELECT 语句的 WHERE 条件中应提及所有通用键,否则会绕过缓冲区并从数据库中读取数据。

何时使用通用缓冲

  • 当只需要某些通用区域时。
  • 对于特定于客户端的表,客户端字段是通用键。
  • 对于语言特定表,通用键包括语言键。

单记录缓冲

您访问的所有数据都将被缓冲,除此之外什么都没有。

何时使用单记录缓冲

  • 仅访问少量记录的表

如何绕过缓冲区

通过使用 BYPASSING BUFFER,我们可以绕过缓冲区并直接从数据库中读取。

选择 * 从进入表绕过缓冲器。

 

 

作者

1评论

  1. Ashish Sharma

    很好的解释……我真的很感激

    回复

提交评论

您的电邮地址不会被公开。 必填带 *

本网站使用Akismet来减少垃圾邮件。 了解您的数据如何处理.

作者