TIL[67].Modeling

jake.log·2020년 9월 5일
0

Database 실습으로 스타벅스 모델링을 진행했다.
첫 모델링이라 다소 이해가 안 되는 부분이 있기에 다양한 웹페이지를 통해 연습을 많이 해봐야 겠다.

1.Modeling을 하는 이유

스타벅스 웹페이지 메뉴 - 음료 페이지에 있는 상품들에 관한 데이터 모델링을 진행했다.

모델링은 웹페이지를 만들기 전 과정으로 꼭 필요하다.

모델링을 하는 이유는 웹페이지를 들어가면 엔드포인트로 오는 GET 메소드에 데이터를 효율적으로 뿌려주기 위함이다.

따라서 여러가지 데이터를 성격에 따라 분류하여 테이블로 만들고, 그 테이블의 관계를 고려하여 연결시켜 주는 일이라고 보면 된다.

2.관계에 따른 분류

스타벅스 웹페이지에 있는 음료 상품들에 초점으로 맞추어 모델링을 진행했다. one to one , one to many, many to many 관계로 나누어 테이블을 만들었고 관계에 따라 PK,FK를 연결했다.

One to one

drinks
Etc

One to many

FK 를 받음, category, detail_description

Many to many

allergens, allergens_drinks(중간테이블), drinks

3.스타벅스 웹페이지(음료카테고리) 모델링 결과

스타벅스 음료 카테고리의 모델링 결과는 위와 같다. 우선 가장 많은 데이터를 갖고 있는 drinks 페이지의 테이블을 만든다. 해당 테이블에서 하나의 음료상품마다 이름,이미지, 영양정보 등은 값을 각각 가진다. 그러나 지역 한정 판매등 세부정보와 카테고리 등은 하나의 음료 상품마다 여러가지 값을 갖게 된다. 따라서 one to many 테이블인 detail_description, category 데이터를 drinks의 foriegn key로 연결 시킨다. 이후 category키는 drinks, food, product 등도 있기 때문에 다시 menu 테이블의 primary key값과 연결 시킨다.

이제 문제는 알러지정보가 있는 음료상품이다. 하나의 음료마다 알러지 유발시키는 요인들이 있기고 하고 없기도 하다. 그리고 알러지 유발요인을 갖는 음료가 있기도 하고 없기도 하다. 이 특성은 서로 여러개 의 값을 갖는 것이기 때문에 many to many로 보고, 중간 테이블을 만들어 각각 id 값을 부여한다.

profile
꾸준히!

0개의 댓글