😎 κ³΅λΆ€ν•˜λŠ” μ§•μ§•μ•ŒνŒŒμΉ΄λŠ” μ²˜μŒμ΄μ§€?

[λ°μ΄ν„°λ² μ΄μŠ€] λ°μ΄ν„°λ² μ΄μŠ€λž€ (RDB, NoSQL) λ³Έλ¬Έ

πŸ‘©‍πŸ’» 컴퓨터 ꡬ쑰/Database

[λ°μ΄ν„°λ² μ΄μŠ€] λ°μ΄ν„°λ² μ΄μŠ€λž€ (RDB, NoSQL)

μ§•μ§•μ•ŒνŒŒμΉ΄ 2023. 3. 10. 15:06
728x90
λ°˜μ‘ν˜•

<λ³Έ λΈ”λ‘œκ·ΈλŠ” μ—˜λ¦¬μŠ€ IoT 1λ₯Ό μ°Έκ³ ν•΄μ„œ κ³΅λΆ€ν•˜λ©° μž‘μ„±ν•˜μ˜€μŠ΅λ‹ˆλ‹€ :-)>

 

πŸ‘©‍πŸ’» λ°μ΄ν„°λ² μ΄μŠ€ (λ°μ΄ν„°λ“€μ˜ 집합)

: ν•œ 쑰직 μ•ˆμ—μ„œ μ—¬λŸ¬ μ‚¬μš©μžμ™€ μ‘μš© ν”„λ‘œκ·Έλž¨μ΄ κ³΅λ™μœΌλ‘œ μ‚¬μš©ν•˜λŠ” 데이터듀을 ν†΅ν•©ν•˜μ—¬ μ €μž₯ν•˜κ³  μš΄μ˜ν•˜λŠ” 데이터

 

⭐ 데이터

: ν˜„μ‹€ μ„Έκ³„μ—μ„œ μˆ˜μ§‘λœ λ‹¨μˆœν•œ 사싀과 값듀을 λͺ¨μ•„ 놓은 것

 

⭐ 정보

: 데이터λ₯Ό νŠΉμ • λͺ©μ μ— μ˜ν•΄ ν•΄μ„ν•˜κ±°λ‚˜ κ°€κ³΅ν•œ ν˜•νƒœ

 

⭐ ν•„μš”μ„±

- 데이터 ꡬ쑰가 λ°”λ€Œλ©΄ μ‘μš© ν”„λ‘œκ·Έλž¨ ꡬ쑰도 λ°”λ€Œμ–΄μ•Ό 함

- 데이터 μ€‘λ³΅μ˜ 문제

- λ°μ΄ν„°μ˜ 무결성 지킬 수 μ—†μŒ

 

⭐ νŠΉμ§•

- μ‹€μ‹œκ°„ μ ‘κ·Όμ„±

- 지속적인 λ³€ν™”

- λ™μ‹œ 곡유

- λ‚΄μš©μ— λŒ€ν•œ μ°Έμ‘°

 

⭐ μ’…λ₯˜

- RDB (Relational Database) : κ΄€κ³„ν˜• λͺ¨λΈμ„ 기반으둜 SQL μ΄μš©ν•΄ 데이터 관리

=> κ΄€κ³„ν˜• (Relational database) λ°μ΄ν„°λ² μ΄μŠ€

: 데이터λ₯Ό ν–‰κ³Ό 열을 κ°€μ§€λŠ” ν…Œμ΄λΈ”

: ν…Œμ΄λΈ” κ°„μ˜ 관계λ₯Ό μ΄μš©ν•΄ 데이터 효과적으둜 관리, λ°μ΄ν„°μ˜ 무결성 보μž₯

: μ •μ˜λœ ν…Œμ΄λΈ”(μŠ€ν‚€λ§ˆ)에 맞게 데이터 μ‚½μž…, λ°μ΄ν„°μ˜ μ•ˆμ „μ„± 보μž₯

: λ°μ΄ν„°μ˜ ꡬ쑰가 일관적인 κ²½μš°μ— μ‚¬μš©

 

=> RDBMS (Relational Database Management Systme) μ’…λ₯˜

: MySQL

: PostgreSQL

: MariaDB

 

- NoSQL (Not only SQL) : 데이터 κ°„μ˜ 관계λ₯Ό μ •μ˜ν•˜μ§€ μ•Šκ³  RDB 보닀 μœ μ—°ν•œ λͺ¨λΈ 이용

: 데이터 μ €μž₯ν•  수 μžˆλŠ” μœ ν˜•μ˜ μ œν•œ X

: μƒˆλ‘œμš΄ μœ ν˜•μ˜ 데이터 μΆ”κ°€ 용이

