DBMS/Cassandra
Cassandra DB에서 COUNT 쿼리가 위험한 이유..
seungh0
2023. 5. 24. 20:11
반응형
내부적으로 N개씩 (Paging 설정으로 변경 가능하며, default 100) 커서 조회로 파티션을 풀 스캔함..)
- 파티션 키로 필터링 조건으로 조회한다면, 파티션 기준으로 풀 스캔하고, 파티션 필터링 조건조차 없다면, 모든 파티션을 풀 스캔한다…
- 동작방식에서 알 수 있다시피, 파티션 크기가 점점 커질수록, 카산드라에 많은 부하를 유발하니 사용하지 말자..
만약 테이블 기준 전체 카운트를 알아야 한다면, nodetool tablestat (Number of keys, estimate)에 나오는 로우 추정 갯수를 통해 확인할 수 있다.
특정 조건을 기준으로 레코드를 알아야 한다면, 별도의 카운트 테이블을 둬서 카운팅을 관리해야할 것으로 보임.
반응형