채팅 시스템 key value 관련 질문이 있습니다!
우선 정말 좋은 강의 제작해 주셔서 감사합니다!
채팅 시스템 관련 강의 약 19분 경에 나온 데이터 모델 설계에 대해 궁금한 점이 있습니다.
DynamoDB와 같은 key-value 저장소를 기반으로 1:1 채팅을 구현할 때, pk(key)를 message_id 로 설정해주셨는데요.
사용자가 로그인하여 사용자 식별자(user_id)를 얻었을 때, 이 user_id를 이용해 어떻게 관련 message_id들을 조회할 수 있을지 머릿속으로 잘 그려지지 않는데 혹시 이에 대해 좀 더 설명해주시면 정말 감사하겠습니다!!
제 생각으로는 GSI를 활용해 user_id를 별도의 키로 설정하거나, 다른 형태의 추가 키가 필요할 것 같아보여서요
아니면 혹시 이 key-value 저장소가 임시 저장 용도로만 사용되는 건가요?
Answer 1
0
구현하시는 시스템의 요구 사항에 따라 많은 것이 달라집니다. 강의에서 가정하는 시스템은 1:1 chat을 가정한 것으로 일단 사용자 인증이 끝나면 별다른 보안 사항을 고려하지 않고 디자인 되어 있습니다. (강의 마지막에 보안 관련한 논의가 필요하다고 명시되어 있습니다.) user id는 로그인 때만 사용되고, 일단 채팅이 열리면 message_id를 가지고 채팅방 메시지를 관리한다고 이해하시면 됩니다. 특정 user와 채팅방, 그리고 메시지의 연관성은 고려되지 않고 단지 채팅 메시지만 주고 받는 것을 가정하여 시스템이 디자인된 것입니다.
모든 요구 사항에 맞는 시스템을 이 강의에서 디자인하거나, 일일이 답변 드리기 어려운 점 양해부탁드립니다.
아주 작은 정오표 전달드립니다.
0
26
2
실제로 작은 기업에서 기획 롤
1
21
1
강의자료가 누락됐어요
0
52
2
order_product 까마귀발
0
36
2
공통 코드 , 계층 구조 질문
1
33
1
OEM에서 하는 A-SPICE
0
35
2
[DB설계] 탈퇴 유저의 구독 정보 유지 및 이메일 마스킹 관련 질문입니다.
0
50
1
자연키 vs 대리키 실무질문
0
26
1
1:N 관계에서 중간테이블 (연관엔티티)
0
53
2
공통코드 관련한 질문 드립니다.
0
69
1
차단 등 검증 로직의 위치
0
63
2
SP를 아직도 사용하나요?
0
59
2
캐시전략 - Write-behind
0
50
2
일대일 fk 위치
0
43
1
다음 강의는 언제쯤 나올까요?
0
93
2
제 3 정규형 vs BCNF 정규형 차이점?
0
95
3
websocket 연결 질문
0
75
1
채팅 시스템 메시지 플로어 질문드립니다
0
91
1
시니어엔지니어 지원
0
103
1
시스템 디자인 2권이나 머신러닝에 대한 계획
0
161
1
강의자료 어디서 받나요?
0
128
1
화면이 보이는 강의가 있고 안보이는 강의가 있어요?
1
222
2
수정사항 제보
1
230
3
강의 계획 관련
2
362
2