: 데이터 ꡬ쑰 일관적이지 μ•Šμ•„ 자주 λ³€κ²½ν•  λ•Œ 적합

: λŒ€μš©λŸ‰ 데이터 λΉ λ₯΄κ²Œ 처리

 

=> NoSQL μ’…λ₯˜

: MongoDB

: Redis

: Apache Cassandra

 

 

πŸ‘©‍πŸ’» κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€

⭐ ꡬ성 μš”μ†Œ

- ν…Œμ΄λΈ” : ν–‰κ³Ό μ—΄

- 속성 : λ°μ΄ν„°μ˜ νŠΉμ„±μ„ λ‚˜νƒ€λ‚΄λŠ” κ°€μž₯ μž‘μ€ 논리적 λ‹¨μœ„

- νŠœν”Œ : 속성이 λͺ¨μ—¬ κ΅¬μ„±λœ 각각의 ν–‰

- 도메인 : 속성이 κ°€μ§ˆ 수 μžˆλŠ” κ°’μ˜ 집합

 

⭐ ν…Œμ΄λΈ” μ •μ˜

=> CREATE TABLE ν…Œμ΄λΈ”λͺ… (속성1 λ°μ΄ν„°νƒ€μž…1, 속성2 λ°μ΄ν„°νƒ€μž…2 ... )

CREATE TABLE customer (
    id    VARCHAR(10),
    name VARCHAR(10),
    address VARCHAR(30),
};

 

⭐ ν…Œμ΄λΈ” 확인

=> SHOW TABLES;        ( 데이터 베이슀의 ν…Œμ΄λΈ” λͺ©λ‘ 확인)

=> DESC customer;       ( ν…Œμ΄λΈ”μ˜ ꡬ쑰 확인)

 

⭐ 데이터 μ‚½μž…

=> INSERT INTO ν…Œμ΄λΈ”λͺ… (속성1, 속성2, .. ) VALUES (속성값1, 속성값2, ..);

속성값 넣지 μ•Šμ€ 경우 defalut 값인 NULL μ‚½μž…

INSERT INTO customer (id, name, address)
	VALUES ("lge", "κ°€λ‹ˆ", "경기도");

 

⭐ 데이터 좜λ ₯

=> SELECT 속성1, 속성2, .. FROM ν…Œμ΄λΈ”λͺ…;

SELECT id, name, address FROM customer;

 

⭐ ν…Œμ΄λΈ” μˆ˜μ •

컬럼 μΆ”κ°€ => ALTER TABLE ν…Œμ΄λΈ”λͺ… ADD COLUMN 컬럼λͺ… λ°μ΄ν„°νƒ€μž… μ œμ•½μ‘°κ±΄

컬럼 μˆ˜μ • => ALTER TABLE ν…Œμ΄λΈ”λͺ… MODIFY COLUMN 컬럼λͺ… λ°μ΄ν„°νƒ€μž… μ œμ•½μ‘°κ±΄

컬럼 이름 λ³€κ²½ => ALTER TABLE ν…Œμ΄λΈ”λͺ… CHANGE COLUMN 기쑴컬럼λͺ… μƒˆλ‘œμš΄μ»¬λŸΌλͺ… λ°μ΄ν„°νƒ€μž… μ œμ•½μ‘°κ±΄

컬럼 μ‚­μ œ => ALTER TABLE ν…Œμ΄λΈ”λͺ… DROP COLUMN 컬럼λͺ… λ°μ΄ν„°νƒ€μž… μ œμ•½μ‘°κ±΄

ν…Œμ΄λΈ” 이름 λ³€κ²½ => ALTER TABLE ν…Œμ΄λΈ”λͺ… κΈ°μ‘΄ν…Œμ΄λΈ”λͺ… RENAME μƒˆλ‘œμš΄ν…Œμ΄λΈ”λͺ…

 

⭐ ν…Œμ΄λΈ” μ‚­μ œ

=> DROP TABLE ν…Œμ΄λΈ”λͺ…

 

⭐ SQL μž‘μ„± κ·œμΉ™

: SQL 문법은 λŒ€λ¬Έμž μž‘μ„±

: ν…Œμ΄λΈ”λͺ…, 속셩λͺ…은 μ†Œλ¬Έμž

: μ—¬λŸ¬ 단어 ν˜Όν•©μ‹œ "_" μ‚¬μš©

: 주석은 "--" μ‚¬μš©

: λͺ…렁 끝에 μ„Έλ―Έμ½œλ‘  ; μ‚¬μš©

728x90
λ°˜μ‘ν˜•
Comments