728x90
반응형
💡 데이터베이스 개요
📍 데이터베이스 : 데이터를 관리하는 곳
📍 DBMS : 데이터베이스 관리 시스템
📍 RDBMS : 관계 데이터베이스 관리 시스템
📍 DB Server : DB(DBMS or RDBMS 같은 의미로 사용됨)가 구축된 시스템을 의미함
📍 RDBMS의 종류
- Oracle : 오라클, 최적화 OS는 리눅스 다만 모든 OS에 다 안정화되어 있음
- MySQL : 오라클, 최적화 OS는 리눅스 다만 모든 OS에 다 안정화되어 있음
- MS-SQL : 마이크로소프트, 최적화 OS는 윈도우, 보안에 취약함
- MariaDB : 오픈소스기반 DB, 최적화 OS는 리눅스 다만 모든 OS에 다 안정화되어 있음
📂파일시스템 vs DBMS
📍 파일 시스템
- 파일 시스템은 데이터들이 모아져 있는 파일을 저장 장치에 저장하고 사용하기 위한 일종의 규칙이나 체계를 뜻하며, 파일의 이름을 붙이거나 쉽게 파일에 접근할 수 있도록 배치를 신경 쓰는 등 파일과 관련된 기능을 수행하는 시스템이다.
- 파일의 기본적인 구성요소는 순차적인 레코드들이다. 여기서 레코드란 파일을 다룰 때 실제로 읽고 쓰는 단위로서 사용되는 데이터 단위를 뜻한다.
- 파일 시스템에서는 데이터 정의가 응용 프로그램에 내포되어 있어 응용 프로그램과 데이터 간의 의존관계가 존재하게 된다. 그렇기 때문에 데이터의 구조, 접근 방법이 변경되면 기존의 프로그램과 데이터를 함께 변경해야한다.
- 프로그램에서 데이터를 접근하고 조작하는 것 이외에 별도의 제어가 없다.
파일 시스템 장점 | 파일 시스템 단점 |
처리속도가 DB에 비해 빠르다 | 데이터 무결성을 유지하기가 어렵다. |
구현이 간편하다 | 다수 사용자를 위한 동시성 제어가 제공되지 않는다. |
비용이 저렴하다. | 쉬운 질의어가 제공되지 않는다. |
보안 기능이 미흡하다. | |
회복 기능이 없다. | |
데이터 독립성이 없어 유지보수 비용이 크다. | |
데이터 공유가 잘 되지 않는다. | |
생산성이 낮다 |
📍 DBMS
- 데이터베이스는 조직에 필요한 정보를 얻기 위해 논리적으로 연관된 데이터를 모아 구조적으로 통합해 놓은 것을 말한다.
- 데이터베이스 시스템은 데이터의 검색과 변경을 주로 수행한다. 여기서 변경은 삽입, 삭제, 수정 등의 작업을 말한다.
- 데이터베이스는 각 조직에서 사용하던 데이터를 모아서 통합하고 공유할 목적으로 구축된다.
📍 DBMS 특징
- 실시간 접근성 (Real Time Processing) : 의사 결정에 즉각 반영
- 계속적인 변화 (Continuous evolution) : 삽입, 삭제, 갱신등 현재 최신의 상태 유지
- 동시 공용 (Concurrent Sharing) : 다수의 사용자가 동시에 접근, 이용가능
- 내용에 의한 참조 (Content reference) : 실제 데이터 값을 참조함
📍 DBMS 정의
- 통합된 데이터 (Intergrated Data)
여러 곳에서 사용하던 데이터를 통합하여 하나로 저장한 데이터를 말한다. 통합 시 각자 사용하던 데이터의 중복을 최소화하여 데이터의 불일치 현상을 없앤다. - 저장된 데이터 (Stored Data)
문서로 보관된 데이터가 아니라 디스크, 데이프 같은 컴퓨터 저장장치에 저장된 데이터를 의미한다. - 운영 데이터 (Operational Data)
조직의 목적을 위해 사용되는 데이터로 업무를 위한 검색을 목적으로 저장된 운영데이터를 의미한다. - 공용 데이터 (Shared Data)
한사람 또는 한 업무를 위해 사용되는 데이터가 아닌 공동으로 사용하는 데이터를 의미한다.
DBMS 장점 | DBMS 단점 |
자료의 독립성 | 시스템의 부하 및 복잡성 |
- 데이터 무결성 보장 | 별도의 관리 이력 필요 |
개발 생산성 보장 (표준 SQL, 개발기간 절감, 운영비용 절감) | 추가 도입비용 발생 |
💻클라이언트와 서버
📍 Request와 Response의 관계
📍 서버
- 데이터를 포함하거나 네트워크의 다른 컴퓨터에서 액세스하는 기능을 제공하는 컴퓨터
- 다수의 클라이언트에게 서비스를 제공하기 때문에 고사양의 하드웨어를 갖춘 컴퓨터이지만, 하드웨어의 사양으로 서버와 클라이언트를 구분하는 것은 절대 아니며, 사양의 관계없이 서비스를 제공하는 소프트웨어가 실행되는 컴퓨터를 서버라고 한다.
📍 클라이언트
- 서버로부터 서비스나 데이터를 요청하는 컴퓨터
- 서버와 이어진 모든 기기(컴퓨터의 경우 WIFI / 모바일은 모바일 네트워크)와 단말기에서 이용하는 웹에 접근하는 SW이며, 주로 서버에 요청을 보내고 응답을 받는 역할을 한다.
728x90
반응형
'Digital Boot > Database' 카테고리의 다른 글
[Database][SQL] 집계 함수 / 그룹 함수 (0) | 2023.11.22 |
---|---|
[Database][SQL] 함수(replace, round, cast) / 조건문 / NULL (2) | 2023.11.22 |
[Database][SQL] SubQuery 서브쿼리 (4) | 2023.11.21 |
[Database][SQL] 별칭 / 연산자 / 함수 (0) | 2023.11.21 |
[Database] MariaDB / HeidiSQL 설치 및 사용 (5) | 2023.11.20 |