快速数据访问 (Fast Data Access,缩写为 FDA) 是一种可在 SAP ABAP 环境中访问的协议。 它允许针对 SAP HANA 提交 OPEN SQL SELECT 语句,从而使用 SAP ABAP 的数据格式。 在快速数据访问场景里,SAP ABAP 内表数据传输到数据库并返回。这种方法避免了按字段级别(field-wise
)进行数据复制和数据格式转换的要求。
FDA 的主要优点是消除字段转换开销,减少资源利用率并提高性能。
FDA 从 SAP ABAP 内核 7.42 开始已经可用。对于 FOR ALL ENTRIES 语句,FDA 可以与 SAP ABAP 内核 7.43 及更高版本一起使用。
如何查看自己系统的 ABAP 内核版本?System->Status
,
点击这个放大镜按钮:
如图,我的系统里,SAP_ABA
的版本号为 750.
许多参数可用于配置快速数据访问行为,如下所示。
与默认值的任何差异仅应在特定问题场景的情况下应用,例如基于 SAP support enginner 的建议或基于 SAP 文档中给出的指南。
-
参数 dbs/hdb/supports_fda_prot:0 为激活,1为开启。
-
rsdb/fda_shm_seg_size:用于 FDA 数据传输的内存大小。每个 Work Process 都有自己的 FDA data transfer 区域。
源自 FDA 请求的 SQL 语句带有注释标记,该注释包含在 SQL 文本中并且可以位于跟踪(例如 ST05)或 SAP HANA SQL 缓存(例如事务 DBACOCKPIT 或 SAP HANA Studio)中观察到。
下图绿色区域是一个例子:
与其他数据库相比,SAP HANA 数据库基于 C++ 构建,并在 SUSE Linux Enterprises Server 上以分布式方式运行。 SAP HANA 数据库的目标是提供一个以主内存为中心的数据管理平台来支持 SQL。
HANA 由下列这些服务器组件构成:
- Index server
- Name Server
- Statistic Server
- Preprocessor Server
- XS Engine