데이터 지속성이란 무엇이며 왜 중요합니까?

카산드라 및 기타 데이터베이스 지속성에 대한 자세한 내용은 다음을 확인하십시오.

지속성의 의미를 이해하는 것은 다른 데이터 저장소 시스템을 평가하는 데 중요합니다. 대부분의 최신 응용 프로그램에서 데이터 저장소의 중요성을 감안할 때 제대로 정보를 선택하지 않으면 상당한 가동 중지 시간 또는 데이터 손실이 발생할 수 있습니다. 이 게시물에서는 지속성 및 데이터 저장소 디자인 접근 방식에 대해 논의하고 카산드라의 맥락에서 이에 대한 배경을 제공합니다.

지속성은”원인이 제거된 후의 효과의 지속성”이다. 컴퓨터 시스템에 데이터를 저장하는 맥락에서 이것은 데이터가 생성 된 프로세스가 종료 된 후에 남아 있음을 의미합니다. 즉,데이터 저장소가 영구적인 것으로 간주되려면 비휘발성 저장소에 기록해야 합니다.

데이터 저장소에 지속성이 필요한 경우 데이터 저장소가 취할 수있는 네 가지 인간 디자인 접근 방식과 이러한 디자인이 지속성을 제공하는 방법(또는 경우)을 이해해야합니다:

  • 순수한 메모리 내,멤 캐시 또는 스칼라리스와 같은 지속성 없음

  • 오라클 일관성 또는 레디 스와 같은 주기적 스냅 샷이 포함 된 인 메모리

  • 디스크 기반 업데이트 전체 쓰기

  • 모든 기존 데이터베이스(오라클,데이터베이스 등)와 같은 커밋 로그 기반)

메모리 내 접근 방식은 빠른 속도를 달성 할 수 있지만 상대적으로 작은 데이터 세트로 제한 될 수 있습니다. 대부분의 워크로드는 전체 데이터 중 상대적으로 작은”핫”(활성)하위 집합을 가지며,전체 데이터 집합이 활성 부분보다 메모리에 적합해야 하는 시스템은 캐시에는 적합하지만 대부분의 다른 응용 프로그램에는 적합하지 않습니다. 데이터는 메모리에만 있기 때문에 프로세스 종료 후에도 유지되지 않습니다. 따라서 이러한 유형의 데이터 저장소는 영구적인 것으로 간주되지 않습니다.

메모리 내 시스템에 지속성을 추가하는 가장 쉬운 방법은 구성 가능한 간격으로 디스크에 주기적인 스냅샷을 사용하는 것입니다. 따라서 해당 간격의 업데이트 가치를 잃을 수 있습니다.

현재 위치 업데이트 및 커밋 로그 기반 시스템은 비 휘발성 메모리에 즉시 저장되지만 커밋 로그 기반 지속성 만 내구성을 제공합니다.

카산드라는 커밋 로그 기반 지속성 디자인을 구현하지만 동시에 조정 가능한 수준의 내구성을 제공합니다. 이것은 당신이 떨어져 안전과 성능 사이의 권리 무역이 무엇인지 결정 할 수 있습니다. 각 쓰기 작업에 대해 해당 업데이트가 메모리에 버퍼링되거나,단일 시스템에서 디스크에 기록되거나,여러 시스템에서 디스크에 기록되거나,다른 데이터 센터의 여러 시스템에서 디스크에 기록될 때까지 대기하도록 선택할 수 있습니다. 또는,당신은 그들이 심지어 완전히 네트워크에서 역 직렬화되기 전에 즉시 수신을 인정,가능한 한 빨리 쓰기를 허용 할 수 있습니다.

하루가 끝나면 데이터에 적합한 성능/내구성 트레이드 오프가 무엇인지 아는 유일한 사람입니다. 데이터 저장소 기술에 대한 정보에 입각 한 결정을 내리는 것은 조건에 따라 이러한 트레이드 오프를 해결하는 데 중요합니다. 카산드라는 이러한 조정 가능성을 제공하기 때문에 내구성 있고 성능이 뛰어난 데이터 저장소가 필요한 시스템에게는 논리적 인 선택입니다.

답글 남기기

이메일 주소는 공개되지 않습니다.