본문 바로가기

CS 공부/데이터베이스3

레디스(Redis) 란? Redis란 무엇일까? -> Redis(REmote Dictionary Server) 보통 데이터베이스는 데이터를 하드 디스크나 SSD에 저장한다. 하지만 Redis는 데이터를 메모리(RAM)에 저장하는 인메모리 데이터베이스(In-Memory)로서 디스크 스캐닝이 필요없어 매우 빠른 장점이 존재한다. 이 말만 들으면 Redis의 가장 큰 특징이 모든 데이터를 메모리에 저장하는 빠른 DB가 다라고 생각할지도 모른다. 하지만, 빠른 성능은 Redis의 특징 중 일부분이고, 다른 인메모리 데이터베이스들과의 가장 큰 차이점은 "다양한 자료구조" 이다. 데이터 구조는 key/value 값으로 이루어져있다. Value가 될 수 있는 데이터의 형식은 5가지이다. String (text, binary data) - 5.. 2022. 7. 23.
이상현상 (Anomaly) 이상현상 (Anomaly) 이란? 데이터베이스에서 정규화를 수행하지 않으면, 데이터의 중복이 발생하고 전체적인 무결성이 저하된다. 이러한 원인은 데이터 이상 현상(Anomaly)에 의해 발생하며, 이상 현상으로 인해 현실세계의 실제 값과 데이터베이스에 저장된 값이 일치하지 않는 문제가 발생한다. 데이터 이상은 삽입 이상, 삭제 이상, 업데이트 이상이라는 세 가지 유형이 존재한다. 다음은 이상 현상을 설명할 대학교 테이블이다. 학번 학생명 학과 코드 학과명 학과장 코드 학과장명 1 도우너 101 경영학과 1000 워런 버핏 2 고길동 101 경영학과 1000 워런 버핏 3 또치 102 물리학과 2000 아인슈타인 4 마이콜 102 물리학과 2000 아인슈타인 5 둘리 103 컴퓨터공학과 3000 빌 게이츠.. 2022. 7. 16.
SQL과 NOSQL의 차이 웹/앱 개발을 할 때 데이터베이스를 선택하게 된다. MySQL과 같은 SQL을 사용할까? 아니면 MongoDB와 같은 NoSQL을 사용할까? 보통 Spring에서 개발할 때는 MySQL을, Node.js에서는 MongoDB를 주로 사용한다. 하지만 그냥 단순히 프레임워크에 따라 결정하는 것이 아니다. 적합한 데이터베이스를 택해야 한다. 차이점을 알아보자. SQL (관계형 DB) SQL을 사용하면 RDBMS에서 데이터를 저장, 수정, 삭제 및 검색 할 수 있다. ※ RDBMS(Relational DataBase Management System) - 관계형 데이터베이스 관리 시스템 - 대표적으로 오라클, MySQL, Access, MsSql 등이 있다. - 데이터를 테이블 형태('스키마'라고 부른다)로 관리.. 2022. 7. 10.