【问题标题】:SAP HANA History Tables when (not) to use, pros / consSAP HANA 历史表何时(不)使用,优点/缺点
【发布时间】:2019-06-08 12:15:57
【问题描述】:

SAP HANA 中,我们可以选择使用 历史记录表

因此我们可以查询/查看当前值,但也可以查看特定日期的表格。更详细的解释在这里:

SAP HANA History Table - Time traveling using SAP HANA
When I traveled through time using SAP HANA!!

所以我的问题是

  • 何时(不)使用历史记录表?
  • 有什么缺点?
    有很多线程有些人对历史表有疑问:
    SAP HANA History Table
    SAP HANA HISTORY TABLE CREATION USING HDBTABLE ( XS PROJECT)
    但我没有看到任何问题,除了缺少 CDS 支持。到目前为止,我发现:
    • 缺少对 CDS 的支持
    • 不支持导出/归档(但使用 SQL 可以轻松解决)
  • 为什么它们在 CDS 中不受支持?(它会在未来的版本中出现还是被弃用)?

【问题讨论】:

    标签: hana history-tables


    【解决方案1】:

    您不应使用 SAP HANA 历史表,因为此功能已被 SQL:2011 兼容 System Versioned Tables 超级种子。

    历史表尝试根据 SAP HANA 列存储的设计方式提供类似的功能。然而,该实施被证明是相当低效的,在概念上仅限于系统时间,并且在操作和管理方面存在重大“怪癖”(例如,只能正确地从 / 导出和重新导入历史表。到具有完全相同的交易历史的数据库。将那些在测试之间移动到质量系统会导致错误的数据)。

    系统版本化表和即将推出的对双时态表的支持(请查看 SQL:2011 标准,参考 here 或论文 here)没有任何这些问题。
    它们是基于标准的,可以轻松与其他 DBMS 供应商的功能相媲美(使跨不同数据库的语义概念化变得更容易),并且通过 .hdbsystemversioning 工件得到 XSA 开发的完全支持。

    由于系统版本表可以在功能上替换旧的专有历史表,我会假设通过 CDS 提供历史表不会有任何发展(为什么要让人们使用旧的、劣质的技术? ) 并且历史表最终将被弃用。

    【讨论】:

    • 感谢分享。不幸的是,我在互联网上找到的信息很少。它也不包含在“SAP HANA SQL 和系统视图参考”中。CDS 和 SAP HANA 1.0 SPS 12 是否支持它?我在哪里可以获得更多信息?
    • 请使用我在回答中链接到的参考资料。自 HANA 2 SPS 03 起,系统版本表可用。
    • 再次感谢。但我没有看到任何 CDS 语法。
    • 使用当前的 HANA 2 版本,您可以定义文件类型为 .hdbsystemversioningHDI 设计时资源,以在容器中创建系统版本控制表。这些表可以像其他表一样在 CDS 视图中使用。如果您想通过 CDS 视图定义访问特定时间片,则必须将其包含在 WHERE 条件中。就像大多数其他 HANA DB 特定设置一样,系统版本表不在 CDS 的概念空间中可用,而是在 HDI 的概念空间中可用。希望这是有道理的。
    猜你喜欢
    • 2019-04-15
    • 1970-01-01
    • 2022-01-04
    • 1970-01-01
    • 2013-12-02
    • 2010-11-18
    • 1970-01-01
    • 1970-01-01
    • 2012-05-15
    相关资源
    最近更新 更多