0

我们目前正在使用HANA 1 sps 12SPARK 控制器来创建虚拟表并访问 HANA 中的 HIVE 数据。问题是我们有一些 SC2 表要归档在 HANA 中,我们需要完整的 CRUD 操作。我们已将一些 Hive 表转换为ACID (transactional = true)。现在我们无法获取记录,它返回 0 条记录。

我们尝试使用具有对 Hive 酸表的本机支持的 ​​Drill,但是当我们使用 Drill ODBC 驱动程序和 DSN 查询 Hive 表时,它失败了。在检查了击中 Drill 的查询后,我们发现 HANA 将模式名称用双引号括起来。例如。Select * from "hive.schemaname".tablename.

我们尝试将默认引号从默认反引号更改为 ",但最终丢失了远程架构刷新,因为该查询发送了使用反引号 ` 包装架构名称。

4

2 回答 2

0

使用 SDA 无法访问 ACID 表,因此我们从 Hive 中的 ACID 表创建了一个非 ACID 表,并在 HANA DB 中对其进行了访问。我们使用 ACID 来执行所有必要的 CRUD 操作,然后将覆盖插入到分区的非 ACID 表中,这样只会重新创建发生更新/更改的分区,而不是整个表。

于 2022-02-07T18:36:47.703 回答
0

Spark 2 和 Hive ACID 事务表不兼容。外部表可用作解决方法。如果您有 S 用户,SAP 已在 Note 2901291(SAP HANA Spark 控制器 - Spark 2 和 Hive ACID 事务表的不兼容性)中记录了这一点。

于 2021-03-10T16:18:26.990 回答