본문 바로가기
2021-1/RDA

NoSQL | Tokyo Tyrant ( 영속성 key-value형 스토어)

by 이망고_ 2021. 10. 5.

Tokyo Tyrant

히라바야시 미키오가 개발한 오픈소스 소프트웨어

NoSQL 데이터베이스 중에서는 영속성 key-value형 스토어로 분류된다

Tokyo Tyrant 를 사용하는 이유

  • 데이터가 사라지면 안 된다 <- memcached 는 데이터가 없어져도 괜찮다, 데이터가 사라져도 복원할 수 있다 경우에서 사용할 수 있다는 제한이 있었다

특징

Tokyo Cabinet은 key-value형 스토어로 데이터 입출력이 가능하다. 단 네트워크 상에서 이용하는 것이 불가능하여 로컬에 있는 시스템 사이의 통신만 가능하다는 제약이 있다 -> Tokyo Tyrant 는 네트워크 인터페이스 패키지이다 

  • 실제 내부 : Tokyo Cabinet, 인터페이스 : Tokyo Tyrant 

장점

데이터가 디스크에 보관 : Tokyo Tyrant 가 정지되어도 데이터는 사라지지 않는다

데이터형 데이터의 보관형식 특징
On-memory 데이터베이스 key-value 형식으로 메모리에 데이터 보관 memcached 와 동일
Hash 데이터베이스 key-value 형식으로 디스크에 데이터 보관 랜덤 접속이 빠름
B-tree 데이터베이스 하나의 key에 여러 값 입출력 가능.
디스크에 데이터 보관
sequential 접속이 빠름 
범위 검색 가능
테이블 데이터베이스 관계형 데이터베이스처럼 여러 데이터 컬럼. 디스크에 데이터 보관 복잡한 조건으로 검색 가능

약점

도입시 장벽이 높다

데이터형 Tokyo Tyrant 의 클래스명 Tokyo Cabinet 의 클래스명 기동시 파일명
On-memory 데이터베이스 - - *
Hash 데이터베이스 RDB HDB *.tch
B-tree 데이터베이스 - HDB *.tcb
테이블 데이터베이스 RDBTBL TDB *.tct

도입 사례

데이터의 고속처리가 필요하면서 해당 데이터가 사라지면 안되는 경우

  • Mixi의 최종 로그인 시각 데이터 관리
  • 타베로그 내 각 레스토랑의 접속 횟수

사용 케이스

  • 사라지면 안 되는 데이터에 대한 접속이 빈번하게 있음
  • 단순한 key-value 형식은 아닌데 처리가 느린 페이지가 있을 때 

memcached 는 expires 기능 보유 : 정기적으로 정리될 데이터용

Tokyo Tyrant 디스크에 보유 : 반영구적으로 보존하고 싶은 데이터용

이름 데이터 영속성 expires (유효기간) 데이터 복제
memcached 없음(메모리 저장) 있음 표준에서는 지원하지 않음(repcached 등을 이용)
Tokyo Tyrant 있음(디스크 저장) 없음 표준에서 지원

 

'2021-1 > RDA' 카테고리의 다른 글

NoSQL | MongoDB (문서형 데이터베이스)  (0) 2021.10.05
NoSQL | Redis (휘발성/영속성 ket-value 형 스토어)  (0) 2021.10.05
NoSQL | memcached  (0) 2021.10.05
NoSQL | 이해하기  (0) 2021.10.05
MongoDB | 기본 명령어 숙지하기  (0) 2021.10.04