오라클 성능 고도화 원리와 해법2 같은 책을 이미 보신 분들은 당연한 소리라고 생각할 수 있지만, 해당 책을 보지 않은 분들을 위한 문서입니다
단, 아래의 가이드라인을 모두 지키면 할 수 있는 것들이 많이 없습니다. 참고사항 정도로 생각해주시면 될 것 같습니다!
Communication between nodes (shuffling) : 쿼리가 다음 단계로 전달되는 바이트 수는 몇 바이트며, 각 슬롯에 몇 바이트의 쿼리가 전달되나요?
Computation : 쿼리에 어느 정도의 CPU 작업이 필요한가요?
Outputs (materialization) : 쿼리에서 몇 바이트를 사용할 수 있나요?
Query anti-patterns : SQL 표준 형식을 따르는 쿼리인가요?
SELECT * 피하기
Where문에 date 지정하기
WHERE _PARTITIONTIME
BETWEEN TIMESTAMP('20171001')
AND TIMESTAMP('20171004)
Denormalize data ( 비정규화 )
Nested data ( STRUCT )
Repeated data ( ARRAY )