본문 바로가기

Back-End/Database3

[왜 Redis를 사용했는가?] 03. Redis란? Redis에 알아보기 전에 Cache의 개념에 대해 정리하고 가자. Cache Cache란 나중에 요청할 결과를 미리 저장해둔 후 빠르게 서비스해주는 것을 의미한다. 즉, 미리 결과를 저장하고 나중에 요청이 오면 그 요청에 대해서 DB 또는 API를 참조하지 않고 Cache를 접근하여 요청을 처리하는 기법이다. 이러한 캐시가 나온 배경에는 파레토 법칙이 있다. 파레토 법칙이란 80%의 결과는 20%의 원인으로 인해 발생한다는 뜻이다. 즉, 캐시는 모든 결과를 캐싱할 필요가 없으며 서비스를 할 때 많이 사용되는 20%만 캐싱함으로써 전체적으로 효율을 끌어올릴 수 있다는 것이다. 이외에도 메모리 측면의 캐시 개념으로 속도가 느린 장치와 빠른 장치에서 속도 차이로 인한 병목 현상을 줄이기 위한 메모리이다. 실.. 2022. 10. 17.
[왜 Redis를 사용했는가?] 02. In-Memory DB 저번 시간에는 NoSQL에 대해 알아보았다. Redis는 In-Memory NoSQL DB니 이번엔 In-Memory DB에 대해서 알아보자. In-Memory 데이터베이스 인 메모리 데이터베이스는 컴퓨터의 주 메모리에 데이터를 저장한다. 그렇다면 메모리란 무엇일까? 메모리는 컴퓨터 하드웨어 구성요소 3가지 중 하나로 저장을 담당하고 있는 부품이다. 컴퓨터 하드웨어 구성요소 3가지는 아래와 같다. 연산을 담당하는 CPU 기억을 담당하는 주 기억장치 RAM, 보조기억장치 HDD, SDD 입출력을 담당하는 키보드, 모니터, 프린터 등 컴퓨터가 데이터를 저장할 때 사용하는 것이 바로 RAM이고 인 메모리 데이터베이스는 여기에 데이터를 저장한다는 것이다. 그럼 왜 다른 데이터베이스들 처럼 HDD나 SSD에 저장.. 2022. 10. 8.
[왜 Redis를 사용했는가?] 01. NoSQL 프로젝트 진행 중 RefershToken을 저장하기 위해 Redis를 사용하였다. 그냥 사용해봤다가 아닌 Redis에 대한 깊은 이해를 위해 정리해보고자 한다. 이후에는 프로젝트에서 어떻게 인증처리를 했는 지까지 정리해보는 것이 목표이다. 그래서 이번에는 Redis를 바로 알아보기 보단 NoSQL이 무엇인지 왜 사용하는 지에 대해 알아보고자 한다. NoSQL란 ? Not Only SQL의 약자로, RDBMS의 한계를 극복하기 위해 고안된 데이터베이스이다. 스키마가 없거나 느슨한 스키마(비정형 데이터)를 제공하는 것이 가장 대표적인 특징이며, 이를 통해 분산 환경에서 대량의 데이터를 처리하는 데에 최적화되어 있는 데이터베이스이다. 왜 사용하고 등장하였는가? 앞써 RDBMS의 한계를 극복하기 위해 NoSQL.. 2022. 9. 23.