2016-09-14 3 views
0

여러 개의 redis 인스턴스가 있습니다. 다른 포트를 사용하여 클러스터를 만들었습니다. 이제 기존의 redis 인스턴스에서 클러스터로 데이터를 전송하려고합니다. 한 인스턴스에서 클러스터로 데이터를 전송하는 방법을 알고 있지만 인스턴스가 하나보다 크면이를 수행 할 수 없습니다.redis 독립 실행 형 인스턴스에서 redis 클러스터로 데이터 이동

+0

내가 찾은 최고의 전략은 redis-trib 마이그레이션 명령을 사용하는 것이 었습니다. 하지만 이렇게하면 독립 실행 형 인스턴스에서 데이터가 삭제됩니다. 따라서 먼저 redis 독립형 인스턴스의 슬레이브를 생성하고 해당 구성을 읽기 전용에서 읽기 - 쓰기로 변경 한 다음 데이터 손실없이 redis-trib 마이그레이션 명령을 사용할 수 있습니다. 어쨌든 답장을 보내 주셔서 감사합니다. – user1973987

답변

0

redis 클러스터에 대한 sharding 전략을 정의해야합니다. Database Sharding 기본적으로 특정 일치하는 해싱 전략이 필요합니다.이 전략은 키, 클러스터의 샤드 또는 redis 인스턴스가 키를 이동하도록 결정합니다. 클러스터에서 모든 redis 인스턴스의 배열을 갖는이 데이터 마이그레이션을위한 특정 스크립트가 필요합니다.

그런 다음 독립 실행 형 redis에서 읽은 특정 키에 대해 해싱 메커니즘을 사용하여 이전에 유지 관리했던 목록에서 샤딩 인덱스 또는 redis 인스턴스를 찾아 사용하므로 해당 데이터를 클러스터 노드. 이 모든 가정 내 가정은 당신이 집안에 redis 클러스터 설정을 가지고 있는데, Redis Labs이 제공하는 것에 반대합니다.