레디 스 vs 사육사


25

이 두 서버가 서로 다른 것을 의미한다는 점을 고려하여이 두 서버를 비교하는 것은 어리석은 것 같습니다. 그러나 그것에 대해 생각하면 구성 데이터 저장, 분산 잠금, 대기열 등의 많은 유사한 작업을 수행 할 수 있습니다.

프로덕션 관련 작업에 사용하는 Redis 인스턴스가 있지만 서버간에 간단한 동기화 (대개 코드를 올리지 않고 서버간에 간단한 잠금이 필요하지 않은 구성 변경)를 원합니다. Zookeeper 는 Redis가하지 않을 것이라고 무엇을 제공합니까?


Redis는 (특히) 구성 용이 아닙니다. 그들은 상당히 다른 제품입니다.
Rein Henrichs

4
왜? 구성에 PostgreSQL을 사용하고 있습니다. 구성이 비즈니스 로직과 다른 점은 무엇입니까?
Dmitry Negoda

답변:


26

우리는 직장에서 Redis와 Zookeeper를 모두 사용하므로 직접 경험 한 것입니다

레디 스는 빠르다. 정말, 정말 빠릅니다. 또한 즉시 일관성이 있으므로 빠르게 움직이는 데이터 세트에 적합합니다. 단점은 한 서버에서 실행 중이고 실패하면 다른 서버가 실행될 때까지 쓰기 액세스 권한이 손실된다는 것입니다. 서버를 직접 교체하지 않는 한 서버 교체는 수동 작업입니다. 슬레이브 인스턴스를 구성하면 데이터에 대한 읽기 액세스 권한을 계속 얻을 수 있습니다.

Zookeeper는 또한 즉각적인 일관성을 제공합니다. 속도는 절반은 아니지만 실패시 자동으로 (가능한 경우) 복구되므로 서버에 장애가 발생하더라도 지속적인 쓰기 액세스가 필요한 경우 Zookeeper를 사용해야합니다.

저의 조언은 조정을 위해 사육사를 사용하는 것입니다 : 어떤 노드가 활동 중인지 추적하고, 그룹 사이의 리더 선출 등. 빠른 쓰기가 필요하지만 가끔 정전이 발생하지 않는 데이터 세트에는 redis를 사용하십시오. 예를 들어 웹 페이지의 카운터를 방문하십시오.


저는 현재 프로젝트를 진행 중이며 사육사가 갈 길이라고 생각하고있었습니다. 다른 곳에서 공유 할 수있는 정보가 더 있다면 훌륭 할 것입니다. Google은 여러 번의 광고 교환을 처리하고 하루 약 40 억 건 이상의 이벤트를 추적하고 있습니다. 우리는 프론트 엔드 서버를 재 설계하고 추적 횟수, 최소 가중치 등의 정보를 저장하기 위해 사육사를 찾고있었습니다. 레디 스의 속도를 증명할 수 있지만 내 경험으로는 사육사와 함께 사용하려는 계층 구조가 부족합니다. 2012 년 이후 3 년간 자세가 바뀌 었습니까?
Chris Hinshaw

@ChrisHinshaw 나는 같은 문제에 직면하고 있습니다. 분산 잠금 및 성능이 모두 필요한 분산 자원 관리자의 경우 Redis 및 Zookeeper를 모두 고려하십시오. 의견이 있으십니까?
Rafael Saraiva

나는 지금 이것을 다시 작성하고있다. 나는 속도 때문에 redis와 함께 갔다. 사육사와 관련된 성능 문제가 있었지만 그 문제를 기억하지 못합니다. 측정 항목과 개수를 기반으로 시계열 데이터를 저장하고 있습니다. 루아 스크립트를 사용하여 각 기간의 수를 업데이트하여 호출 수를 제한하고 있습니다. 예를 들어 br : 1 : 2 : 3 : 4 형식의 입찰 요청에 대한 해시 키가 있으며 여기서 숫자는 metric : agency : advertiser : campaign : ad의 계층 구조를 나타냅니다. 해시에서 값은 year : month : day : hour : minute입니다. 내 루아 스크립트에서 나는 각각의 수를 업데이트 할 것입니다
Chris Hinshaw

시간 조각의. 따라서 스크립트는 y : m : d : h를 콜론으로 나누고 각 슬라이스의 총계를 업데이트합니다. 이 방법으로 hscan을 사용하거나 모든 타임 슬라이스에 대한 키 목록을 가져올 수 있습니다. redis에서 가장 중요한 것은 키에 대한 계층 구조 모델을 만드는 것입니다. 미래의 어느 시점에서 나는 cassandra 상점으로 rdd를 점화시키기 위해이 모든 것을 옮기고 싶습니다. 시간이 있다면이를 벤치마킹하기 위해 스파크 스트리밍을 구현할 것입니다. 나는 그것이 redis와 동등한 것으로 생각하고 분석을 수행하는 유연성을 제공합니다.
Chris Hinshaw
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.