일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- db
- github
- til
- TMDB
- HTML
- bootstrap
- Protocol
- CSS
- IntersectionObserver
- Boostrap
- Database
- useEffect
- http
- 배포
- JavaScript
- SQL
- Github Pages
- Fetch
- Cloud
- jQuery
- this
- data
- REACT
- firestoredatabase
- supabase
- W
- API
- url
- nosql
- web
- Today
- Total
072DATA
관계형 데이터베이스와 비관계형 데이터베이스 본문
APPETIZER
이번엔 관계형 데이터베이스와 비관계형 데이터베이스의 차이점을 알아 볼거야..
시작하기에 앞서 내가 둘의 차이를 제대로 이해하지 못했을 때
서로의 차이점은 중요한 것과 그렇게 별로 중요하지 않은 것
이라고 생각하였는데 저어어어언혀 아니더라고 현재 공부중인 캠프의 이OO 튜터님께서 말씀하셨어.
" 세상에 중요하지 않은 데이터(혹은 데이터베이스)는 없다. "
튜터님의 말처럼 중요하지 않은 데이터는 없는데 나는 뭔가 비 관계형의 특징으로서
여러가지 데이터를 다룰 때 유리한 점에 있어서 뭔가 가볍게만 생각한 것 같아.
자 그러면 둘의 특징과 차이점을 한 번 같이 알아보자 !
DB? 데이터베이스?
데이터베이스란 무엇일까!
데이터가 저장된 곳? 데이터를 기록하는 곳?
전부 다 맞고 정말 데이터를 저장하고 조회하고 삭제하고 수정할 수 있는 공간을
데이터베이스라고 해 줄여서 DB라고 하는거지
데이터베이스안에는 전자적인 모든 것들이 담겨질 수 있어
예를 들어서 한 사람의 대한 정보라던가, 물체의 대한 특징들, 혹은 누군가가
사이트를 회원가입하고 로그인한 시간 등
무엇이든 데이터베이스에는 저장될 수 있다는거지.
한마디로 데이터베이스는 정보를 저장하는 프로그램이야
자 그럼 데이터베이스에 대해서 알아봤으니 관계형 데이터베이스는 무엇인지 알아보자.
관계형 데이터베이스
정형화된 데이터를 다루며 데이터 간의 관계를 명확하게
정의하고 관리할 수 있는 데이터베이스 시스템
정형화된 데이터라는 것은 행과 열의 형태를 가진 데이터를 의미하고
정리된 정보를 사용할 때 더 효과적으로 사용할 수 있지
데이터 간의 관계의 예시로는 쇼핑몰 회원 정보 테이블과 구매된 상품에 대한 테이블에서
회원의 이름(혹은 ID)과 구매 된 상품의 구매자 이름(혹은 ID)이 일치 할 때
관계형 데이터베이스를 사용한다면 더욱 수월하게 데이터를 관리할 수 있을 거야
보통 은행, 대기업 등에서 관계형 데이터베이스를 사용해
SQL 데이터베이스는 SQL문을 사용하는 관계형 데이터베이스를 가리키고
MySQL, PostgreSQL, Oracle Database 등이 SQL을 사용하는 관계형 DB라고 볼 수 있어.
비관계형 데이터베이스
비관계형 데이터베이스는 데이터의 구조가 유연하고 확장성이 뛰어나며,
다양한 데이터 형식을 지원하여 많은 양의 데이터를 효율적으로 관리할 수 있어.
구조가 유연하다는 것은 각 데이터 항목마다 다른 속성을 가질 수 있고, *스키마 가 고정되어 있지 않다는 뜻이야.
(* 스키마(Schema)는 데이터베이스에서 데이터 구조를 정의하고 구성하는 데 사용되는 개념이야)
또 다양한 데이터 형식을 지원한다는 것은 텍스트, 문서, 그래프 데이터 등 다양한 형태를 의미해
따라서 구조가 유연하고 확장성이 뛰어나며 대규모 데이터를 빠르게 처리하고 분석하는 데 유리하쥐
특히 웹 애플리케이션 로그, 소셜 미디어 데이터, 실시간 센서 데이터 등을 다루는 데 적합하다고 알려져 있어.
비관계형 데이터베이스 종류로는 정말 다양한데
Key-Value Store - 간단한 구조로 키와 값을 쌍으로 저장해 데이터 접근이 매우 빠르고 단순한 데이터 구조에 적합하다.
Document Store - JSON 또는 BSON 형식의 문서를 저장하며, 유연한 스키마가 특징이다.
Wide-Column Store - 행에 대해 다양한 수의 열을 가질 수 있는 데이터 모델을 사용하고, 대규모 데이터의 저장과 분석에 적합하며, 높은 가용성과 확장성을 제공한다.
Graph Database - 노드(Node)와 간선(Edge)으로 표현되는 복잡한 관계를 저장하고 쿼리하는 데 특화된 데이터베이스이며, 복잡한 관계 데이터를 직관적으로 모델링할 수 있다.
이렇게 비관계형 데이터베이스는 특정한 데이터 구조와 사용에 맞춰 설계 되어 있어서 데이터의 저장 및 처리 방식에
차이가 있어 여러가지 조건들을 고려하여 적절한 데이터베이스를 선택하면 보다 효율적으로 데이터를 관리할 수 있을거야
차이점 ( 각 데이터베이스의 한줄 요약?)
관계형 데이터베이스는 구조화된 데이터를 엄격하게 관리하고 *트랜잭션 처리를 지원하는 데 강점을 가지며,
(*트랜잭션은 데이터베이스에서 여러 작업을 하나로 묶어서 처리하는 단위라고 생각하면 돼)
비관계형 데이터베이스는 유연한 데이터 모델과 대규모 데이터의 처리와 확장성을 지원하는 데 강점을 갖고 있어.
따라서 둘다 엄청나게 중요한 데이터를 더 효율적으로 다루기 위해서 설계를 다르게 한거지
또 무조건 관계형 데이터베이스를 써야하거나 비관계형 데이터베이스를 써야하지는 않아
그저 선택지일 뿐이며 개발자의 선택에 의해서 결정될 뿐이야.
느낀점
오늘은 나한테 관계형과 비관계형 데이터베이스를 알려주는 느낌으로 말투 컨셉을 잡아봤는데
다 작성하고나서 검토해보니 뭔가 오글거려서 조금 쪽팔린다. 웬만하면 이 글은 보지 않았으면 좋겠다.
오늘은 관계형과 비관계형 데이터베이스에 대해서 알아봤는데 본문에서 말했다시피
나는 SQL은 중요한 데이터, NOSQL은 중요하지 않은 데이터 이런식으로 생각했기 때문에
그 상태로 누군가가 나한테 물어봤다면 정말 부끄러운 흑역사를 생성할 뻔 했을 것이다 ( 이미 튜터님에겐 들켰지만 )
그래서 오늘의 수모를 다시는 잊어 먹지 않기 위해 꽤 시간을 들여서 정리를 했다......................
예전엔 코드만 올려놓고 무슨 무슨 코드이다 이렇게 정리했는데
막히는 문제가 있거나 내가 공부한 내용을 기록하거나 더 자세히 알고 싶은 내용들을 정리하여
남겨두는 과정은 생각보다 많은 지식을 습득하게 되는 것 같다고 느낀다.
해당 글에 내용은 내가 원래 알고 있던 지식뿐만이 아닌 당연히 검색 및 GPT
그리고 튜터님까지 다양한 객체로부터 얻어온 지식들이었고 그것들을 한 곳에 모아
내 색깔대로 정리하다 보면 결국 100퍼센트 완벽하게 이해할 수도 있지 않을까 하고 생각했다.
참조 링크
참조 - https://aws.amazon.com/ko/compare/the-difference-between-relational-and-non-relational-databases/
관계형 데이터베이스와 비관계형 데이터베이스 - 데이터베이스 유형 간의 차이점 - AWS
관계형 데이터베이스와 비관계형 데이터베이스의 차이점은 무엇인가요? 관계형 데이터베이스와 비관계형 데이터베이스는 애플리케이션을 위한 두 가지 데이터 저장 방법입니다. 관계형 데이
aws.amazon.com
참조 - https://chatgpt.com/
그리고 튜터님들
끝
'FrontEnd > HTML, CSS, JavaScript' 카테고리의 다른 글
나만의 추억 앨범 만들기 - 자바스크립트 적용( JQuery, Fetch ) (1) | 2024.07.22 |
---|---|
나만의 추억 앨범 만들기 - 페이지 디자인편(Bootstrap, HTML, CSS) (0) | 2024.07.19 |
BootStrap을 활용하여 페이지 구성하기 (1) | 2024.07.17 |
CSS - Margin, Padding 정리 (0) | 2024.07.16 |
HTML 글꼴 관련 스타일 (2) | 2023.11.28 |