오늘 배운 내용
지난번 DB의 필요성, 사용 방법, 실습에 이어서 이번엔 실질적으로 DB가 쓰일 때에 발생할 수 있는 여러 문제점들에 대해 공부하고 해당 문제점을 해결하기 위해 내놓은 다양한 방법을 배웠다.
평소에는 SQL정도만 배우고 넘어갔었는데 실제 배달의 민족에서 서비스 하시 김영한님의 경험공유 영상으로 DB나 MSA 아키텍처의 필요성을 실무적인 관점에서 체감할 수 있었다.
또한 다양한 부하 분산 방식, 설계가 잘못되면 발생할 수 있는 문제들(쿠키를 사용한 로그인 등)을 강사님이 직접 보여주시고 실습까지 해보니 이론적으로만 이해하는 것보다 훨씬 빠르게 받아들일 수 있었다.
부족했던 점
지난번에 해결하지 못했던 putty문제를 결국 해결했다. 해결하면서 많은 공부가 되었지만 결과적으로는 강사님의 도움을 약간 받았다.
또한 putty 문제를 혼자 해결해보고 싶다는 욕심에 거의 3시간 가까이를 씨름하느라 오늘 배운 중요한 내용을 많이 놓칠 뻔 했다.
앞으로도 비슷한 상황이 자주 있을텐데, 혼자 해결해보고 공부하는 것과 최대한 해보고 우선 도움받아 수업을 따라가는것 둘 중 어떤 부분에 더 중점을 둘 것인지 주관을 가져야 할 것같다.
생각해볼 점
강사님께서 수업시간에 공식문서를 보면서 설명하시는 모습을 보고 따라서 공식문서를 틀고 mariaDB Replication에 대한 내용을 읽어봤다.
막연하게 이해 못할거라는 예상과 다르게 생각보다 내용이 군더더기 없이 직관적으로 쓰여있어 조금만 연습하면 공식문서만 가지고도 몇 가지 기능들을 적용할 수 있을 것 같은 자신감이 들었다.
다만 큰 틀의 개념을 모르는 상태에서는 어려울거라는 생각도 동시에 들었다.
공식 문서에는 순수하게 해당 키워드를 사용하기 위한 방법만 담겨있을 뿐 이를 보는 사용자가 어떤 요구사항을 가지고 어떻게 활용할 것인지에 대한 내용은 담겨있지 않다.
오늘 DB 실습때만 해도 Replication 공식 문서에는 .sql파일로 master에서 기존 데이터를 백업하고 slave에서 이를 가져온다는 내용은 없었기 때문에 만약 아무 개념도 모르고 Replication을 시도했다면 기존 데이터 없이 변경되는 데이터만 백업했을 것이다.
공식 문서와 많이 친해질 필요성이 있을 것 같고 이를 위한 방법에 대해 생각해볼 필요도 있는 것 같다.