[TIL 2024.07.29] 서버의 종류와 데이터베이스

찬민·2024년 7월 29일

TIL

목록 보기
24/62

서버의 종류

크라우드 서버

크라우드 서버는 클라우드 컴퓨팅 환경에서 제공되는 서버로, 인터넷을 통해 온디맨드 방식으로 컴퓨팅 자원을 제공한다. 이러한 서버는 사용자가 필요한 만큼의 자원을 즉시 사용할 수 있게 하며, 확장성과 유연성이 뛰어나다. 예를 들어, AWS, Google Cloud, Azure 등이 있다. 클라우드 서버는 초기 비용이 낮고, 유지보수와 관리가 용이하다.

웹 서버

웹 서버는 HTTP 요청을 처리하여 웹 페이지를 제공하는 서버다. 클라이언트가 웹 페이지를 요청하면 웹 서버는 해당 페이지를 제공한다. Apache, Nginx가 대표적인 예시다. 웹 서버는 주로 정적 콘텐츠를 제공하며, 빠른 속도로 다수의 요청을 처리할 수 있는 것이 특징이다.

데이터베이스 서버

데이터베이스 서버는 데이터를 저장하고 관리하며, 데이터베이스 관리 시스템(DBMS)을 실행하는 서버다. MySQL, PostgreSQL 등이 있다. 데이터베이스 서버는 대규모 데이터를 효율적으로 처리하고, 복잡한 쿼리를 빠르게 실행할 수 있게 한다.

어플리케이션 서버

어플리케이션 서버는 응용 프로그램을 실행하고, 웹 서버와 데이터베이스 서버 간의 비즈니스 로직을 처리하는 서버다. Tomcat, JBoss가 있다. 어플리케이션 서버는 동적 콘텐츠를 생성하고, 다양한 클라이언트 요청을 처리하는 데 사용된다.

프록시 서버

프록시 서버는 클라이언트와 서버 사이에서 중계 역할을 하는 서버다. 요청을 대신 전달하고, 서버의 응답을 클라이언트에 전달한다. Squid, HAProxy가 있다. 프록시 서버는 보안 강화, 로드 밸런싱, 캐싱 등의 기능을 제공한다.

Database

DBMS (데이터베이스 관리 시스템)

DBMS는 데이터를 효율적으로 관리하고, 사용자가 데이터에 접근할 수 있도록 도와주는 소프트웨어다. 데이터베이스의 생성, 수정, 삭제, 검색 등의 기능을 제공하여 데이터 관리를 용이하게 한다.

RDBMS (관계형 데이터베이스 관리 시스템)

RDBMS는 데이터를 관계형 모델로 관리하는 DBMS이다. 테이블 간의 관계를 이용하여 데이터를 관리하며, 복잡한 쿼리를 통해 다양한 데이터를 연관 지어 처리할 수 있다.

RDBMS 종류
  • MySQL: 오픈 소스 관계형 데이터베이스 관리 시스템.
  • PostgreSQL: 객체-관계형 데이터베이스 시스템.
  • Oracle DB: 상용 관계형 데이터베이스 시스템.

SQL (Structured Query Language)

SQL은 데이터베이스를 관리하고 조작하는 데 사용되는 언어다. 데이터 정의, 데이터 조작, 데이터 제어, 트랜잭션 관리를 위한 명령어들이 포함되어 있다.

DDL (Data Definition Language)
  • CREATE: 데이터베이스 객체를 생성
  • ALTER: 기존 객체를 수정
  • DROP: 객체를 삭제
DML (Data Manipulation Language)
  • SELECT: 데이터 조회
  • INSERT: 데이터 삽입
  • UPDATE: 데이터 수정
  • DELETE: 데이터 삭제
DCL (Data Control Language)
  • GRANT: 권한 부여
  • REVOKE: 권한 회수
TCL (Transaction Control Language)
  • COMMIT: 트랜잭션 확정
  • ROLLBACK: 트랜잭션 취소

Schema 스키마

스키마는 데이터베이스의 구조를 정의한다. 스키마는 데이터베이스의 논리적, 물리적, 사용자 관점에서 데이터베이스를 설명한다.

스키마 종류

  • 개념 스키마: 데이터베이스의 전체적인 논리적 구조를 정의한다.
  • 내부 스키마: 데이터베이스의 물리적 저장 구조를 정의한다.
  • 외부 스키마: 사용자나 응용 프로그램이 데이터베이스를 볼 수 있는 관점을 정의한다.

0개의 댓글