라이프스타일

Google Cloud, Memorystore for Valkey 9.1 정식 출시 발표: 회사 측 "QPS 최대 3배"

Google Cloud가 관리형 캐시 서비스 Memorystore for Valkey 9.1의 정식 출시를 발표했다. 회사 측은 Memorystore for Redis Cluster 대비 최대 3배의 QPS를 달성할 수 있다고 밝혔으며, 데이터베이스 수준 접근 제어와 CLUSTERSCAN 등의 기능도 추가했다. 주요 내용과 일반 독자에게 갖는 의미를 정리했다.

읽는 데 약 7분

Google Cloud, Memorystore for Valkey 9.1 정식 출시 발표: 회사 측 "QPS 최대 3배"
사진: Mokaair (Original editorial artwork)

무슨 일이 있었나

Google Cloud는 공식 블로그를 통해 Memorystore for Valkey 9.1이 정식 출시됐다고 발표했다. 해당 글은 Google의 시니어 프로덕트 매니저 Ankit Sud와 소프트웨어 엔지니어 Jacob Murphy 명의로 작성됐다. Google Cloud에 따르면 이번 버전은 기존 Memorystore for Redis Cluster와 비교해 마이크로초 수준의 지연 시간에서 최대 3배의 초당 쿼리 수를 달성할 수 있다.

Valkey란 무엇인가? Google Cloud는 글에서 2024년 Redis Inc.가 라이선스를 허용적인 BSD 오픈소스 라이선스에서 이중 라이선스 모델로 변경하자, Google Cloud와 다른 기술 기업들이 Linux Foundation이 관리하는 오픈소스 대안으로 Valkey의 설립을 지원했다고 설명했다. 간단히 말해 Valkey는 데이터를 메모리에 저장해 읽기·쓰기 속도가 매우 빠른 데이터베이스로, 웹사이트와 애플리케이션의 캐시로 흔히 쓰인다.

Google Cloud, Memorystore for Valkey 9.1 정식 출시 발표: 회사 측 "QPS 최대 3배"
Mokaair 편집 검증 절차 · 사진: Mokaair (Original editorial artwork)
자세한 설명 보기

출처를 수집하고 독립적으로 검증한 뒤 Jev가 판단합니다.

Valkey 9.1에서 달라진 점

성능: 스레드 간 통신 재설계

Google Cloud의 설명에 따르면 이전 버전의 Valkey는 클라이언트 연결을 라운드 로빈 방식(차례로 돌아가며 배정하는 방식)으로 I/O 스레드(네트워크 입출력을 처리하는 작업 단위)에 고정 배정했고, 메인 스레드가 대기 목록을 계속 확인해야 했다. Valkey 9.1은 락 프리(lock-free, 잠금 없이 여러 스레드가 동시에 작업하는 방식) 멀티 큐 메시지 구조로 바꿨으며, 상호 보완적인 세 가지 큐를 두어 유휴 상태의 워커 스레드가 필요에 따라 작업을 가져가도록 했다. 또한 회사 측은 새 버전이 2단계 동적 확장 방식을 채택했다고 밝혔다. 메인 스레드의 CPU 사용률이 30%를 넘으면 첫 번째 백그라운드 I/O 스레드를 자동으로 가동하고, 이후 큐 적체량에 따라 스레드 수를 늘리거나 줄이며, 유휴 시에는 불필요한 코어를 비활성화한다.

보안과 관리: 더 세분화된 접근 제어

Google Cloud는 Memorystore for Valkey가 최근 IAM을 통해 설정하는 접근 제어 목록(ACL)을 추가 비용 없이 지원하기 시작했으며, 하나의 정책을 여러 클러스터에 적용할 수 있고 버전 관리되는 정책 개정 및 감사 로그도 제공한다고 밝혔다. 과거에는 ACL 규칙이 인스턴스 전체에 적용됐지만, 회사 측은 Valkey 9.1에서 사용자의 접근 범위를 특정 번호의 데이터베이스로 제한할 수 있다고 설명했다. 예를 들어 테스트용 계정이 비운영 환경의 데이터에만 접근하도록 할 수 있다.

