반응형
B-Tree란?B-Tree란 RDBMS에서 가장 많이 사용되는 Self Balanced Tree (자가 균형 이진 검색 트리)로대량의 데이터를 효율적으로 저장하고 검색하기 위해 고안된 O(logN)의 시간 복잡도를 갖는 자료 구조이다. B-Tree는 이진 트리(Binary Search)에서 여러 가지 면에서 확장된 구조이다.이진 트리와 b-tree의 차이를 한번 가볍게 살펴보자. 이진 트리 vs B-Tree이진 트리각 노드는 최대 두 개의 자식(왼쪽, 오른쪽)을 가질 수 있다.B-Tree각 노드는 최대 m개의 자식을 가질 수 있으며, m은 B-Tree의 차수(각 노드가 지닌 가지의 수)이다.위 비교를 보면 B-Tree는 더 많은 자식을 가질 수 있는 것을 볼 수 있다.이는 곧 B-Tree가 노드당 하나..
레디스란?Redis는 Remote Disctionary Server의 약자로 키(Key) : 값(Value) 해시 맵과 같은 구조를 가진 NoSQL 데이터베이스이다.MySQL, Oracle같은 일반 DB와 다르게 하드 디스크(SSD, HDD)에서 데이터를 처리 하는 것이 아니라, Redis는 In-Memory(인메모리) 기반의 DB로 메인 메모리(DRAM)에서 데이터를 처리하기 때문에 작업 속도가 월등히 빠르다.또한 Key-Value 형식으로 데이터가 저장되기 때문에 보다 빠르게 데이터에 접근할 수 있다.(평균 작업속도가 1 ms 보다 작다고 한다.) DRAM과 SSD, HDD의 비교 메모리 계층 구조는 다음과 같이 여러 계층이 있지만 인메모리DB와 일반 DB를 비교하기 위해 2가지에 대해서만 비교 하고..