데이터베이스 관점으로 시작하기
비전의 프로그래밍 매거진은 6년 전 프로그래밍 국비 과정을 수강하며, 프로그래밍 관련 글을 쓰기 위해 만든 매거진이다. 하지만 필자는 회사에서 경영 기획 + 데이터 관리를 전문으로 하지, 코딩을 전문으로 하고 있지는 않다.
또한 이전에는 취미로 코딩을 했지만, 최근에는 AI 툴로(Replit) 개인 프로젝트를 진행해 코딩 스킬 역시 모두 녹슬었다. 간간히 쿼리 정도를 하는 것 외에는 따로 코딩을 하지 않기 때문에 데이터베이스와 기획 위주의 컨텐츠에 조금 더 포커스를 맞추려 한다.
오늘 이야기해 볼 주제는 바로 회사에서 누구나 사용하는 엑셀과 구글스프레드 시트에 대한 이야기부터 한번 시작해보도록 하겠다. 추후에는 빅데이터 분석을 위한 SQL 그리고 이를 통한 업무 자동화에 대한 나의 경험을 같이 나누고자 한다.
회사를 다니는 사람이라면 누구나 엑셀이나 구글 스프레드시트를 사용한다. 하지만 데이터를 관리하는 입장에서 볼 때, 많은 이들이 엑셀이나 스프레드시트를 단순히 한 장의 간단한 장표를 위해 사용하는 것을 보면 안타깝다는 생각이 든다.
데이터를 잘 관리함으로써, 그리고 거기서 유용한 데이터를 뽑음으로써, 훨씬 훌륭한 인사이트를 뽑을 수 있음에도 불구하고 체계적인 데이터 관리에 대한 인식이 부족함을 많은 이들을 보며 느끼는 바이다.
물론 그렇게 체계적인 관리를 하고 싶으면, 데이터베이스 툴을 따로 쓰는게 낫지 않냐고 이야기할 수도 있겠다. 특히 관계형 데이터베이스를 쓰고 싶다면, 에어테이블을 사용할 수도 있을 것이다. 그리고 MS Access를 쓸 수도 있고, 데이터베이스의 형식을 따르는 툴들은 여러가지가 있으니 그걸 쓰면 되지 않나?라고 할 수 있을 것이다.
하지만 가장 범용적으로 쓰이는 데이터베이스 툴은 단연컨데 엑셀과 구글 스프레드시트이다. 엑셀과 구글을 단순히 문서 작성 도구라고 인식하는 것과 데이터베이스의 관점에서 사용하는 것은 그 활용도의 차이가 어마어마하다.
이번 편에서는 실제 실무에서 많이 볼 수 있는 나쁜 사례들을 예시로 하여 엑셀과 구글 스프레드시트에 데이터베이스 이론을 적용해 좀 더 효율적으로 사용하는 법에 대해 이야기 해보도록 하겠다.
(필자는 엑셀보다는 주로 구글 스프레드시트를 사용하므로 앞으로는 스프레드시트 통일하도록 하겠다)
데이터 정합성
오피스 업무 경력에 상관없이 많은 이들이 하는 실수이다. 회사에서 ERP 시스템을 사용하더라도, 데이터를 드랍다운으로 넣지 않는다면 발생할 수 있는 실수인데, 바로 각 컬럼의 데이터가 통일되지 않고 들어가는 경우이다.
아래 지점 컬럼은 원래 서울지점, 부산지점, 대구지점 3가지 데이터만 와야 한다. 하지만 오타로 인해서 수많은 데이터가 쌓이고, 이렇게 오타가 많은 컬럼을 중복값을 제거하거나, 쿼리로 불러올 경우 데이터 클렌징이라는 작업이 안 들어가면 잘못된 데이터 분석이 되버릴 것이다.
실제 쿼리로 지점별 금액 합계를 해보도록 하면 아래와 같다.
그렇다면 이것을 해결하기 위해서는 어떻게 해야할까?
차라리 지점 컬럼을 드랍다운 형식으로 지정하는 바꿔버리는 것이다.
이럴 때 우리는 데이터 유효성이라는 기능을 사용한다.
데이터 유효성을 사용해, 드랍다운으로 설정된 데이터 외 데이터를 제한하면 어떨까?
그렇다면 이 데이터를 바탕으로 지점별 실적 분석을 하거나, 재고 분석 등을 할 수 있을 것이다.
셀 병합
많은 이들이 셀 병합을 많이 하는데, 셀 병합은 대시보드 시트를 제외하고는 해서는 안된다.
왜냐하면 아래와 같이 셀 병합이 되어있다고 가정해보자.
만약 이럴 경우 쿼리 함수로 지점별 합계를 낼 경우 각 지점별 한 개의 데이터만 불러오게 된다. 왜냐하면 병합되어 있는 셀 중 가장 위에 있는 셀 값만 데이터를 인식하기 때문이다. 나머지 행의 금액 부분은 모두 빈값으로 처리되어 데이터 오류가 발생하게 된다.
여기서 의문이 생길 수도 있을 것이다.
- "왜 지점명을 매번 반복해서 써야 하나요? 비효율적이지 않나요?"
- "드롭다운의 기준이 되는 데이터는 어떻게 관리하나요?"
- "셀 병합 없이 보기 좋게 만들 수는 없나요?"
다음 편에서는 바로 이 질문들에 대한 답인 정규화(Normalization)와 키(Key) 개념을 다룰 예정이다.
사실 이 이야기는 늘 회사에서 하고 싶었지만 다들 바빠서인지 관심 받지 못했던 주제들이다. 그래서 이곳에서라도 제대로 풀어보고자 한다.