재밌고 어려운 IT를 이해해보자~!

Section 01. 데이터베이스와 SQL의 기초 본문

SQL 입문

Section 01. 데이터베이스와 SQL의 기초

언제나즐거운IT 2023. 12. 20. 23:58

01. 데이터베이스의 기본 개념

데이터는 어떻게 데이터베이스가 되는가

데이터베이스(Database, DB) 는 데이터의 집합, 데이터의 저장 형태이다.

데이터는 우리말로하면 '정보'가 아닌 자료이다. 

데이터(자료)가 데이터베이스가 되는 과정은 다음가 같다.

 

1. 주변의 모든 데이터들을 나열한다. ex)키, 날짜 사람이름, 운동종목, 다양한단어, 숫자 ...

2. 특정목적의 데이터를 수집한다. ex) 운동종목 데이터 수집

=> 이렇게 특정종목의 데이터를 수집했을때 데이터는 비로소 데이터베이스가 된다.

3. 더 확실하게 구분 및 중복제거 . ex) 영어인지, 중복 데이터는 없는지, 운동 연관인지

 

즉 데이터베이스는 논리적으로 연관된 데이터를 모아 일정한 형태로 저장해 놓은 것이며, 여러 시스템 또는 사용자가 데이터를 동시에 공유하고 사용하기 위해 통합 저장한 데이터 집합을 의미한다.

 

데이터베이스는 왜 필요할까

데이터 중복을 최소화해서 조직의 목적에 맞게 효율적으로 관리하려고 사용한다. 지금은 모든 세상이 TMI다 

내가 원하는 양질의 데이터를 찾기위해선 DB 필수!

 

데이터베이스는 ISOS, R1C3으로 정리한다

일반적으로 데이터베이스르 정의할 떄는 ISOS, 데이터베이스 시스템의 특징을 이야히할 때는 R1C3을 사용한다.

 

ISOS

Integrated Data 통합 데이터  데이터의 중복이 최소화된 데이터
Stored Data 저장 데이터 컴퓨터가 접근할 수 있는 매체에 저장된 데이터
Operational Data 운영 데이터 조직의 고유한 업무를 수행하는 데 필요한 데이터
Shared Data 공용 데이터 여러 응용 시스템이 공동으로 소유하고 유지하는 데이터

 

R1C3 

Real Time Accessibility 실시간 접근성 사용자 질의에 실시간 처리해 응답
Continuous Evolution 지속적인 변화 삽입, 삭제, 수정 작업을 통해 항상 최신 데이터를 동적으로 유지
Concurrent Sharing 동시 공유 목적이 다른 여러 사용자가 동시에 같은 데이터를 공유
Content Reference 내용에 의한 참조 데이터베이스에 있는 데이터를 참조할 때 레코드의 주소나 위치가 아닌 사용자가 요구하는 데이터 내용으로 참조

 

데이터베이스는 DBMS로 관리한다

데이터베이스 관리 시스템 (DataBase Management System, DBMS)은 데이터의 입력, 수정,삭제 등 다양한 기능을 제공하는 별도의 소프트웨어이다.

데이터베이스는 데이터를 담는 통이고, 데이터베이스 관리 시스템은 이 통을 관리하는 소프트웨어이다.

DB ≠ DBMS 

02. 데이터베이스의 종류

데이터베이스는 저장 방법에 따라 계층형, 네트워크형, 키-값, 관계형으로 분류된다.

계층형 데이터베이스

데이터가 부모와 자식 관계를 이루는 트리 구조.

 

네트워크형 데이터베이스

 

키-값 데이터베이스

관계형 데이터베이스 

 

 

ERD로 이해하는 테이블 관계

테이블 간의 관계를 표현한 그림을 ERD (Entity Relationship Diagram)라고 하며, 2가지의 모델을 가진다.

논리 모델 - 데이터 모델의 첫 단계로 고객의 요구 사항을 수집,분석해 데이터베이스의 전체 모양을 구성하는 것.

물리 모델 - 논리 모델을 바탕으로 실제 데이터를 저장할 수 있는 모델을 표현한 것.

03. SQL이란 무엇인가

SQL(Structured Query Language)은 관계형 데이터베이스 관리 시스템 (RDBMS)의 데이터를 관리하는 프로그래밍 언어이다. 

DMBS SQL 명칭
SQL Server Transact-SQL(T-SQL)
Oracle PL/SQL
MySQL SQL
국제표준 ANSI SQL

SQL 문법 종류

데이터 정의 언어 DDL(Data Define Language)

  • CREATE: 데이터베이스 또는 테이블 생성.
  • ALTER: 테이블 수정.
  • DROP: 데이터베이스 또는 테이블 삭제.
  • TRUNCATE: 테이블 초기화. (뼈대는 유지하고 데이터만 삭제)

데이터 조작 언어 DML(Data Manipulation Language)

  • SELECT: 데이터 검색.
  • INSERT: 데이터 입력.
  • UPDATE 데이터 수정.
  • DELETE: 데이터 삭제.

데이터 제어 언어 DCL(Data Control Language)

  • GRANT: 특정 데이터베이스 사용자에게 작업의 특정 수행 권한 부여.
  • REVOKE: 특정 데이터베이스 사용자에게 작업의 특정 수행 권한 삭제.
  • COMMIT: 트랜잭션 작업을 완료.
  • ROLLBACK: 트랜잭션 작업을 취소하거나 이전 상태로 복구.

04. SQL을 배워야 하는 이유

1. 대부분의 데이터는 SQL을 사용할 수 있는 RDBMS에 저장.

2. RDBMS에 저장된 데이터를 추출하려면 SQL 문법을 사용해야한다.

3. RDBMS가 아닌 시스템에도 SQL과 비슷한 문법을 사용해 데이터 추출 가능.

4. 데이터 분석의 시작은 데이터 추출.

 

참조

https://aws.amazon.com/ko/nosql/key-value/

https://hongong.hanbit.co.kr/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0-databasedb-dbms-sql%EC%9D%98-%EA%B0%9C%EB%85%90/

Comments