[4주차] 인스타그램 DB설계하기

최희정·2022년 4월 6일
0

데이터베이스를 생성하는 것은 엑셀 파일을 생성하는 것과 같다.
엑셀 파일을 생성하고 나면 시트를 많이 만들게 되고, 시트를 생성하고 나면 어떤 칼럼들이 있는지 정의를 해줍니다.
예를 들면 출석부에 이름,학과,학번이 있는지 칼럼을 정의한다.
칼럼을 정의한 뒤에 칼럼 마다 데이터를 쭈욱 집어넣게 된다.

데이터베이스로 돌아오면 엑셀파일을 데이터베이스, 스키마
각각의 시트는 테이블
컬럼은 속성이 될 것입니다.

스키마를 생성하고, 정의하는 것을 DDL 에서 사용한다.
DDL에는 Create, Alter, Drop 이라는 명령어를 사용합니다.
DML에는 Insert, Select, Update, Delete 가 있다.
DCL에는 Grant, Revoke

시스템 분석

< User >
유저 닉네임
유저 이름
유저 프로필 사진
유저 소개글
유저 웹사이트 링크

< Follow >
팔로워 수
팔로잉 수

< 게시물 >
게시물 개수
게시물 사진
게시물 내용
게시물 좋아요 수
게시물 댓글 수
게시물 올린 시간

< 댓글 >
댓글 내용
댓글 올린 시간
태그된 유저
댓글 좋아요 수
대댓글 여부

논리
Entity - 객체 (User, Follow, 게시물, 댓글)
Attribute - 속성
Relation - 관계

물리 (실제 DBMS를 구성하는 작업)
Entity -> 테이블
Attribute -> column
Relation -> 1:N

RDS
EX) 크레이지 아케이드 (해피서버, 드림서버)
각각의 서버에 DB를 하나씩 가지고 있고 서버가 터진다면 DB도 함께 터진다.
서버가 다르면 데이터가 공유되지 않아 같이 게임 불가능

따라서 여러 개의 서버가 공유(데이터 공유 가능)되는 RDS를 만들었음.
EX) 구글 계정으로 유튜브, Gmail 이용하는 것

앞으로 나는 로컬 DB를 사용하는 것이 아닌 RDS를 구축해서 사용할 것임.

🔥Challenge🔥
1) AWS RDS 구축하기
2) RDS 외부 접속하기

profile
차근차근 일상을 기록하는 컴공생 👩🏻‍💻

0개의 댓글