) 5000 개의 레코드를 반환하는 뷰와 함께 UNION (HANA 2 SP2의 그래픽 계산보기에서)에 메모리 덤프가있는 2800 개의 레코드가있는 테이블이 있습니다. SQL 조합을 모두 시도했지만 여전히 작동하지 않습니다. 조합보기에는 논리가 없습니다.SAP HANA OOM 오류 (UNION
테이블의 선택 상위 1000은 데이터를 < 1s로 반환하고 5k 레코드가있는 뷰는 2s의 데이터를 반환합니다. 논리를 사용하지 않고이 2를 결합하면 - 집계 노드를 투영으로 전환 한 후에도 여전히 메모리가 부족합니다. 내가 여기서 무엇을 놓치고 있니?
내부 오류로 트랜잭션 롤백 : 할당에 실패했습니다. $ 크기 $ = 2048; $ name $ = SearchAlloc; $ type $ = pool; $ inuse_count $ = 11184979; $ allocated_size $ = 20190632592; $ alignment $ = 16
쿼리 실행의 차이점을 이해하기위한 첫 번째 단계는 두 문에 대한 EXPLAIN PLAN과 PlanViz (trace)를 검토하는 것입니다. 내 생각 엔 SELECT TOP 1000 만 최종 결과 집합에 적용되고 두 하위 쿼리/calc의 UNION ALL이 적용됩니다. 그 전에 뷰를 완전히 구체화해야합니다. 이 경우 UNION 연산 전에 데이터 크기를 제한하는 것이 좋습니다. –