【发布时间】:2017-12-16 20:45:34
【问题描述】:
我有一个包含 2800 万条记录的表,它在联合上(在 HANA 2 SP2 上的图形计算视图上)返回 5000 条记录的视图进入内存转储。我已经尝试了一个 SQL 联合,但它仍然不起作用。联合视图中没有逻辑。
table 上的 select top 1000 在
事务因内部错误而回滚:分配失败; $大小$=2048; $name$=搜索分配; $类型$=池; $inuse_count$=11184979; $allocated_size$=20190632592; $alignment$=16
【问题讨论】:
-
了解查询执行差异的第一步是查看两个语句的 EXPLAIN PLAN 和 PlanViz(跟踪)。我的猜测是 SELECT TOP 1000 仅应用于最终结果集,并且两个子查询/计算的 UNION ALL。在此之前,视图需要完全实现。如果是这种情况,您可以考虑在 UNION 操作之前限制数据大小。