map은 Go의 핵심적인 자료구조로, 그 내부 구현은 성능 향상을 위해 지속적으로 발전해왔다. 특히 Go 1.24 릴리스를 기점으로, map의 내부 아키텍처는 Go 1.24 전의 Hash Table (체이닝 방식)에서 Go 1.24 이후의 Swiss Table (오픈 어드레싱 방식)으로 변경되었다.이 글에서는 이 두 방식을 비교하며, map의 동작 원리를 정리하고자 글을 작성한다. 핵심 구조: '체이닝' 방식과 '오픈 어드레싱' 방식 두 방식의 가장 근본적인 차이는 데이터를 저장하는 구조에 있다.Hash Table: 이 버전의 map은 bmap이라는 개별 버킷(bucket)들의 배열로 구성된다. 각 버킷은 최대 8개의 키-값 쌍을 저장할 수 있는 독립적인 공간이며, 해시 충돌이 발생하면 오버플로우 버킷이..