Redis란 무엇인가요?

Redis는 데이터 지연 시간이 짧은 애플리케이션의 데이터베이스와 캐시로 모두 사용되는 데이터 스토어입니다. Valkey는 Redis에서 포크된 오픈소스 데이터베이스입니다. 데이터가 메모리에 저장되므로 느린 디스크 액세스가 제거되어 마이크로초 단위의 데이터 지연 시간을 달성할 수 있습니다.

Google Cloud의 Redis용 Memorystore, Memorystore for Redis Cluster, Memorystore for Valkey가 워크로드에 확장 가능하고 안전하며 가용성이 높은 인메모리 데이터베이스 서비스를 제공하는 방법을 알아보세요.

시작할 준비가 되셨나요? 신규 고객에게는 Memorystore에 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.

데이터 지연이란 무엇인가요?

데이터 지연은 쿼리를 생성한 후 사용할 수 있을 때까지의 시간 또는 쿼리를 생성한 후 애플리케이션에 전송할 때까지의 시간과 같이 데이터 이벤트 사이에 발생하는 시간입니다.

지연 시간은 일반적으로 밀리초 단위로 측정됩니다. 하지만 실시간 애플리케이션과 분석에는 가능한 한 낮은 지연 시간이 필요하며 Redis와 같은 인메모리 데이터베이스가 제공하는 마이크로초 단위의 지연 시간으로부터 이점을 얻을 수 있습니다. 

Valkey란 무엇인가요?

Valkey는 Redis의 포크인 오픈소스 데이터베이스입니다. 이는 오픈소스 라이선스로 Redis를 배포하던 Redis Inc.가 2024년에 Redis에 대해 '소스 제공' 라이선스를 채택한 후 형성되었습니다. 오픈소스 대안을 유지하기 위해 몇몇 핵심 Redis 커뮤니티 회원들이 최신 오픈소스 버전의 Redis를 기반으로 Valkey를 출시했습니다. 일반적으로 이 페이지의 Redis에 관한 기술 정보는 Valkey에도 동일하게 적용됩니다.

Redis는 지연 시간이 짧은 사용 사례에 적합

데이터베이스의 구조는 데이터 지연 시간에 큰 영향을 미칩니다. Redis는 NoSQL 데이터베이스입니다. NoSQL 데이터베이스는 문서, 키-값, 그래프, 열 형식을 포함한 다양한 데이터 모델에 데이터를 저장하는 비관계형 데이터베이스입니다. 유연하며 대규모 비정형 데이터 세트를 처리할 수 있고 빠른 검색 쿼리를 위해 설계되었습니다. 또한 Redis는 인메모리 데이터베이스이므로 지연 시간이 짧은 읽기 및 쓰기를 제공할 수 있습니다. 짧은 지연 시간이 필요한 애플리케이션의 경우 Redis 또는 Valkey와 같은 NoSQL 인메모리 데이터베이스가 가장 적합한 선택입니다.

Redis의 이점

Redis 데이터베이스는 다음과 같습니다.

  • 빠릅니다. 인메모리 데이터베이스는 디스크 액세스가 필요하지 않아 지연 시간이 밀리초(ms)에서 마이크로초(μs)로 단축됩니다.
  • 유연합니다. NoSQL 데이터베이스는 고정된 스키마 없이 데이터를 저장합니다. Redis 데이터베이스는 이러한 유연성 이점을 상속합니다.
  • 확장 가능합니다. Redis 데이터베이스의 구조에는 데이터를 여러 데이터베이스 또는 머신에 분할하고 배포하는 작업이 포함됩니다. 이 프로세스는 '샤딩'이라고 하며, 수평 확장성을 지원합니다. 
  • 간편합니다. Redis를 사용하면 개발자가 복잡한 코드를 적은 줄로 작성할 수 있으므로 신규 사용자가 쉽게 학습하고 사용할 수 있습니다.
  • 가용성이 높습니다. 자동 장애 조치가 지원되므로 장애 발생 시에도 애플리케이션이 계속 작동합니다.
  • 오픈 소스입니다. Redis의 이전 버전과 Valkey의 모든 버전은 오픈소스입니다. 즉, 라이선스 비용 없이 애플리케이션에 이러한 버전을 사용할 수 있으며 배포에 완전한 유연성을 제공합니다. 최신 버전의 Redis는 '소스 제공' 방식으로 제공되며 라이선스가 필요할 수 있습니다.

Redis 사용 사례

Redis와 같은 인메모리 데이터베이스는 지연 시간이 최소화되어야 하는 애플리케이션에 적합합니다. 예를 들면 다음과 같습니다.

채팅 및 메시지

인메모리 데이터베이스는 빠른 읽기 및 쓰기 속도로 메시지를 실시간으로 업데이트할 수 있으므로 트래픽이 많은 채팅 및 메시지 애플리케이션에 적합합니다.

스트리밍

인메모리 스토리지는 많은 수의 사용자로 확장해야 하는 실시간 스트리밍 애플리케이션에 적합합니다.



실시간 분석

밀리초 이하의 응답 시간을 통해 빠른 분석 처리가 가능하며, 제품 추천과 같은 사용 사례에 적합합니다.



게임 리더보드

인메모리 데이터베이스를 사용하면 실시간 리더보드를 유지하는 데 필요한 실시간 업데이트를 구현할 수 있습니다. Redis용 Memorystore로 게임 리더보드를 만드는 방법을 알아보세요.


지리정보

내비게이션과 같은 지리정보 애플리케이션에서는 실시간 정보 업데이트가 매우 중요합니다.



맞춤설정

맞춤설정된 사용자 경험은 밀리초 단위의 쿼리로 대량의 데이터를 처리하는 데 의존합니다. Redis는 사용자 정보 및 세션 메타데이터 캐싱도 지원합니다.



자체 관리형 서비스 또는 관리형 서비스?

관리형 데이터베이스는 클라우드 서비스 제공업체가 유지보수, 보안, 패치 적용, 프로비저닝을 처리하는 클라우드 기반 서비스입니다. 반면 자체 관리형 데이터베이스에서는 개발자 또는 IT팀이 이러한 작업을 담당합니다.

Redis 또는 Valkey 구현을 자체 관리할 수도 있지만 데이터베이스가 제대로 관리되지 않을 경우 복잡성을 야기할 수 있는 제한사항과 단점이 있습니다. 예를 들어 서버를 수동으로 추가해야 하므로 자체 관리형 Redis 데이터베이스의 경우 확장이 더 복잡합니다.

클라우드 기반 관리형 서비스는 비용을 절감하고 안심할 수 있도록 지원하며 배포 관리의 부담을 덜어줍니다. 완전 관리형 Redis 또는 Valkey 솔루션은 확장, 가용성, 안정성을 보장하므로 개발자는 데이터 모델링, 성능 최적화, 데이터에서 가치 도출과 같은 보다 전략적인 작업에 시간을 할애할 수 있습니다.

다음 단계 수행

$300의 무료 크레딧과 20여 개의 항상 무료 제품으로 Google Cloud에서 빌드하세요.

Google Cloud
  • ‪English‬
  • ‪Deutsch‬
  • ‪Español‬
  • ‪Español (Latinoamérica)‬
  • ‪Français‬
  • ‪Indonesia‬
  • ‪Italiano‬
  • ‪Português (Brasil)‬
  • ‪简体中文‬
  • ‪繁體中文‬
  • ‪日本語‬
  • ‪한국어‬
콘솔
Google Cloud