메뉴 바로가기 검색 및 카테고리 바로가기

한빛미디어

독자리뷰

레디스 개념부터 실무, 고급 스킬까지, '실전 레디스'

imjihye***

|

2024-06-22

실전 레디스

최적의 운영을 위한 레디스 실전 노하우

  • 저자 : 하야시 쇼고
  • 번역 : 서대원 , 정경석(감수)
  • 출간 : 2024-05-17

 

 실전 레디스는 레디스에 대한 기초 지식부터 실무, 고급 지식을 다루고 있다. 부쩍 레디스 활용이 늘어나고 있는 가운데, 레디스를 사용하고자 하는 이들에게 이론과 실제 활용 사례를 설명한다. 레디스를 사용하는 환경과 이유에 대해서도 세세히 설명하기 때문에 다른 DBMS(RDBMS, 멤케시디 등)와의 차별점과 특성을 뚜렷이 파악할 수 있다.


저자 하야시 쇼고는 아래와 같은 유형에 속하는 이들이 이 책을 읽기에 적합하다고 보았다.

1) 레디스 도입을 고려하고 있지만, 실제 애플리케이션에는 아직 적용하지 않은 사람
2) 이미 레디스를 도입하여 애플리케이션 코드를 작성하고 있지만, 레디스를 제대로 활용하지 못하는 사람

레디스의 기초부터 실무까지 다루기 때문에 주요 독자 대상이 포괄적이다.


 책은 3부 11장으로 구성되어 있다. 레디스를 처음 접한 이들이라면 기초 파트인 1부를 통해 개념과 기초를 확실히 다질 수 있다. 2부부터는 실전 상황에서의 지식을 다룬다. 이미 레디스를 사용하고 있거나 제대로 활용하지 못하는 이들을 주요 대상으로 한다. 3부 고급 파트에서는 기초와 실전을 넘어 레디스를 깊이 이해할 수 있도록 돕는다. 다양한 Use Case에서 적용할 수 있는 지식 또한 담겨있어 완성도 높게 습득하는데 좋을 것 같다.

 

레디스의 가장 큰 특징은 속도가 빠르고, 자료형이 풍부해서 다양하게 활용할 수 있고, 인메모리 데이터베이스이면서 동시에 많은 기능을 갖췄다는 점입니다.
29쪽, 실전 레디스.


 레디스는 처리 속도가 굉장히 뛰어난 인메모리 데이터베이스 기반이기 때문에 고속 메모리에서 처리를 수행하거나 메모리 사용량을 최소화하는 등의 기술에 특화되어 있다. RDBMS보다 빠른 속도를 자랑하므로 빠른 응답이나 실시간 데이터 교환이 중요한 웹 애플리케이션에서 많이 활용되고 있다.

 

 RDBMS와 레디스를 조합하여 사용하는 사례도 많다. RDBMS를 통해 모든 데이터를 저장하고 읽고 쓰는 경우 DBMS가 점점 무거워지는 문제가 발생할 수 있다. 이런 상황에서 레디스를 활용하면 RDBMS를 사용했을 때에 대비하여 문제를 완화하고 효율성을 높이는데 도움이 될 수 있다. RDBMS에서 처리 성능의 병목 현상을 해결하거나 다양한 자료형과 기능을 사용해야 하는 경우 레디스를 사용하는 것이 더욱 유용하다. 실제로 레디스의 최초 개발자인 살바토레의 사례도 있다. 살바토레는 MySQL 기반의 실시간 웹사이트 분석 애플리케이션 서비스를 운영하고 있었는데 사용자가 대폭 증가함에 따라 처리 부하를 감당할 수 없었다. 그때 레디스를 처음 개발하여 서비스에 도입한 결과, MySQL 병목 현상을 해결할 수 있었다고 한다.

 

 한편, 레디스는 SQL을 사용할 수 없거나 트랜잭션 처리 기능이 제한될 수 있다는 단점도 있다. 레디스가 무조건적으로 RDBMS보다 뛰어난 것이 아니기 때문에 상황에 맞게 적절히 사용하는 것이 중요한 이유다.

 

 레디스는 같은 KVS에 속하는 멤케시디와도 종종 비교되곤 한다. 멤케시디는 레디스와 용도가 거의 흡사하지만 기능이 훨씬 간단하다. RDBMS의 쿼리 처리 결과를 저장하는 등 캐시를 목적으로 많이 사용되고 레디스보다 쉽게 사용할 수 있는 것이 특징이다. 고로 저자는 복잡한 데이터 모델의 경우 레디스를 활용하고 단순 캐시 용도의 경우 레디스와 멤케시디를 적절하게 사용하길 추천했다.

 

 레디스와 RDBMS, 멤케시디 간의 비교를 통해 레디스의 특성뿐만 아니라 데이터 아키텍처에 대해 고민해볼 수 있었다. 이후, 우분투에서 레디스를 설치하여 환경을 구축해나간다. 레디스에서는 String형, List형, Hash형, Set형, Stored Set형 등의 자료형을 사용할 수 있다. 개념을 이해하고 난 뒤에는 각 자료형에 대한 설명과 더불어 자료형별 주요 명령어를 습득할 수 있다.

2부에서는 레디스 운용 관리, 트러블 슈팅 등 실전에서 꼭 필요한 지식들로 구성되어 있다. 이미 레디스를 사용하고 있는 유저에게 더욱 도움이 될 것이라 생각된다(1부부터 넘어왔다면 사용하고 있는 유저가 된다). 마지막장인 3부에서는 레디스와 관련된 용어 및 기술을 설명한다. 가령, 레디스에서 독자적으로 확장한 라이브러리(RESP, SDS, ae, RAX 등)이 있다. 각 용어에 대한 정의를 내리고 난 뒤에는 2부와 마찬가지로 실습을 수행한다.

 

 

< 종합 평가 >
실전 레디스는 국내에 몇 없는 레디스 책으로 정평이 나있다. 그 명성에 걸맞게도 레디스에 대한 핵심적인 정보가 담겨있었다. 기초부터 실전까지 폭넓게 다루었지만 때로는 실전보다도 정의에 더욱 초점을 맞추기도 했다. 덕분에 아키텍처 관점에서 고민해볼 수 있어 흥미로웠다. 책의 또 다른 특징으로는 간혹 칼럼이 등장한다는 것이다. 주로 정보성 글이 많았지만 때로는 흥미를 이끄는 글들도 있었다. 레디스를 처음 접한 이들에게는 이러한 칼럼으로 흥미와 정보를 함께 얻어갈 수 있을 것 같다. 레디스를 처음 접하는 이와 실무 실력이 아직 미약한 이들에게 레디스의 교본으로 추천할만한 책이다.

 

 

 

 

"한빛미디어 < 나는리뷰어다 > 활동을 위해서 책을 제공받아 작성된 서평입니다."

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?