HBase를 学习 --- HBase를 스냅 샷

면책 조항 :이 문서는 블로거 원본입니다은 허용 블로거없이 복제 할 수 없다. https://blog.csdn.net/wjandy0211/article/details/90167539

스냅 샷 기능은 블로그, 나는 스냅 샷을 알아? 친구 잘못 번역 된 경우 약간의 역할을하고자 할 클라우 데라 번역 꽤 쓸모없는 기사입니다 HBase를, 그리고 아파치 HBase 스냅 샷? 제어 원래 소개를 참조하기 바랍니다. 전에, 테이블의 백업 사본 또는 / 내보내기 테이블을 복사하거나 비활성화 만 할 수 있습니다

 

스냅 샷 기능은 블로그, 나는 스냅 샷을 알아? 친구 잘못 번역 된 경우 약간의 역할을하고자 할 클라우 데라 번역 꽤 쓸모없는 기사입니다 HBase를, 그리고 아파치 HBase 스냅 샷? 제어 원래 소개를 참조하기 바랍니다.

전에, 테이블의 백업 사본 또는 만 / 내보내기 테이블, 비활성화 테이블을 복사하거나 HDFS에서 모든 HFILE를 복사 할 수 있습니다. 스캔 테이블을 복사 할 맵리 듀스를 사용하여 복사 / 수출 테이블은이 지역 서버의 성능에 직접적인 영향을 가지고 있지만 비활성화 복사 파일을 직접 액세스 할 수없는 것입니다.

이 대조적에서 스냅 샷 기능의 HBase를 사용하면 관리자가 데이터 테이블을 복사 복사하지 않고 상황을 쉽게하기 위해, 오직 RS에 미치는 영향을 최소화 발생할 수 있습니다. 다른 클러스터로 내보내기 스냅 샷은 몇 가지 여분의 로직을 추가 RS에 직접 작용하지 않습니다.

다음 장면의 몇 가지 구체적인 스냅 샷은 다음과 같습니다 :

  • 사용자 / 응용 프로그램 오류를 복원
    • 알려진 안전한 상태에서 복구 / 복원합니다.
    • 생산 라인에서 선택적으로 이전 병합 스냅 샷을보고.
    • 중요한 업그레이드 또는 수정 전에 스냅 샷을 저장합니다.
  • 검토 및 / 또는보기 보고서를 지정된 시간
    • 월 단위 데이터 수집의 목적.
    • / 시간의 월 / 일 문 모멘트를 실행합니다.
  • 응용 프로그램 테스트
    • 생산 라인에서 스냅 샷 프로그램이나 스키마 유사성 데이터를 변경하는 효과를 테스트하고 폐기한다. 예를 들어, 스냅 샷을 획득하고 사용하는 테이블 후 수술대의 컨텐츠의 스냅 샷을 생성한다.
  • 오프라인 작업
    • 스냅 샷 취득, 다른 클러스터로 연결 및 맵리 듀스 작업으로 분석한다. 작업이 HDFS 수준에서 일어난다 수출 스냅 샷 때문에, 당신은 HBase를 테이블 사본만큼 느린되지 않습니다.

스냅 샷은 무엇인가?

스냅 샷은 실제로 관리자가 이전 상태로 테이블을 복원 할 수있는 그룹의 메타 데이터 정보의 모음입니다. 스냅 샷은 데이터를 복사하지 않는, 파일 이름 만 목록입니다, 복사하지 않습니다. 당신이 테이블 스키마 전에 다시 원래의 데이터로 롤백하고 스냅 샷을 만들 수있는 스냅 샷의 전체 복구.

운영

  • 가져 오기 :이 작업은 지정된 테이블에서 스냅 샷을 시도합니다. 밸런싱 영역에서 동작 할 때, 마이그레이션 등이 실패 할 수 있으며, 분할 또는 병합.
  • 복사 : 지정된 스냅 샷 및 데이터 스키마와이 작업은 새 테이블을 만들 수 있습니다. 이 작업은 원래 테이블 또는 스냅 샷에 영향을주지 않습니다.
  • 복구 :?이 것입니다 스냅 샷시의 상태로 테이블 스키마 및 데이터 롤백. ?
  • 삭제 :이 시스템에서 스냅 샷을 제거하지 다른 복사본의 디스크 공간을 확보하거나 영향을 스냅 샷 것이다.
  • 수출 : 다른 클러스터에 데이터 및 메타 데이터의 조작 스냅 샷 사본. 이 작업은 HDFS에 영향을 미치며, 마스터 또는 지역 서버 통신의 HBase를은 (이러한 작업은 클러스터가 중지 될 수 있습니다)되지 않습니다.

