cardinality

yuns_u·2021년 8월 21일

카디널리티(cardinality)는 상대적인 개념으로 전체 행에 대한 특정 컬럼의 중복 수치를 나타내는 지표이다.

중복도가 ‘낮으면’ 카디널리티가 ‘높다’고 표현한다.
중복도가 ‘높으면’ 카디널리티가 ‘낮다’고 표현한다.

주민등록번호 같은 경우는 중복되는 값이 없으므로 카디널리티가 높다고 할 수 있다. 반면 이름은 중복되는 값이 많으므로 ‘주민등록번호에 비해’ 카디널리티가 낮다고 할 수 있다.

distinct 값이 많다는건 중복도가 낮다는 의미이다.
.sort_values(by='unique')함수의 결과값을 distinct 값이라고 봐도 괜찮을 것 같다. distinct 값이 많으면 중복도가 낮다라는 의미이므로 카디널리티가 높다고 할 수 있다.

인덱스를 걸 때, 내가 원하는 데이터가 인덱스를 통해 최대한 많이 걸러져야 성능이 좋다고 할 수 있다. 여러 컬럼을 동시에 인덱싱할 때, 카디널리티가 높은 컬럼을(중복이 적은 컬럼을) 우선 순위로 두는 것이 인덱싱 전략에 유리하다.

[database] 카디널리티(cardinality)란?

profile
💛 공부 블로그 💛

0개의 댓글