inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

개발자라면 알아야 할 redis 기본

string자료구조

key값에 대한 작성 컨벤션

167

gukin.dev

작성한 질문수 9

0

좋은 강의 만들어주셔서 감사합니다. 질문드리고 싶은 내용은

 

key 값은 아래 처럼 리소스 관점에서 계층 방식, 스네이크 케이스로 작성하는게 일반적인 컨벤션인가요?

 

user:email:1
user:email:{id}

user:{id}:refresh_token

 

아래 강의에서 보여주신 user:email:{id} 은 리프레쉬 토큰의 예시랑 좀 다른 패턴인데, 무슨 차이가 있을까요?

 

image.png

 

redis nosql database devops

답변 2

0

gukin.dev

참고) 레디스 네이밍 컨벤션

1. https://medium.com/nerd-for-tech/unveiling-the-art-of-redis-key-naming-best-practices-6e20f3839e4a

 

  1. https://youtu.be/BuYfhzJrBTo?si=nRg2B92G9gjvRNys

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. gukin.dev님.

Redis에서 키 패턴은 데이터의 관리와 접근 효율성을 높이기 위해 매우 중요합니다. 말씀하신 키 값 구조는 실제로 많은 개발자들이 사용하는 일반적인 컨벤션 중 하나입니다.

  1. 리소스관점의 계층방식: user:email:{id}, user:{id}:refresh_token 같은 패턴은 데이터가 어떤 리소스와 연관되어 있는지를 직관적으로 표현합니다. 이러한 구조는 데이터를 이해하고 관리하기 쉽게 만들어 주며, 특히 협업 환경에서 다른 개발자가 데이터의 형태를 빠르게 파악할 수 있도록 도와줍니다.

  2. 스네이크 케이스: 주로 키를 읽기 쉽게 하기 위한 방법으로 사용됩니다. 파이썬이나 다른 언어의 변수 네이밍 컨벤션처럼 가독성을 높이는 역할을 합니다.

  3. 사용 사례의 구분: user:email:{id}user:{id}:refresh_token의 차이는, 저장된 데이터 유형의 차이에서 옵니다. 첫 번째는 이메일과 관련된 키, 두 번째는 토큰 관련 키로, 이는 데이터가 사용되는 방식을 기준으로 구분하는 좋은 예시입니다.

따라서, 데이터나 복잡한 구조를 Redis에 저장할 때는 이러한 패턴을 활용하면 데이터의 조회 및 관리가 효율적입니다. 실제로 어떤 패턴을 사용할지는 프로젝트의 요구사항 및 팀의 합의에 따라 다를 수 있으며, 일반적으로 일관성을 유지하는 것이 가장 중요합니다.

아래의 링크는 Redis 키 설계에 관한 유사한 질문을 다루고 있으니, 더 깊이 있는 이해를 원하시면 참고하세요:
- Redis Key Naming Best Practices - 일반적인 Redis 키 네이밍 패턴과 예시

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

0

hayexn

주신 링크 404 오류 뜹니다

Jib 이미지 빌드에서 docker credential 관련으로 이슈가 있다면

1

27

1

스크립트에 대해 질문 있습니다.

1

15

1

같은 사용자가 연속된 중복 호출할 경우 어떻게 되는지 궁금합니다!

1

13

1

조건 검색 질문

0

12

1

vagrant up 설치 에러

0

17

2

키페어 설정

0

24

2

이거 지금 부터 들어도 괜찮을까요 ?? 시간이 꽤지난거같은데 .. 뭐 최신하고 아에 안맞을까요 .

0

26

1

환경설정 스크립트에서 storageclass가 생성되지 않습니다.

0

32

2

자료를 다운로드후 압축을 풀때 오류납니다.

0

36

2

pod kubetm/app 에서 image를 갑자기 못가져 오는거 같습니다.

1

31

2

3. Node Schedule 중 pod-5가 마스터 노드에 배치됩니다.

1

43

2

실제 시험에서 링크

1

36

1

실무에서 Redis에서 0번 이외의 DB를 사용하나요?

0

263

2

실무에서의 복잡한 쿼리 결과 캐싱 전략(크기, TTL 등) 관련 질문

0

114

2

레디스 서버 구성

0

119

2

Redis Pub/Sub, Stream과 Kafka 비교 질문입니다.

0

348

2

채팅 서비스 관련하여 질문드립니다.

0

140

3

레디스에 저장하는 토큰 질문입니다.

0

98

2

redis 개발 환경 수정 시 질문 입니다.

0

117

2

수업 자료는 어디 있을까요?

0

184

2

상품의 재고 변경을 비동기로 처리하는것에 대해 질문합니다.

0

216

2

혹시 kafka나 rabbitMQ 강좌 예정 없으신가요?

0

225

1

MacOS에서 brew를 사용한 설치를 권장하지 않는 이유가 무엇인가요?

0

252

2

레디스 pub/sub 질문

0

316

1