
7
AI 요약
이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.
Jira의 LexoRank 알고리즘 소개 및 구현
이 게시물은 Jira에서 사용하는 LexoRank 정렬 알고리즘의 개념과 기존 정렬 방식의 한계, 그리고 LexoRank가 이를 어떻게 극복하는지 설명합니다.기존 정렬 방식과 한계
- Integer 방식: 순서 변경 시 많은 순위값 수정 필요로 성능 저하 발생
- GreenHopper 방식: 순위값 고갈 시 재조정으로 시스템 중단 문제
- Linked List 방식: 수정 비용 및 전체 스캔 필요
LexoRank 알고리즘
- 문자열 기반 사전식 순위값으로 O(1) 수정 범위
- Bucket, FixedKey, VariableKey 세 요소로 구성
- 순위값 고갈 사전 감지 및 무중단 재조정 지원
Tech Group의 LexoRank 라이브러리 구현
- LexoDecimalRank, LexoTimestampRank 두 가지 구현체 제공
- FixedKey, VariableKey 가용 공간 고갈 문제 해결 위한 갭 개념 도입
- 동시 접근 시 순위값 충돌 최소화를 위한 추가 로직 포함