제로 복사 스냅 샷, 복구, 복제

가장 큰 차이점 스냅 샷 및 CopyTable / ExportTable 스냅 샷 데이터 복사를 포함하지 않는, 메타 데이터와 관련된 전용입니다.

HBase를 중요한 설계 번 파일에 기록이 수정되지 않습니다. 이 수정 불가능 문서 만 스냅 샷 파일이 그것에 관련 정보의 현재 사용을 유지하는 것을 의미하며, 압축이 발생하는 경우, 스냅 샷 알림 시스템 HBase를 만 제출하기보다는 삭제합니다.

복제 또는 복원 할 때이 같은 파일이 스냅 샷과 함께 새 테이블을 만들 때 때문에 마찬가지로, 조작은 라인에 그 동일한 문서에 링크 일어난다.

다른 클러스터 및 데이터 파일이 없기 때문에 수출 스냅 샷, 당신은 데이터를 복사해야하는 유일한 작업입니다.

복사 / 내보내기 표 대 수출 스냅 샷

외부 보장 더 좋은 일관성 및 복사 / 내보내기 작업을 제거, 가장 큰 차이점은 수출 스냅 샷 작업이 HDFS 수준에서 수행된다는 점이다. 이것은 많은 스캔 작업이 원인으로 마스터와 HBase와 지역 서버가 아닌 때문에 GC의 불필요한 스냅 샷 수출 데이터 캐시를 작성하지 않습니다 때문에이 작업에 관여되지 않고 있다는 것을 의미한다. 내보내기 네트워크와 HDFS의 디스크 오버 헤드는 데이터 노드 흡수 평가 한 스냅 샷.

HBase를 쉘 : 스냅 샷 操作

스냅 샷 기능을 사용하려면에서 HBase를-site.xml의 확인 hbase.snapshot.enabled 다음과 같이 구성 항목은 사실이다 :

1

4

5

?

???

hbase.snapshot.enabled

??? true

?

? 다음 명령을 사용하여 스냅 샷을 생성 작업이 복사 작업을 제출하지 않았다 :

1

hbase> snapshot ‘tableName’, ‘snapshotName’

시스템이 스냅 샷을 생성 무엇인지 알고, 당신은 사용할 수 있습니다 list_snapshot命令,它会显示snapshot名,源表和创建时间日期。?

1

hbase> list_snapshots

SNAPSHOT               TABLE + CREATION TIME

 TestSnapshot          TestTable (Mon Feb 25 21:13:49 +0000 2013)

와, 스냅 샷을 제거하려면delete_snapshot命令,移除snapshot不会对已经克隆好的表胡总和随后发生的snapshot造成任何影响。

1

hbase> delete_snapshot ‘snapshotName’

?이와, 새 테이블을 생성하기 위해 스냅 샷을 사용하려면clone_snapshot命令。该操作也无任何数据拷贝操作发生。

1

hbase> clone_snapshot ‘snapshotName’, ‘newTableName’

당신과 함께, 복원 또는 현재 스키마와 데이터 테이블을 바꾸려면restore_snapshot命令。

1

hbase> restore_snapshot ‘snapshotName’

와, 다른 클러스터에 스냅 샷을 내보내려면ExportSnapshot工具。导出操作不会对Region server造成额外的负担。因为它工作在HDFS层级,你仅需指定HDFS的位置(其它集群的hbase.rootdir)即可,如下。

1

hbase org.apache.hadoop.hbase.snapshot.ExportSnapshot --overwrite --snapshot 

SnapshotName -mappers 16 -copy-to hdfs:///srv2:8082/hbase -bandwidth 40

전류 제한이 존재

스냅 샷은 당연한 장소의 수에 따라 달라집니다, 여전히 많은 새로운 기능이 완전히 도구에 통합되지 않은 있습니다 :

  • 작업이 지역을 병합 또는 스냅 샷 테이블을 복제하고 발생하면 데이터가 손실 될 수 있습니다.
  • 복제가 수행의 때문에 클러스터 데이터가 동기화되지이 발생할 수있는 테이블을 복원합니다.

개요

현재 스냅 샷 기능과 모든 기본 기능을 포함하지만, 같은 품질 (측정), 웹 UI 통합, 디스크 사용량 최적화로,해야 할 일이 여전히 많은있다.

추천

출처blog.csdn.net/wjandy0211/article/details/90167539