2022 02 09 - 오늘의 스터디 🙋♀️
#샤딩 #면접자세 #면접의도파악 #자동화
#로그,매트릭 그리고 자동화
#데이터베이스 규모 확장 #수평적확장 #수직적확장
#백만 사용자 그리고 그 이상
#모든 프로그래머가 알아야 하는 응답지연 값
#가용성에 관계된 수치들
#트위터 QPS 와 저장소 요구량 추정
혜지 🙂
저는 느낌 점은 이렇게 가까이 사실 면접 부분보다는
저는 앞에 있는 부분이 조금 저한테는 많이 와 닿았거든요.
저는 이제 실제로 검색 엔진에 샤드라는 개념이 있어서
근데 여기에도 샤드 부분에 중간에도 있지만 샤드로 한다고 해서 모든 게 다 완벽하지 않아서
실제로도 검색 엔진 엘라스틱에 자동 샤딩을 해 주는데도
그 자동 샤딩이 제대로 안 돼서 임의로 샤딩을 옮기는 경우가 있어요.
여기 쓰여있는 것처럼 재샤딩 이런 게 있어서 그거 보면 좀 그런 거 익숙한 개념이지만
다시 한 번 알게 되는 시간이었어요
주완 😕
케이스가 뭐
가 있어 ? 그러면 데이터가 차에 꽉 차서 ..
혜지 🙂
우리는 조인을 쓰지 말라고 하는데도 검색엔진 내부에 조인을 쓰는 데이터들이 간혹 있잖아
댓글 같은 거 근데 그렇게 되면은 샤딩을 하기 위해서
여기에도 나와 있지만 그 아이 키 값이 있잖아
그 키 값을 우리는 문서번호로 쓰는데 기사랑 댓글이 있으면은
기사랑 댓글은 같은 샤드에 있어야 돼
같은 샤드를 공유하는 같은 서버에 있어야 되는 거예요.
그리고 이렇게 그러니까 라우팅을 하는데 그 키로
나는 이 기사가 여기 있으니 댓글은 이 기사의 댓글은 여기로 무조건 와야 돼
그러면 이제 특정한 기사가 댓글이 엄청 많아
그러면은 그 서버에 언론 데이터만 만약에 몰려 있다고 하면은
그 서버에 있는 샤드들이 부하가 생기는 거지
그래서 그런 것 때문에 자동이 아니라 자동이 있는데도 불구하고 옮긴 적이 있어
그래서 그런 게 조금 안 좋았어서 이런 것도 생각이 났고
우리는 이제 모니터링을 설치만 해놓고 안 하는 것 같아서
여기 모니터링 써있는데 프로매테어스 ??? 그거를 도입을 하면
이런 자동화하는 데 도움이 된다고 해서 빨리 도입을 해야겠다.
이런 생각이 들었어요.
준언 😤
거기는 문서번호로 이렇게 나눠지는거에요 ?
혜지 🙂
문서 번호라는 개념도 쓰고 다른 아이디 값을 아까 여기에도 있었는데
문서 번호에 관련된 걸 해시를 따로 처리를 하는 거죠.
그 문서 번호는 키로 갖고 있는 거고 실제로 그 데이터가 들어있는 거를
이제 문서 번호의 어떤 특정 해시 값으로 갖고 있어요. 검색엔진
주완 😕
그럼 이런 밸런싱 같은 경우에는 우리는 기간으로 하잖아
혜지 🙂
그치 그게 되게 비합리적인 거지
주완 😕
그게 비합리적이야 ?
혜지 🙂
안 좋아 원래 다른 데는 우리는 이제 특정 기간을 월 월 월 이렇게 하는데
다른 데는 제일 많이 검색되는 건 일 뭐 시간 단위로 하고
제일 검색 잘 안 되는 애들은 월 연 뭐 이렇게 다 좀 다르게 하는데 그런 식으로 해야 되지
주완 😕
하긴 여러 샤드가 그게 사용이 안 돼
일 부분의 샤드만 계속 사용되니까 ?
굉장히 안 좋네 ..
그런데 왜 우리 자꾸 서버 올려달라는거야 ?
혜지 🙂
데이터가 계속 과거 데이터도 공급을 해야 된다 이러니까 그 데이터를 넣을 공간이 없는 거잖아
주완 😕
디스크만 꽂으면 되잖아.
혜지 🙂
디스크 디스크를 꽂는 거에도 한계가 있으니까
아까 했잖아 한 서버에 디스크를 계속 추가를 하면
그것도 결국에는 그 서버가 날아갔을 때 문제가 생기는 것도 있는 거고
주완 😕
아 ..
준언 😤
수직적 확장 해야겠네
주완 😕
왜냐하면 하둡 같은 경우에는 보면 하나의 서버에다가
하드를 보통 막 거의 2테라바이트 짜리 하드를 16개씩 꽂아
근데 놀이 하다 보면은 대부분 한 서버당 2테라 밖에 안 되잖아
근데 그게 너무 낭비 아닌가 근데 그런데도 cpu는 로드가 놀잖아 그래서 차라리 하드를 늘리는 게 낫지 않냐
혜지 🙂
그래서 검색엔진 서버가 놀고 있는 게 있으니까
그거를 이제 도커를 만약에 쓰면은 엘라스틱 용으로는 이 부분만 쓰고
나머지 가용 안 쓰고 있는 부분은 그렇게 하자
데이터가 지금 되고 있는 것들을 이제 날릴 가능성이 있으니까
마음대로 쉽게 못하는 거지 그래서 테스트만 하고 실제로는 못하고 있지 그래서
주완 😕
왜냐하면 그게 엘라스틱 서치 볼륨이 계속 있는데 그 볼륨을 그럼 어디서 그거를 관리를
혜지 🙂
볼륨 관리를 그냥 안 한다 그냥 데이터만 삭제하고 관리를 안 하는 거지
주완 😕
나중에 이야기하자 ..
혜지 🙂
죄송해요. 알아서 하겠습니다.
주완 😕
미안합니다 시간 뺏었지 ..
효정 🤗
일단 책에 들어서 한번 정리하는 것도 좋긴 했는데 방금 혜가 실무에서 이렇게 뭔가 했던 경험들도 한번 들어보는 것도 되게 좋았고요
그다음에 면접 ... 이것도 도움이 됐으면 좋겠네요. 네
주완 😕
아니 면접관으로 들어갈 수도 있잖아요 ㅎㅎㅎ
정민 🤣
네 저도 이게 언젠가 어떤 용도로 쓸지는 모르겠지만
업무에 관한 내용이 있어서 재밌었고 그리고 샤드나 샤드인 같은 경우는
저희는 실무에서 사용한 적이 없어가지고 이 개념 자체를 ..
근데 어찌 됐건 두 분은 미안하다고 하셨지만 어찌 됐건 이런 실무을 접함으로써
저도 좋았고 어찌 됐건 책으로 지금 이걸로도 접해서 좋았고
네 그리고 그 외에는 면접 관련된 내용이 주였어가지고 그 외에는 네 느낀 점은 없습니다
준언 😤
저도 샤들 이런 거에 대해서 잘 몰라서 물어봤는데 우리 회사에서도 실무에 쓰고 있는 거 보니까
저도 알아야 될 것 같고 그리고 면접에 대해서도 많이 알게 돼서 ㅎㅎ
주완 😕
나는 물론 여기 앞에서 나온 내용들도 되게 좋기는 했는데
이런 마지막에 보면 이제 설계를 어떻게 해야 되나
30 페이지에 이제 웹 계층 무상 퇴계층 이런 부분들이 보면은
어떻게 보면 매뉴얼적으로 이런 게 나와 있으니까
이런 거를 알려주는 사람이 없으면 솔직히 이런 매뉴얼 가장 좋잖아요.
그래서 이 부분 되게 나중에 한번 혹시나 내가 웹 설계한다고 하면 여기 한번 볼 것 같고
그리고 응답 지원값 쪽에 보면 응답 지원값 34 페이지 보면
이게 항상 메모리를 산정하는 게 좋다라고는 알고 있고
네트워크를 안 통하는 게 좋다라고 알고 있는데
그게 도대체 얼마나 차이가 나느냐 라는 거를
좀 수치상으로 이거를 볼 수 있는 게 되게 좋았어요.
그래서 프로그래밍 할 때 좀 더 도움이 될 것 같아요.
면접은 뭐 나중에 볼 때 다시 한 번 봐야겠다.
꼭 봐야겠다라는 생각이 들었어요
왜 내가 면접 볼 수도 있잖아.
수빈 🙄
제가 선배님한테 면접 보러 갈 수도 있고
주완 😕
그런 일이 있을 수도 있지
수빈 🙄
저는 이거 앞에서 솔직히 업무랑 업무랑 연관이 안 돼서 잘 와닿지가 않았는데
혜지 선배랑 주완 선배 말하는 거 보고 저럴 때 쓰는 거구나 싶었고
뒤에 면접 같은 경우에는 뭔가 입장 바꿔서
제가 개발할 때 어떤 식으로 접근해야 될지 생각할 수 있었던 것 같아요.
끝입니다
주완 😕
근데 이거 외국인이 쓴 거잖아 그런데 면접 내용 보면서 우리나라 면접이랑 다르지가 않네 ㅎㅎ