Redis를 기존에는 개발자들이 관리 하였지만,

이제는 DBA가 관리하는게 더 수월할 것 같아서 관리하기에 앞서 선행 학습중이다.


이리저리 접속 진행해 보았지만,

관리자는 콘솔에서도 작업이 기본!!!이라고 생각하기에


콘솔로 접속 후 데이터 확인을 하기 시작했다.


기본 명령어도 모르니 확인하는건 불가능....


여러모로 찾다가 노하우를 찾아 공유해 본다.


여러 redis 블로그를 보면 기본적으로 사용 방법만 나와있지,

어떻게 확인하는지는 못찾아서 꺼이꺼이 찾아서 공유해 본다.


1. select 로 db??? 선택

(rdbms는 db를 생성하지만 redis는 정해져 있다. 1 ~ 15까지 / select 1 또는 select 15 이런식으로 선택)


2. RANDOMKEY 를 사용하여 또는 KEYS * 를 사용하여 해당 KEY들 검색


 - keys * 를 하게 되면 모든 키가 검색된다.

 - 10만개의 데이터를 테스트로 저장했기에 만건이 표시된다.

..

중략...

..


3. 확인하고 싶은 KEY 의 type 확인을 위해 type 키내용 확인

- string으로 저장했기에...(단순히 set 으로 INSERT 하였다)


4. 해당 Key 타입에 맞는 명령어를 찾아 내용확이

- 명령어를 모른다면 아래 참조 사이트에서 찾아보자..


명령어 참고 사이트 : http://redisgate.kr/redis/command/commands.php


하아....정말 가급적 관리자가 아니라면 RedisDesktopManager 를 설치해서 간편하게 확인하는 것이 편할 듯 싶다.



반응형

MariaDB의 Storage 엔진 중 하나인 myrocks 는 페이스북에서 개발한 엔진 이다.


개념 정리 및 테스트를 하고 싶어서 작년에 잠깐 진행하다가 중단된 이후 지난주부터 다시 진행 중이다.


여러 테스트 이전에 개념 정리가 중요한데,

아직 정리를 진행중이며, 공유를 하기에도 민망할 정도로 정리가 안되어 일단은 간단 sysbench 테스트 정도 진행한거 공유하려고 한다.


공유에 앞서 myrocks의 경우 기존 innodb의 B Tree 방식이 아닌 LSM-tree 기반 INDEX를 사용한다.


추후 mongo DB도 진행 예정이지만 이때도 페이스북에서 개발한 rocks engine?을 설치해서 테스트 예정이다.


mryocks는 아무래도 INSERT 와 SELECT 에 초점을 맞춘? storage engine 이기에 간단하게 INSERT 테스트를 먼저 진행해 보았다.


참고로 myrocks 는 아래와 같이 확인 할 수 있다.

(Engine : ROCKSDB / Index : LSMTREE)



당연 동일 DB에 sysbench를 이용하여 INSERT를 진행 하였다.


--innodb

sysbench --test=/usr/share/sysbench/tests/include/oltp_legacy/insert.lua --threads=8 --mysql-host=192.168.56.101 --mysql-user=root --mysql-port='8001' --mysql-table-engine=innodb --db-driver=mysql --oltp-table-size=10000000 --oltp-test-mode=complex --events=10000 --oltp-read-only=off  --db-ps-mode=disable  run;


--rocksdb

sysbench --test=/usr/share/sysbench/tests/include/oltp_legacy/insert.lua --threads=8 --mysql-host=192.168.56.101 --mysql-user=root   --mysql-port='8001' --mysql-table-engine=rocksdb --db-driver=mysql  --mysql-db=sbtest_rocksdb --oltp-table-size=10000000  --oltp-test-mode=complex --events=10000  --oltp-read-only=off  --db-ps-mode=disable  run;



결과는 아래와 같다


1. innodb



2. myrocks



Conclusion


- time 은 innodb가 myrocks 보다 적게 소요

- transaction 처리량 또한 innodb(2420건) myrocks (935건)으로 더 높은 처리량



* 추가 20초 동안 INSERT 진행

1. innodb

# sysbench --test=/usr/share/sysbench/tests/include/oltp_legacy/insert.lua --threads=8 --mysql-host=192.168.56.101 --mysql-user=root --mysql-port='8001' --mysql-table-engine=innodb --db-driver=mysql --max-requests=0 --max-time=20 --oltp-test-mode=complex --oltp-read-only=off  --db-ps-mode=disable  run;


2. myrocks

# sysbench --test=/usr/share/sysbench/tests/include/oltp_legacy/insert.lua --threads=8 --mysql-host=192.168.56.101 --mysql-user=root   --mysql-port='8001' --mysql-table-engine=rocksdb --db-driver=mysql  --mysql-db=sbtest_rocksdb --max-requests=0 --max-time=20 --oltp-test-mode=complex --oltp-read-only=off  --db-ps-mode=disable  run;



1. innodb 결과

\


2. myrocks 결과


- 하아..myrocks에 대해 기대한 만큼 뭔가가 아쉽다. 물론 내가 잘못 테스트 할 수 있기 때문에 그냥 참고 자료로 활용하려고 한다...ㅠ

반응형

★ Redis Replication 구성 방법은 아래 블로그 참조

- 정말 쉽게 작성하여서 나도 쉽게 구성을 완료 하였다.

- 아쉽게도 replication 관련해서 check 방법에 대해서는 잘 나와 있지 않아 아쉬움 부분이 있다.

http://jdm.kr/blog/157


★ Redis HA 구성 방법은 동일 블로그 내에 참조

- 아직 진행은 하지 않았지만 별 문제 없이 가능하도록 잘 설명되어 있음

http://jdm.kr/blog/159


★ 주요 설정값

http://jdm.kr/blog/139

maxmemory 2mb
maxmemory-policy allkeys-lru


추후 MongoDB 진행하면서 이 분 블로그 참조하면 빨리 익힐 수 있을 듯 싶다.



다음 참조하면 좋을 블로그(사이트)

★ redis 구성 시 어떤 부분을 유의하면서 실무에 적용하면 좋을 지 설명하는 내용

http://redisgate.kr/redis/configuration/replication.php


오랜만에 블로그 하는 만큼 좋은 정보를 공유해야 하는데...퍼온 거라니...에휴...ㅠ


sql server 나름 한것들에 대해서 공유도 해야 하지만...이건 정리하는게 삼만리라...포기..ㅠ


다음으로는 mongo DB를 R&D 하는 것이며, 다음 게임 프로젝트는 mongoDB를 고려해볼까 한다....

반응형

+ Recent posts