전 세계의 많은 양의 데이터를 동기화하는 가장 좋은 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/233966

문제

전 세계 4 ~ 5 개 이상의 사이트를 각 사이트에서 반 테라 바이트에 동기화 할 수있는 많은 데이터가 있습니다. 이는 하루에 약 1.4 기가 바이트만큼 변경 (추가 또는 변경)이 변경되며 4 개의 사이트 중 하나에서 데이터가 변경 될 수 있습니다.

데이터의 많은 비율 (30%)은 중복 패키지 (아마도 포장 JDK)이므로 솔루션에는 로컬 머신에 Aruond가 놓여있는 것이 있다는 사실을 선택하는 방법을 포함해야합니다. 다른 사이트에서 다운로드

버전 관리 제어는 문제가되지 않으며, 이는 코드베이스 당이 아닙니다.

그런 일에 가까워지는 솔루션 (바람직하게는 오픈 소스)이 있으면 관심이 있습니까?

rsync를 사용하는 나의 아기 스크립트는 더 이상 머스타드를 자르지 않으며, 더 복잡하고 지능적인 동기화를하고 싶습니다.

감사

편집 : 이것은 Unix 기반이어야합니다 :)

도움이 되었습니까?

해결책

당신은 시도 했습니까? 조화?

나는 그것으로 좋은 결과를 얻었습니다. 기본적으로 더 똑똑한 rsync입니다. 아마도 당신이 원하는 것입니다. 파일 동기화 도구를 비교하는 목록이 있습니다 여기.

다른 팁

Bittorrent의 직업처럼 들립니다.

각 사이트의 각 새 파일에 대해 BitTorrent Seed 파일을 작성하여 중앙 집중식 웹 액세스 디르에 넣으십시오.

그런 다음 각 사이트는 (Bittorrent를 통해) 모든 파일을 다운로드합니다. 이것은 당신이 대역폭 공유 및 자동 로컬 카피 재사용을 만들 것입니다.

실제 레시피는 필요에 따라 달라집니다. 예를 들어, 각 호스트의 각 파일에 대해 1 개의 비트 토렌트 시드를 만들고 시드 파일의 수정 시간을 파일 자체의 수정 시간과 동일하게 설정할 수 있습니다. 매일 (시간별?) 할 것이기 때문에 "Make"와 같은 것을 사용하여 새 파일 또는 업데이트 된 파일에 대해서만 종자 파일을 만드는 것이 좋습니다.

그런 다음 모든 호스트에서 모든 시드 파일을 중앙 집중식 위치 ( "트래커 디르")로 복사하여 "새로운 경우에만 덮어 쓰기"옵션을 사용합니다. 이를 통해 모든 파일의 모든 최신 사본에 대한 토런트 씨앗 세트가 제공됩니다.

그런 다음 각 호스트는 모든 시드 파일을 다운로드하고 (다시 "최신 설정에 대해 오버 쓸어냅니다") 모두에서 BitTorrent 다운로드를 시작합니다. 새/업데이트 된 모든 파일을 다운로드/로드합니다.

임신과 반복, 매일.

BTW, 당신이 의견에서 말했듯이 "그 자체로 다운로드"는 없을 것입니다. 로컬 호스트에 파일이 이미 존재하는 경우 체크섬이 확인되며 다운로드가 발생하지 않습니다.

Red Hat의 선을 따라 무언가는 어떻습니까? 글로벌 파일 시스템, 전체 구조가 모든 사이트를 통해 각 위치에서 모두 복제되지 않고 여러 장치로 분할되도록합니까?

또는 아마도 Lefthand 네트워크 (면책 조항 - 비용에 대해 전혀 모르고 사용하지 않았습니다).

많은 옵션이 있습니다.

  • 당신은 설정을 시도 할 수 있습니다 복제 된 DB 데이터를 저장합니다.
  • 사용 조합 rsync 또는 LFTP 그리고 맞춤형 스크립트이지만 그것은 당신에게 적합하지 않습니다.
  • 사용 git 최대 압축이있는 저장소 및 일부 스크립트를 사용하여 그들 사이에 동기화
  • 데이터의 양은 다소 크고 중요하기 때문에 전문가 고용에 대해 일부 사용자 정의 개발을 수행하십시오.)

매우 유연한 .... 그것은 매우 멋지다. 대규모 환경에서는 그것을 사용하지 않았지만 3 노드 시스템에서는 완벽하게 작동하는 것처럼 보였다.

직업처럼 들립니다 폴더 셔

당신은 시도 했습니까? detect-renamed rsync에 대한 패치 (http://samba.anu.edu.au/ftp/rsync/dev/patches/detect-renamed.diff)? 직접 시도하지는 않았지만 이름이 바뀌는 것뿐만 아니라 복제 된 파일도 감지할지 궁금합니다. 복제 된 파일을 감지하지 않으면 패치를 수정하여 그렇게 할 수 있다고 생각합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top