Type something to search...

1 파이썬기반SQL프로그래밍

1. DBMS와 데이터모델링

1.1. 데이터베이스 (DataBase)

데이터베이스(DB) : 하드웨어에 저장된 데이터의 집합 자체를 의미한다. 서류들이 가득 차 있는 ‘서류함’과 같다

1.2. 데이터베이스 관리 시스템 (DataBase Management System)

데이터베이스 관리 시스템(DBMS): 저장된 데이터베이스를 관리해 주는 소프트웨어이다. 서류함에서 원하는 서류를 찾고, 정리하고, 보호하는 ‘관리인’ 역할을 한다.

  • DB: 데이터를 보관하는 저장소
  • DBMS: 저장소를 관리하는 소프트웨어

1.3. 데이터베이스 종류 (데이터 모델 기준)

데이터가 어떤 구조로 연결되고 저장되는지에 따른 분류입니다.

종류특징비고
계층형 (Hierarchical)데이터가 나무 뿌리처럼 상하 관계로 연결됨1960년대 최초 출시(IMS 등)
네트워크형 (Network)데이터 간의 관계를 그물 형태로 연결함계층형의 단점을 보완하기 위해 개발됨
관계형 (Relational)데이터를 표(Table) 형태로 관리함현재 가장 널리 쓰이는 표준 모델
객체형 (Object-oriented)정보를 객체 단위로 저장함프로그래밍의 객체 지향 개념을 도입함

1.4. 주요 DBMS 종류 (소프트웨어 제품 기준)

현재 시장에서 활발히 사용되는 구체적인 소프트웨어들입니다.

제품명데이터 모델주요 특징
Oracle관계형(Relational)강력한 보안과 성능, 대규모 시스템용
MySQL / MariaDB관계형(Relational)오픈 소스, 웹 서비스 개발에 대중적임
PostgreSQL관계형(Relational)신뢰성과 확장성이 뛰어난 오픈 소스
SQLite관계형(Relational)가벼운 파일 기반, 파이썬 내장 라이브러리
MongoDB문서형(Document)비정형 데이터 처리에 적합한 NoSQL
Redis키-값(Key-value)속도가 매우 빠른 인메모리 저장소
Elasticsearch검색 엔진대량의 텍스트 검색 및 분석에 특화됨

1.5. 데이터모델링 3단계

Label

데이터베이스는 정보를 담는 **구조(모델)**를 먼저 결정하고, 그 구조를 실질적으로 관리할 **도구(DBMS 제품)**를 선택하여 사용하게 됩니다. 실습에서 사용할 **에스큐엘라이트(SQLite)**는 관계형 모델을 따르면서도 별도의 서버가 필요 없는 매우 가벼운 도구입니다.