인턴생활 1주차에는 회사 및 팀의 전반적인 사항들에 대한 교육을 받았다면, 2주차에는 실무에 한걸음 더 다가가기 위한 교육을 받았습니다. 특히 서버에 적재되어있는 DB에서 분석에 필요한 데이터만을 추출하기 위한 Hive 쿼리를 본격적으로 실습했는데요. DB에는 게임 내에서 초 단위로 일어나는 유저들의 다양한 행동을 표현한 자료인 로그와 함께 유저들의 게임 결제 내역까지 각각 테이블로, 또 변수의 형태로 적재되어 있었습니다. 이 양이 너무 방대하여 원하는 정보가 어디에 있는지 찾는 것조차 쉬운 일이 아니었습니다.

이토록 가진 데이터가 많기 때문에 내가 필요한 데이터만을 정확하게 추출하는 것이 중요한 작업이고 이를 능숙하게 다룰 수 있는 역량 또한 데이터 분석가로서의 중요한 자질이 아닌가 싶습니다. 그래서 이번 주에는 저희도 분석의 첫걸음인 데이터 추출에 대한 실습을 많이 해보았는데, 데이터 추출을 하면서 하나의 편리한 점이 있었다면 회사에서 제공하는 사용자 정의 함수들이었습니다. 이용자들이 자주 사용하는 계산들은 사용자 정의 함수로 만들어 편의를 제공하고 있었는데요, 훨씬 짧고 효율적인 코딩을 할 수 있어서 좋았습니다.ㅎㅎ

hadoop

실습 후에는 그에 대한 간단한 테스트도 보았는데요. ‘x월 xx일 리니지에서 직업별로 가장 많이 사냥한 NPC Top10’ 등과 같이 실제로 주어진 구체적인 상황에 대하여 접근을 하니 배우는 것이 더욱 효과적이었던 것 같습니다.

특히나 학교에서는 데이터 정제 작업은 많이 해보았지만 DB에서 직접 추출하는 작업은 해 본적이 없었습니다. 그런데 이렇게 내가 분석해야 할 데이터의 형태를 구상하고 직접 그 형태에 알맞도록 DB에서 불러오는 작업에서부터 시작하니 새롭기도 하고, 한편으로는 뿌듯하기도 했습니다.

사실 테스트 과정이 순탄하지만은 않았는데요. 평소에 쿼리를 자주 접해본 편도 아니었고, 생각보다 고려해야 할 조건이 많아 문제의 난이도가 높게 느껴져 정해진 시간 내에 모두 완료하기가 어려웠습니다. 하지만 이를 통해 과제를 받았을 때, 업무 계획을 세워서 주어진 시간 안에 해결해 나가는 것이 중요하다는 것을 배우는 계기가 되기도 했습니다. 또한 어려운 문제에 부딪혔을 때, 적극적으로 질문하는 태도나 해결하는 방식의 측면에서도 능동적으로 대처하는 태도가 중요하다는 사실도 다시 한 번 체감할 수 있었습니다. 그리고 멘토님께서 보다 정확한 추출을 위해서는 원하는 데이터의 형태에 대한 정의를 명확하게 하라는 조언을 해주셨는데요. 풀어나가야 할 방향성에 대한 정리가 더 잘되어서 좋았습니다!ㅎㅎ

이처럼 인턴 생활을 하면서 업무에 대한 내용뿐만 아니라 사회 초년생으로서 앞으로의 직장 생활에서 주의해야 할 측면들에 관해서도 조금씩 배워가는 소중한 시간이 되고 있습니다!