티스토리 뷰
반응형
DataBase(데이터베이스)와 DBMS (DataBase Management System, 데이터베이스 관리 시스템)
- DataBase란 기능이나 구조를 나타내는 추상적인 개념
- DBMS란 DataBase를 나타내기 위한 기능을 제공하는 소프트웨어
- Oracle이나 Mysql 같은 제품은 'DBMS이며 데이터베이스가 아니다.'가 바른 표현이다.
IMDB (In-Memory DataBase, 인메모리 데이터베이스)
- 디스크가 아닌 주 메모리에 모든 데이터를 보유하고 있는 데이터 베이스.
- 디스크 검색보다 자료 접근이 훨씬 빠른 것이 장점
- 데이터 양의 빠른 증가로 데이터 베이스의 응답 속도가 떨어지는 문제를 해결할 수 있는 대안
- 단점으로는 안정성이 떨어신다. 정전이라도 나서 DB 서버 전원이 갑자기 내려간다면 안에 있는 자료들이 날라가게 된다.
- Persistence 보장 하기 위해 파일에 메모리상의 데이터를 저장해두고 DBMS가 재구동될 때 디스크로부터 파일을 읽어와 메모리에 DBMS 구조를 모두 재구축하기도 한다.
- 하지만 이 역시 저장하는 시점에 서버에 문제가 생긴다면 이 사이에 변경사항들이 손실된다.
- 따라서 날라가도 상관없는 임시 데이터에 주로 쓰인다.
- 전형적인 디스크 방식은 디스크에 저장된 데이터를 대상으로 쿼리를 수행하지만, 인 메모리 방식은 메모리상에 색인을 넣어 필요한 모든 정보를 메모리상의 색인을 통해 빠르게 검색할 수 있다.
- ex) redis..
RDB (Relational DataBase, 관계형 데이터베이스)
- 2차원 표 형식으로 데이터를 관리하는 데이터 베이스
- ex) mysql, mssql, mariadb...
NoSQL
- 'NoSQL'이란 'Not only SQL'의 줄임말로써 SQL뿐만이 아니라 다른 것이 더 있다는 의미
- 'SQL'이란 관계형 데이터베이스가 데이터를 조작하기 위해 준비한 언어를 의미
- RDB에 있는 일부 기능을 버려서 성능(처리 속도)을 높인다.
- 대량의 데이터를 고속으로 처리해야 하는 웹 서비스와 잘 맞는다.
- ex) redis, mongoDB...
반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- java
- Mockito
- 한글깨짐
- IntelliJ
- JPA
- aspectj
- JetBrains Mono
- spring
- Executor
- jdk13
- Jenkins
- Thread
- sgw
- codepoint
- ThreadPool
- Redis
- Visual Studio 2022
- 파스칼 표기법
- 카멜 표기법
- hot-deploy
- junit5
- 확인창
- JAVA8
- java11
- chmod
- JUnit
- thread priority
- gradle
- jdk12
- spring-security
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함