개발자 명령어: 스캔, 원자적 작업, 만료 시간

  • CLUSTERSCAN: Google Cloud에 따르면 과거에는 클러스터 전체를 스캔하려면 노드(클러스터를 이루는 개별 서버)를 하나씩 조회해야 했다. 이 과정에서 장애 조치(failover, 고장 난 노드의 역할을 다른 노드가 넘겨받는 것)가 발생하면 데이터가 누락되거나 중복 반환될 수 있었다. 새 명령어는 클러스터 토폴로지(노드 구성 상태)를 인식하는 커서를 사용하며, 순차 스캔 또는 16,384개 슬롯을 나눠 맡는 병렬 스캔을 지원한다.
  • HGETDEL: 한 번의 네트워크 왕복으로 해시 필드(하나의 키 안에 저장된 개별 항목)를 원자적으로 읽고 삭제한다. 원자적이라는 말은 중간에 다른 요청이 끼어들지 않고 한 번에 처리된다는 뜻이다. 회사 측은 일회용 인증 토큰을 활용 예로 들었다.
  • MSETEX: 여러 키를 한 번에 설정하면서 동일한 만료 시간을 공유하도록 한다.
  • HSETEX: NX와 XX 조건 플래그가 추가됐다. NX는 필드가 없을 때만 설정하고, XX는 필드가 있을 때만 설정한다.
Valkey 9.1 주요 변경 사항 비교(출처: Google Cloud 공식 블로그)
항목기존 방식(Google Cloud 설명 기준)Valkey 9.1(Google Cloud 설명 기준)
I/O 스레드 분담라운드 로빈 방식으로 정적 배정, 메인 스레드가 목록을 계속 확인락 프리 멀티 큐 구조, 스레드가 필요에 따라 작업을 가져감
스레드 확장정적 임계값메인 스레드 CPU 30% 초과 시 가동, 이후 큐 적체량에 따라 증감
ACL 범위인스턴스 전체에 전역 적용특정 번호의 데이터베이스로 제한 가능
클러스터 키 스캔노드를 하나씩 조회, 장애 조치 시 누락 또는 중복 가능CLUSTERSCAN이 토폴로지 인식 커서 사용
읽은 뒤 삭제여러 단계 필요HGETDEL로 한 번의 왕복에 원자적으로 완료

일반 독자에게 미치는 영향

대부분의 사람은 Valkey를 직접 접할 일이 없지만, 이런 인메모리 데이터베이스는 웹사이트 로그인 상태, 장바구니, 각종 실시간 서비스를 뒤에서 떠받치는 경우가 많다. Google Cloud는 Valkey가 AI와 마이크로서비스를 확장하고 수백만 명의 동시 접속 사용자에게 서비스해야 하는 조직에 특히 매력적이라고 밝혔다. 회사 측이 주장하는 성능 향상이 실제 환경에서도 입증된다면, 이런 서비스를 도입한 애플리케이션은 트래픽이 몰리는 시간대에도 더 안정적인 응답 속도를 유지할 수 있을 것이다.

또 하나 주목할 배경은 오픈소스 라이선스다. Valkey는 Redis의 라이선스 모델 변경에서 비롯됐으며, Google Cloud가 이번에 새 버전을 정식 출시한 것은 대형 클라우드 기업들이 Linux Foundation이 관리하는 오픈소스 대안에 계속 투자하고 있음을 보여준다. 기업 기술팀에게는 데이터베이스 수준의 접근 제어가 운영 환경과 테스트 환경을 분리해 실수로 인한 위험을 줄이는 데도 도움이 된다.

자주 묻는 질문

Valkey와 Redis는 어떤 관계인가?

Google Cloud의 설명에 따르면, 2024년 Redis Inc.가 라이선스를 BSD 오픈소스 라이선스에서 이중 라이선스 모델로 변경한 뒤, Google Cloud와 다른 기술 기업들이 Linux Foundation이 관리하는 오픈소스 대안으로 Valkey의 설립을 지원했다.

'3배 QPS'는 무엇과 비교한 것인가?

Google Cloud에 따르면 Memorystore for Valkey 9.1을 자사 Memorystore for Redis Cluster와 비교했을 때, 마이크로초 수준의 지연 시간에서 최대 3배의 초당 쿼리 수를 달성할 수 있다는 것이다. 이는 회사 측 수치이며 독립적인 테스트 결과가 아니다.

새 접근 제어 기능은 추가 요금이 드나?

Google Cloud는 Memorystore for Valkey의 ACL 기능에 별도 요금을 부과하지 않는다고 밝혔다.

일반 사용자가 해야 할 일이 있나?

없다. 이번 업데이트는 클라우드 서비스 제공업체가 개발자와 기업을 대상으로 한 것으로, 일반 사용자는 별도 조치를 취할 필요가 없다. 도입 여부는 기술팀이 자체 필요에 따라 판단해야 한다.

이 주제의 최신 뉴스 보기

최신 여행 소식·가이드

출처

라이프스타일