728x90
반응형
SMALL
1. RDBMS와 NoSQL의 차이
1️⃣ RDBMS (Relational Database Management System)
- 데이터를 표(테이블) 형태로 저장하는 시스템입니다.
- 테이블 안에는 행(row)과 열(column)으로 데이터가 구성됩니다.
- 데이터를 저장하기 전에 구조(스키마)를 미리 정의해야 합니다.
예) 이름, 나이, 직업처럼 정해진 틀에 데이터를 저장. - SQL(Structured Query Language)을 사용해서 데이터를 관리합니다.
💡 RDBMS 사용 예시
은행 시스템, 전자상거래(쇼핑몰), 사내 ERP 등 정확성과 구조화된 데이터가 중요한 곳에서 사용.
2️⃣ NoSQL (Not Only SQL)
- 데이터를 유연하게 저장할 수 있는 시스템입니다.
- 테이블 구조 없이, 다양한 형태로 데이터를 저장합니다.
예) JSON, 키-값(key-value) 쌍, 그래프 등. - 비정형 데이터(정해진 틀이 없는 데이터) 저장에 적합합니다.
예) 소셜미디어 포스트, IoT 센서 데이터 등.
💡 NoSQL 사용 예시
페이스북, 트위터, 유튜브 같은 빅데이터와 빠른 처리 속도가 중요한 곳에서 사용.
2. 쉽게 이해하는 차이
- RDBMS는 책장에서 정리된 책을 보는 느낌이에요! 📚
(제목, 저자, 출판일이 딱딱 정해져 있음.) - NoSQL은 서랍에 다양한 물건을 넣는 느낌이에요! 🛍️
(서랍 안에는 책, 연필, 메모지처럼 형태가 다른 데이터가 막 섞여 있음.)
3. RDBMS 예시코드 (오라클 SQL)
📌 학생 정보를 저장하고 조회하는 간단한 예시
-- 1. 학생 정보를 저장할 테이블을 만듭니다.
CREATE TABLE Students (
StudentID NUMBER PRIMARY KEY, -- 학생 ID (고유 번호)
Name VARCHAR2(50), -- 학생 이름
Age NUMBER, -- 학생 나이
Major VARCHAR2(50) -- 전공
);
-- 2. 데이터를 테이블에 추가합니다.
INSERT INTO Students (StudentID, Name, Age, Major)
VALUES (1, 'Alice', 22, 'Computer Science'); -- Alice라는 학생 정보 입력
INSERT INTO Students (StudentID, Name, Age, Major)
VALUES (2, 'Bob', 24, 'Mathematics'); -- Bob이라는 학생 정보 입력
-- 3. 테이블의 데이터를 조회합니다.
SELECT * FROM Students;
4. 코드 설명
1️⃣ CREATE TABLE
CREATE TABLE Students
는 학생 정보를 저장할 테이블을 만드는 명령어입니다.- 괄호 안에는 열(Column)을 정의합니다.
StudentID
: 고유 번호, 숫자만 저장.Name
: 이름, 최대 50글자까지 저장 가능.Age
: 나이, 숫자만 저장.Major
: 전공, 최대 50글자까지 저장 가능.
2️⃣ INSERT INTO
INSERT INTO Students
는 데이터 추가 명령어입니다.- 괄호 안에는 추가할 열 이름과 값을 순서대로 적습니다.
예) 학생 ID가 1번인 Alice라는 학생 추가.
3️⃣ SELECT
-
는 테이블에 있는명령어입니다.SELECT * FROM Students
*
는 "모든 열"을 의미합니다.
- 모든 데이터 조회
5. 결과 설명
위 SQL을 실행하면 테이블에는 다음과 같은 데이터가 저장됩니다.
StudentID | Name | Age | Major |
---|---|---|---|
1 | Alice | 22 | Computer Science |
2 | Bob | 24 | Mathematics |
SELECT
를 실행하면 위와 같은 결과를 볼 수 있습니다. 😊
6. NoSQL 예시 (MongoDB)
학생 정보를 JSON 형식으로 저장
{
"StudentID": 1,
"Name": "Alice",
"Age": 22,
"Major": "Computer Science"
}
💡 MongoDB에서는 테이블 대신 JSON 형식으로 데이터를 저장하고 관리합니다.
7. 차이 정리
특징 | RDBMS | NoSQL |
---|---|---|
데이터 구조 | 테이블 (행과 열) | JSON, 키-값, 그래프 등 |
스키마 | 고정됨 (미리 정의) | 유연함 |
속도 | 정확하지만 상대적으로 느림 | 빠르지만 정확성은 다를 수 있음 |
사용 예시 | 은행, ERP, 쇼핑몰 | 소셜미디어, 빅데이터, IoT |
728x90
반응형
SMALL
'데이터베이스 > DB 필수지식!' 카테고리의 다른 글
초보자를 위한 데이터베이스 설계 핵심: Primary Key와 Foreign Key 쉽게 배우기 - 코드카인 티스토리 (0) | 2024.12.31 |
---|---|
SNS 설계도? ER 다이어그램으로 데이터 관계 쉽게 이해하기 - 코드카인 티스토리 (0) | 2024.12.31 |
당신의 DB가 엉망진창인 이유? 정규화를 모르면 답이 없다! - 코드카인 티스토리 (0) | 2024.12.23 |
데이터베이스와 친구 되기! PL/SQL로 자동화의 세계를 열다 - 코드카인 티스토리 (0) | 2024.12.20 |
[데이터베이스] 권한과 역할의 차이, 초보 개발자를 위한 완벽 가이드 (0) | 2024.12.19 |