2011-02-06 2 views
0

SQL 기반 DB 대신 큰 데이터베이스에 RedisDB를 사용할 수 있습니까?큰 데이터베이스에 RedisDB를 사용할 수 있습니까?

정말 RedisDB 아키텍처가 마음에 드는데, 이제 RedisDB가 가상 메모리를 지원합니다.

하지만 지금은 얼마나 빠릅니다.

추신 : 큰 데이터베이스를 말할 때, 나는 큰 것을 의미하지는 않습니다. 메모리에 저장할 수없는 일부 사이트의 DB뿐입니다.

답변

2

모두 응용 프로그램에 따라 다릅니다. Redis는 키 - 값 저장소입니다. 데이터를 관계형 형식으로 저장하고 키 검색에 적합하지 않으면 실제로 솔루션이 아닙니다. 또한 Redis는 메모리에 저장 될 때 최고의 성능을 발휘합니다. 트랜잭션이 중요한 경우, 실제로는 좋은 솔루션이 아닙니다. 나는 Redis를 사용하고 그것을 좋아하지만, 많은 사람들이 Redis가 적합하지 않은 응용 프로그램에서 구두 끈을 세우려고합니다. 웹 페이지, 댓글, 트윗 등을 저장하는 경우 MongoDB와 같은 문서 저장소도 고려할 것입니다. 구현에 대한 자세한 내용을 추가해야합니다.

+0

답장을 보내 주셔서 감사합니다. 그러나 나는 지금도, 메모리에있는 Redis의 성능에 관해서는 여전히 지금입니다. 나는 가상 메모리 성능에 대해 물었다. Redis in Memory를 사용하는 것은 문제가되지 않습니다. 가상 메모리에 대한 캐시처럼. – uhbif19

+0

또한 거래에 대해 귀하를 이해하지 못합니다. 제가 아는 바와 같이 레디 스는 ACID 거래를 잘 지원합니다. – uhbif19

+0

아니요 Redis는 ACID가 아니며 거래도 아닙니다. 또한 데이터베이스가 메모리에 맞지 않는다고 말하면 메모리에 들어갈 수있는 데이터 집합에 가장 적합하다는 의견을 제시합니다. Redis는 현재 VM을 사용하지 않기 위해 리팩토링되고 있습니다. –

2

Redis 가상 메모리 성능은 자주 사용하는 값이 모두 메모리에 저장되고 자주 사용되지 않는 내용의 디스크 읽기가있을 경우 메모리에 전체 데이터 세트가있는 것과 큰 차이가 없습니다. 액세스 요구 사항이 완전히 무작위이고 값이 디스크에서로드 된 후 한 번만 읽히는 경우 디스크에서 파일을 읽는 것보다 성능이 향상되지 않습니다. 물론 모든 캐싱 솔루션에는 해당 시나리오에 문제가 있습니다.

  • 모든 키는 그 값이없는 경우에도, 메모리에 적합해야합니다

    하지만 VM 레디 스를 위해 설계 할 때 고려해야 할 몇 가지가 있습니다. 값이 큰 직렬화 된 객체이지만 값이 단일 숫자 또는 짧은 문자열이고 실제로 키보다 작은 경우에는 잘 작동하지 않습니다.

  • VM을 사용할 때 저장 프로세스가 약간 다르게 작동합니다. 세부 사항을 기억하지는 않지만 디스크에 기록 할 내용을 고려해야 할 수도 있습니다.