🌳<데이터 베이스란?>🌳

데이터베이스는 효율적으로 데이터를 저장하고 검색할 수 있는 시스템이다. 데이터베이스의 주요 이점은 많은 사용자가 데이터를 안전하게 활용하고,관리 할 수 있다는 것이다.

💻<데이터베이스 관리자, DBMS>💻

데이터베이스를 효율적으로 관리하고 운영하기 위한 소프트웨어를 DBMS(database management system)이라고 한다.

DBMS의 역할은 여러 사용자가 동시에 데이터베이스에 접근하고 사용할 수 있도록 하는 것이며, 이를 통해 데이터의 공유가 가능하다. 또한, DBMS는 다양한 요구사항을 만족시키면서도 데이터베이스를 효율적으로 관리해야한다.

 

그래서 일반적으로 사람들이 '데이터베이스'라고 부르는 MYSQL이나 Oracle 같은 것들은 실제로는 DBMS인 것이다. 이들은 데이터를 관리하는 방식에 따라서 관계형,객체-관계형,문서형,비관계형 등 다양한 유형으로 나뉠 수 있다. 이중에서 가장 널리 사용되는 유형은 관계형 DBMS이다.

📀<관계형 DBMS>📀

RDBMS라고 부른다. 관계형이라는 말을 쓰는 이유는 이 DBMS가 관계형 모델을 기반으로 하기 때문이다. RDBMS는 어렵게 생각할 필요 없이 테이블 형태로 이루어진 데이터 저장소를 생각하면 된다. 예를 들어 회원 테이블이 있다고 가정하면 각 행은 고유의 키,즉, 아이디를 가지고 있고, 이메일,나이와 같은 회원과 관련된 값들이 들어간다.

회원테이블    
ID 이메일 나이
1 Yoontaeyoung@test.com 10
2 Yoontaeyoung123@test.com 20
3 Yoontaeyoung987@test.com 30

이때 데이터 1, Yoontaeyoung@test.com,10 한 줄을 이라고 하고, ID,이메일,나이와 같은 구분을 이라고 한다.

⚡< 데이터베이스를 시작하기전 "꼭" 알아둬야할 데이터베이스 용어 >⚡

<테이블>

테이블은 데이터베이스에서 데이터를 정리하고 구성하는데 사용되는 핵심적 구조이다. 행(row)와 열(column)의 형태로 구성되며, 각 행은 다양한 속성을 나타내는 데이터들로 이루어져 있다.

<>

행(row)은 테이블의 구성 요소 중 하나이며 테이블의 가로로 배열된 데이터의 집합을 의미한다. 예를 들어 회원 테이블이 있다고 할 때 ID가 1번인 회원의 이메일,나이 같은 정보가 모여있는 집합이 1번 회원에 대한 행이라고 할 수 있다. 행은 반드시 고유한 식별자인 기본 키를 가진다. 행을 레코드(recode)라고 부르기도 한다.

<>

열(column)은 테이블의 구성 요소 중 하나로, 특정 데이터 유형이 저장된다. 예를 들어, 회원 정보 테이블에서 '이메일'과 '나이'는 각각의 열이 될 수 있으며, 이 열들은 데이터의 무결성을 보장한다. 즉, 각 열은 해당하는 데이터 유형만을 저장한다.

<기본키>

기본키(primary key)는 행을 구분할 수 있는 식별자이다. 이 값은 테이블에서 유일해야 하며, 중복 값을 가질 수 없다. 보통 데이터를 수정하거 삭제하고, 조회할 때 사용되며 다른 테이블과 관계를 맺어 데이터를 가져올 수도 있다. 또한 기본키의 값은 수정되어서는 안 되며 유효한 값이어야 한다. 즉 NULL이 될 수 없다.

<쿼리>

쿼리(query)는 데이터베이스에서 데이터를 조회하거나 삭제,생성,수정 같은 처리를 하기 위해 사용 하는 명령문이다. SQL이라는 데이터베이스 전용 언어를 사용하여 작성한다. 

 

🔥< ORM이란? >🔥

ORM(Object-relational mapping)은 데이터베이스와 프로그래밍 언어 사이의 '다리'역할을 한다. 데이터베이스에 저장된 정보를 프로그래밍 언어가 이해할 수 있는 형태, 즉'객체'로 변환해주는 기법이다.

 

그럼 ORM이 왜 필요한지 예를 들어 설명해보자. 데이터베이스에 '홍길동'이라는 이름과 '20'이라는 나이가 저장되어 있다고 가정해보자. 이 정보를 자바 같은 프로그래밍 언어로 활용하려면 일반적으로 SQL이라는 데이터베이스 전용 언어를 사용해야 한다. 하지만 ORM이 있으면, 별도로 SQL을 배우지 않아도 이 정보를 자바 객체로 바로 사용할 수 있다.

 

즉, ORM은 프로그래밍 언어로 데이터베이스를 손쉽게 다룰 수 있게 해주는 도구라고 볼 수 있다. 이런 ORM 활용에는 ㄷ장단점이 있다.

 

< 장점

ⓐ.SQL을 몰라도 프로그래밍 언어로 데이터를 다룰 수 있다.

ⓑ.코드를 객체지향적으로 작성할 수 있어 비즈니스 로직에 더 집중할 수 있다.

ⓒ.데이터베이스 시스템을 쉽게 변경할 수 있다. (예:MySQL에서 PostgreSQL로)

< 단점 >

ⓐ. 프로젝트가 복잡해질수록 ORM 사용이 어려워진다.

ⓑ. 복잡한 쿼리를 실행하기 어렵다.

 

 

 

Reference : 출처 : 스프링 부트 3 백엔드 개발자 되기 - 자바 편

http://www.yes24.com/Product/Goods/118625612

 

스프링 부트 3 백엔드 개발자 되기 - 자바 편 - YES24

- 자바 백엔드 개발자가 되고 싶다면- 자바 언어 입문 그다음에 꼭 보세요실력을 갖춘 개발자로 성장하려면 시작이 중요합니다. 그래서 이 책은 무엇부터 익혀야 하는지 막막한 입문자에게 백엔

www.yes24.com

 

+ Recent posts