"관계형 데이터베이스 모델 시스템"
테이블, 행(row), 열(column)로 표 방식으로 정보를 구조화한 데이터베이스 모델 시스템입니다.
기본적으로 모든 테이블에는 "기본 키(Primary key)"라는 속성이 있고
각 행은 "기본 키"에 대한 참조인 "외래 키(foreign key)"를 가질 수 있습니다.
이와 같이 서로가 밀접하게 관련있어(Reliable) 관계형 데이터베이스 모델이라 부릅니다.
잘 알려진 RDBMS에는 MySQL, PostgreSQL, MariaDB, Microsoft SQL Server, Oracle Database가 있습니다.
그 중 오픈소스, 무료인 MySQL에 대한 사용법을 익히고 Prisma (Node.js의 ORM 라이브러리 중 한 종류) 사용법에 대해서도 배웠습니다.
Azure, GCP, AWS 등의 클라우드로부터 인스턴스를 빌려 데이터베이스화 한 후 사용하려 할 때
관계형 데이터베이스 모델의 주요 이점은 직관적인 데이터 표현 방법을 제공하고 관련 데이터 포인트에 쉽게 액세스할 수 있게 해준다는 점입니다.
관계형 데이터베이스인 RDBMS와 비관계형 데이터베이스인 NoSQL은 서로 다른 용도의 데이터베이스입니다.
정형화된 데이터베이스 구조인가 vs 가용성이 높은 데이터베이스 구조인가
게임 서버에 대해 공부하는 입장에서,
수많은 계정과 캐릭터들의 아이템 정보를 관리하려면?
정형화된 데이터베이스 구조를 통해 일률적으로 관리하는 것이 편합니다.
MySQL을 공부해봅시다.


Prisma는 객체와 해당 객체데이터에 대해 요청받고 응답해주는 데이터베이스 사이를 맵핑(연결)시켜주는 ORM 툴입니다.

Prisma를 쓰는 이유는 간단합니다.
Raw Query와 같은 원시코드는 상대적으로 코드의 유연성이 떨어진다고 볼 수 있습니다.
가령, MySQL을 사용 중에 Oracle이라는 RDBMS로 마이그레이션하려 할 때 Raw Query의 경우 모든 코드를 바꿔줘야하는 수고로움과 미처 바꾸지 못한 코드로 인해 서버에 어떤 오작동을 초래할 수 있는 위험성을 함께 갖고 있습니다.
하지만 ORM은 속성값만 변경해주면 유동적으로 코드관리가 가능합니다.
Prisma를 사용하고 싶은 폴더가 있다면
해당 폴더의 VScode 터미널에서 간단한 명령어로 설치가 가능합니다.
#npm / yarn 사용시 슬래시로 구분#
#프로젝트를 생성한 디렉토리위치의 터미널에서 사용해야합니다.
#prisma 의존성을 추가해주기
npm i prisma / yarn add prisma
npm i dotenv / yarn i dotenv
npm i @prisma/client / yarn add @prisma/client
npx prisma init / yarn prisma init
설치가 끝나면 prisma 폴더가 생성되고 그 안에 스키마 파일이 하나 생깁니다.
그 스키마 파일 내에서 prisma 문법에 따라 명령어를 적용하여 객체(테이블)를 만들고 객체 내 변수(컬럼)을 정의할 수 있습니다.
