데이터 기반 디지털 트랜스포메이션(DT) 전략 마스터 클래스 강좌의 맛보기 강의입니다.
온라인 쇼핑몰의 기본 추천 시스템 구현을 위해서는 추천 시스템에 적합한 정보 설계가 필요합니다 추천 시스템을 위한 정보 설계인 데이터 모델 설계에 대해서 다뤄보겠습니다 데이터를 정리하는 데이터 모델에는 크게 관계형 모델과 계층형 모델이라는 게 존재합니다 관계형 모델은 데이터 테이블 이라고 하는 주 테이블이 있으면 이 주 테이블에 다양한 보조적인 참조 테이블을 결합해서 분석을 진행하는 것이라고 말씀드릴 수가 있습니다. 관계형 데이터 모델에 대해서 먼저 구체적인 모델 설계 내용을 보면서 살펴보도록 하겠습니다. 데이터 모델 파일을 오픈하도록 하겠습니다. 모든 정보를 하나의 거대 테이블에 모두 다 포함시키지 않고 목적에 따라 데이터를 분할해서 필요할 때마다 참조해서 쓸 수 있도록 하는 게 바로 관계형 모델이에요 지금 고객 정보라고 하는 고객만 고객 정보가 모아놓은 테이블이 하나 있고요 고객 번호라는 키가 존재합니다 그리고 판매 정보 시트를 보면 판매에 대한 정보만을 다루는 테이블이 하나 있어요 그리고 이 정보에서는 제품을 산 고객에 조금 전에 고객번호랑 링크할 수 있는 참조키가 제공이 됩니다 그리고 이곳에서 팔린 제품 제품에 대한 코드 정보를 갖고 있고요 이 제품에 대한 코드를 기반으로 해서 제품에 대한 좀 더 상세한 정보를 제품 정보 테이블에서 다루고 있습니다 지금 제품 정보 테이블에는 제품 색상이라는 게 존재합니다 제품별 색상이라는 게 존재하는데 판매 정보에는 팔린 제품만 존재하지 제품에 대한 색상 정보는 존재하지 않습니다 그러면 제가 원하는 건 색상별 매출 데이터를 취합하고 싶어요 그럼 어떻게 해야 되죠? 일반적으로 거대 탭을 만들 때 VLOOKUP 이라는 함수를 이용해서 제품 정보에 색상 정보를 가져다가 여기다 색상 정보를 만들어서 추가할 수도 있습니다 근데 그 방식은 파일 I/O라든가 여러가지 비효율이 많아요 그래서 저는 관계형 모델을 구현하는 방법을 안내해 드리도록 하겠습니다 관계형 모델은 크게 개념은 데이터 테이블이라는 게 있고 데이터 테이블 안에는 어떤 정보가 내가 참조하려는 정보가 반복해서 나옵니다 이곳에 정보를 제공하는 참조 테이블이라는 게 있습니다 참조 테이블에서는 이 두 테이블에서 참조할 수 있는 마스터 정보만을 관리를 하도록 돼요 그러면 이 두 가지를 연관 컬럼으로 링킹을 해서 마치 하나의 하나로 결합된 가상 테이블처럼 가상 테이블처럼 분석에 활용할 수가 있습니다 그런 것을 관계형 모델이라고 표현합니다 관계형 모델은 데이터란 메뉴를 클릭하면 데이터란 메뉴를 클릭하면 데이터 도구라는 섹션이 있고요 이게 보면 관계를 나타내는 아이콘이에요 이 보면 관계 설정 아이콘을 선택해서 설정에서 사용할 수가 있습니다 이 항목을 클릭하면 관계 관리라는 게 나오고요. 관계를 만들면 됩니다. 새로 만들기를 선택해서 주 테이블은 판매 정보가 바로 주 테이블이에요. 판매 정보. 시트명을 잘 보세요. 판매 정보에 팔린 제품과 지금 참조하려고 하는 제품 정보에 제품 번호가 같다. 판매정보의 팔린 제품과 제품정보의 제품번호가 같은 거죠 조금 전에 제가 이 데이터 영역의 관계라는 걸 통해서 이 두 테이블은 이 정보로 결합된다 결합 정보를 제공했습니다 그러면 삽입에 피벗 테이블 하나에 보면 데이터 모델에서 라는 항목이 추가가 됩니다 데이터 모델 선택하고 그대로 확인하면 자 이제 제가 피벗 테이블 부분을 잠시만요 다시 컨트롤 Z로 돌린 다음에 다시 한번 삽입해서 피벗 테이블에 데이터 모델에서 선택하고 기존 워크시트가 아니라 새 워크시트로 추가하도록 하겠습니다 그리고 요 녀석은 관계 기반 피벗이라고 설정하도록 하겠습니다 이제 어떤 분석이 가능하냐 실제 판매 정보에는 색상 정보가 없어요 색상 정보는 제품 정보 테이블에서 제품 색상이라고는 값이 있습니다 그리고 지금 보시는 것처럼 제품 정보에는 매출 정보가 없습니다 그런데 판매 정보 테이블에는 여기 보면 결제 금액이라는 항목이 있습니다 결합을 해보면 저희는 이런 데이터 실제 한 테이블이 아니라 두 테이블 연동해서 마치 하나의 가상 테이블처럼 색상별 매출 데이터를 이렇게 집계할 수가 있습니다 이러한 데이터를 분절해서 키를 중심으로 연결해서 보다 원활한 분석을 할 수 있도록 하는 데이터 모델을 관계 기반 모델이라고 표현합니다 관계형 데이터 모델이라는 게 어떤 거고 어떻게 이 관계를 설정하는지를 엑셀을 통해서 실습을 해봤습니다 두 번째 모형이 지금 저희가 다루려고 하는 계층형 데이터 모델이에요 계층형 데이터 모델은 DB의 논리적 구조가 트리 형태 개체 타입 간의 일대다의 상하 대응 관계가 존재하도록 하는 모델이에요 전자제품이라고 한다면 컴퓨터 냉장고로 분류하고 컴퓨터에는 다시 노트북, 데스크탑, 태블릿으로 분류하는 방식 이런 방식을 계층형 모델이라고 표현합니다 실제 데이터를 통해서 살펴보도록 할게요 관계형 모델 실습에서 사용했던 엑셀 파일의 판매 데이터 시트를 오픈하도록 하겠습니다 판매 데이터 시트를 오픈하면 여기 보면 계층형 모델이 설정되는 게 바로 이거죠 제품 카테고리에 제품 하위 카테고리에 대한 제품 카테고리와 제품 하위 카테고리가 있습니다. 그 정보를 갖고 있으면 다양한 판매 정보, 판매 비용, 판매 금액 정도가 있으면 이런 데이터 모델을 이용해서 계층형 모델을 통해서 이런 분석이 가능합니다. 삽입에 똑같이 피벗 테이블을 선택하고 확인하도록 하고 보면 계층형 모형이라고 계층형 모형 시각화 라고 추가하도록 하겠습니다 계층형 모델 부분을 제품 카테고리를 행으로 갖고 하고 다시 제품 하위 카테고리를 그 밑으로 배치하도록 하겠습니다 그리고 보기 좋게 하기 위해서 피벗 테이블을 딱 선택하시고 피벗 테이블 디자인 이라고 하는 메뉴를 선택한 다음에 보고서 레이아웃을 기본 형식이 아니라 테이블 형식으로 표현하도록 하겠습니다 그리고 모든 항목 레이블 반복을 선택 총합계를 제외하고 부분합도 제외 판매금액, 매출금액을 추가하도록 하겠습니다 보기 좋게 하기 위해서 C열 선택하고 마우스 오른쪽 버튼 클릭해서 나오는 메뉴에서 셀서식의 숫자에 1000단위 구분기호 사용하고 확인하도록 하겠습니다 제품 카테고리별 제품 하위 카테고리 판매금액 정보가 있어요 이 데이터를 블록으로 지정해서 Ctrl Shift 화살표 아래 Ctrl C 해서 피벗을 제외한 Ctrl V 해서 추가한 데이터에서는 값 붙여넣기 값만 붙여넣기를 하도록 하겠습니다 다시 G열에 다시 한번 셀 서식에 가서 숫자의 천 단위 구분기호 사용하고 확인하도록 하겠습니다 똑같이 제품 카테고리, 제품 하위 카테고리, 판매 금액, 정보를 만들고 여기서 Ctrl T라는 걸 선택해서 표로 등록하도록 하겠습니다 보면 계층형 모형표 계층형 모델표라고 네이밍을 하도록 하겠습니다. 자, 계층형 모델을 만든 다음에 여기서 삽입이라는 메뉴를 선택하고 추천 차트에서 모든 차트를 선택하고 Sunburst라는 걸 선택하고 확인 선택하도록 하겠습니다. 자, 그러면 여기 보면 차트 제목만 제품 유형별 매출 이라고 기술 하도록 하겠습니다 자 그러면 정보가 어떻게 나오는 거예요 제품 유형 이 컴퓨터라든가 TV 뭐 다른 것들에 대한 다양한 매출 영역 정보가 도출되게 될 거예요 자 이와 같이 계층형 모델을 만든 다음에는 계층형 모델을 기반으로 계층 관계를 가지고 다양한 분석을 진행할 수 있습니다. 이런 분석을 추천 시스템에 적용하도록 하려고 합니다. 구체적으로 이러한 계층형 모델이 추천 시스템 설계에 어떻게 반영되는지 살펴보도록 하겠습니다.
