DVR에서의 데이터베이스 복구방법
상태바
DVR에서의 데이터베이스 복구방법
  • CCTV뉴스
  • 승인 2009.02.23 00:00
  • 댓글 0
이 기사를 공유합니다

출 원 인    엘지전자 주식회사
발 명 자    박 진 모
공개번호    10-2008-0111839
공개일자    2008년 12월 24일


그림 1.
일반적인 다수의 감시용 카메라가 디지털 비디오 레코더에 연결 접속된 실시 예


그림 2.
일반적인 디지털 비디오 레코더에 대한 실시예의 구성


그림 3.
일반적인 디지털 비디오 레코더에 의해 관리되는 데이터베이스에 대한 실시예


그림 4.
본 발명이 적용되는 디지털 비디오 레코더에 의해 관리되는 데이터베이스에 대한 실시예


그림 5.
본 발명에 따른 디지털 비디오 레코더에서의 데이터베이스 복구방법에 대한 동작 흐름도


그림 6.
본 발명에 따른 디지털 비디오 레코더에서 데이터베이스를 복구하는 실시예의 과정


그림 7.
본 발명에 따른 디지털 비디오 레코더에서 데이터베이스를 복구하는 실시예의 과정


발명의 목적


1. 발명이 속하는 기술 및 그 분야의 종래기술

그림 1은 일반적인 다수의 감시용 카메라가 디지털 비디오 레코더에 연결 접속된 실례를 나타낸 것으로, 예를 들어 16개의 카메라들(100~115)은 하나의 DVR(200)에 연결되 사용될 수 있으며, 각각의 카메라에는 고유의 채널 번호(예: CH1~16)가 부여된다. 한편, 그림 2의 DVR(200)에서는 고유의 채널 번호가 부여된 각 카메라로 촬영된 영상을 수신하여 모니터(300) 화면에 표시하게 되는 데, 그림 2에서와 같이 다수의 카메라 영상들(예: 4개)이 모니터 화면에 분할 표시될 수 있다.

또한 DVR(200)에는 그림 3에서와 같이 멀티 디지털 신호 처리부(20), 오에스디 생성부(21), 마이컴(22), 모션 검출부(23), 타이머(24), 코덱(Codec), 그리고 하드디스크(26) 등이 포함되 구성될 수 있으며, 마이컴에서는 멀티 디지털 신호 처리부와 코덱 등을 동작 제어해, 하드디스크(26) 내에 카메라 영상의 비디오 프레임을 기록하는 일련의 녹화 동작을 수행하게 된다.

마이컴에서는 하드디스크에 기록되는 다수의 비디오 프레임들을 그림 4와 같이 헤더 정보(HD: Header)와 함께 하나의 데이터 파일(*.dat)로 기록 관리한다. 그리고 그에 대응되는 인덱스 파일(*.idx)을 생성 기록하게 되는 데, 상기 인덱스 파일에는 각 비디오 프레임의 채널 정보, 녹화 시간, 사이즈, 그리고 옵셋 정보 등이 포함되어 기록된다. 또한, 인덱스 파일을 참조하여 유저 인터페이스(User Interface)의 오에스디 영상을 제공하기 위한 타임 슬라이드 맵(Time Slide Map)을 생성 기록하게 되는 데, 그림 4의 타임 슬라이드 맵에서 각 채널에 대한 날짜별 녹화 시간과, 녹화 모드 정보 등이 포함 기록된다.

한편, 녹화 모드 정보는 예를 들어 비디오 프레임이 모션 검출에 의해 녹화되었는지, 또는 알람 검출에 의해 녹화되었는지, 또는 일반적인 연속 녹화 동작에 의해 녹화되었는지를 나타내는 정보로써 사용자가 영상검색을 위한 메뉴 화면을 요청하게 되면 마이컴에서는 타임 슬라이드 맵을 검색 참조하고, 오에스디 생성부를 동작 제어하여 각 채널에 대한 날짜별 녹화 시간과 녹화 모드를 사용자가 간편하게 선택 지정할 수 있도록 하기 위한 오에스디 영상을 출력해 표시하게 된다.

그리고 마이컴에서는 사용자가 오에스디 영상을 통해 자신이 원하는 특정 채널에 대한 날짜별 녹화 시간과 녹화 모드 등을 선택 지정하면, 상기 타임 슬라이드 맵을 검색 참조하여 해당 인덱스 파일에 접속한 후, 그 인덱스 파일과 연계된 데이터 파일의 비디오 프레임을 재생하는 일련의 재생 동작을 수행하게 된다.

한편, 데이터 파일, 인덱스 파일, 그리고 타임 슬라이드 맵을 상호 연계시켜 하나의 데이터베이스를 기록 관리하는 상태에서 갑작스런 정전, 또는 외부 충격 등으로 인해 시스템이 비정상 종료되어 데이터베이스 복구(Recovery)가 요구되는 경우, 마이컴에서는 하드디스크에 기록된 모든 데이터 파일들을 순차적으로 스캔하면서 한 쌍으로 연계 기록된 인덱스 파일들과의 일치 여부를 확인하게 된다.

그리고 상기 데이터 파일을 기준으로 하여 새로운 인덱스 파일을 생성 복구하게 되는데, 하드디스크에 많은 개수의 데이터 파일과 인덱스 파일이 기록되어 있는 경우, 데이터베이스 복구 동작에 긴 시간이 소요되기 때문에 그 시간 동안은 카메라 영상을 녹화할 수 없음으로 디지털 비디오 레코더의 감시 성능을 크게 저하시키는 문제점이 발생하게 된다.2. 발명이 이루고자 하는 기술적 과제

따라서 이 발명은 위와 같은 문제점을 해결하기 위한 것으로, DVR에서 다수의 인덱스 파일을 통합 관리하기 위한 하나의 인덱스 관리 파일을 추가로 기록 관리함으로써 데이터베이스 복구 시, 하나의 인덱스 관리 파일을 검색 참조하여 에러가 발생한 인덱스 파일을 신속하게 선별할 수 있다. 또한 그 인덱스 파일에 연계된 데이터 파일을 스캔하여, 정상적인 인덱스 파일을 생성 복구함으로써, 데이터베이스 복구에 소요되는 시간을 단축시킬 수 있다. 즉 DVR에서 데이터베이스 복구방법을 제공하는 데 그 목적이 있다고 할 수 있다.

3. 발명의 구성 및 작용

위와 같은 목적을 달성하기 위해 DVR에서 데이터베이스를 복구하는 방법은 DVR 데이터베이스에 기록된 다수의 인덱스 파일을 통합 관리하기 위한 하나의 인덱스 관리 파일을 기록 관리하는 1단계부터 시작된다. 2단계는 DVR의 데이터베이스 복구 시 하나의 인덱스 관리 파일을 검색 참조하여 에러가 발생한 인덱스 파일을 선별하는 것이다. 선별된 인덱스 파일에 연계 기록된 데이터 파일을 스캔하여, 정상적인 인덱스 파일을 생성 복구하는 것이 3단계로, 이러한 1~3단계를 포함하여 이루어지는 것이 이 발명의 특징이다.

또한, 3단계 이후 복구된 인덱스 파일을 참조하여 유저 인터페이스를 위해 기록 관리되는 타임 슬라이드 맵을 복구 갱신하는 단계를 더 포함하여 이루어지는 것을 특징으로 한다.

한편 3단계 이후 복구된 인덱스 파일을 참조하여 하나의 인덱스 관리 파일을 갱신하는 단계를 더 포함하여 이루어지기도 한다. 데이터 파일에는 헤더 정보와 다수의 비디오 프레임들이 기록되고, 인덱스 파일에는 각 비디오 프레임의 채널, 녹화 시간, 사이즈, 옵셋 정보 중 어느 하나 이상이 기록되고, 타임 슬라이드 맵에는 각 채널에 대한 날짜별 녹화 시간, 녹화 모드 중 어느 하나 이상이 기록된다.

인덱스 관리 파일에는 한 쌍의 데이터 파일과 인덱스 파일에 접속하기 위한 정보가 하나의 엔트리로 구분되어 기록되며, 엔트리의 에러 여부를 검출하기 위한 부가 정보가 기록된다. 하나의 엔트리에는 해당 데이터 파일에 기록된 첫 번째 비디오 프레임의 녹화 시간과, 마지막 비디오 프레임의 녹화 시간, 그리고 해당 인덱스 파일을 엑세스하기 위한 경로 정보가 기록되는 것이 특징이다.

또한, 부가 정보는 각 엔트리의 에러 여부를 검출하기 위한 체크 섬 또는 체크 비트인 것이 특징이고, 3단계에서 선별된 인덱스 파일에 연계 기록된 데이터 파일을 스캔하여, 데이터 파일의 헤더 정보와 실제로 기록된 비디오 프레임이 일치하는 경우 그에 대응되는 새로운 인덱스 파일을 생성 복구하는 것이 특징이다.

이 발명에 따른 DVR에서의 데이터베이스 복구방법에 대한 바람직한 실 예에 대해서는 첨부된 그림을 참조하여 상세히 설명해 주고 있다.

우선, 데이터베이스 복구방법은 그림 2를 참조로 설명한 바와 같이 구성되는 DVR(200)에 적용될 수 있는 것으로, 이 발명이 적용되는 DVR의 마이컴에서는 카메라 영상을 녹화하는 경우 전술한 바와 같이 멀티 디지털 신호 처리부와 코덱을 동작 제어한다. 헤더 정보와 다수의 비디오 프레임들을 데이터 파일(*.dat)로 기록 관리하고 각 비디오 프레임의 채널의 녹화 시간, 사이즈, 옵셋 정보 등을 인덱스 파일(*.idx)로 연계 기록하게 된다.

또한, 인덱스 파일을 참조하여, 각 채널에 대한 날짜별 녹화 시간, 녹화 모드(예: 모션, 알람, 연속) 정보 등을 유저 인터페이스의 오에스디 영상을 제공하기 위한 타임 슬라이드 맵으로 기록 관리하되, 마이컴에서는 그림 4에서와 같이 다수의 인덱스 파일들을 통합 관리하기 위한 상위 레이어(Upper Layer)의 인덱스 관리 파일을 추가 기록하여 관리하게 된다.

인덱스 관리 파일은 파일 시스템 헤더와 다수의 엔트리들로 구성되는데, 파일 시스템 헤더에는 인덱스 관리 파일의 기록 사이즈와, 엔트리 개수, 그리고 첫 번째 엔트리 정보와 마지막 엔트리 정보 등이 포함 기록될 수 있다.

하나의 엔트리는 그림 4에서와 같이 한 쌍의 인덱스 파일과 데이터 파일에 일대일로 대응되는 것으로, 각각의 엔트리에는 한 쌍의 데이터 파일과 인덱스 파일을 엑세스하기 위한 정보와 엔트리의 에러 여부를 검출하기 위한 부가 정보가 부가 기록된다. 예를 들어, 각각의 엔트리에는 해당 데이터 파일에 기록된 첫 번째 비디오 프레임의 녹화 시간(FT: First video frame record Time)과 마지막 비디오 프레임의 녹화 시간(LT: Last video frame record Time), 그리고 해당 인덱스 파일을 엑세스하기 위해 데이터베이스 상에서의 디렉토리 및 파일명을 나타내는 경로 정보가 기록되며, 그 부가 정보로써 각 엔트리의 에러 여부를 검출하기 위한 체크 섬(CS: Check Sum) 또는 체크 비트(Check Bit)가 각각 부가적으로 기록된다.

마이컴에서는 데이터 파일, 인덱스 파일, 타임 슬라이드 맵, 그리고 다수의 인덱스 파일들을 통합 관리하기 위한 하나의 인덱스 관리 파일이, 상호 연계되어 데이터베이스로 관리되는 상태에서 갑작스런 정전 또는 외부 충격 등으로 인해 시스템이 비정상 종료되어 데이터베이스 복구가 요구되면, 상기 인덱스 관리 파일을 검색 참조하여 에러가 발생한 인덱스 파일을 신속하게 선별한 후, 그 인덱스 파일에 연계된 데이터 파일을 스캔하여 정상적인 인덱스 파일을 생성 복구함으로써 데이터베이스 복구에 소요되는 시간을 효율적으로 단축하게 되는 데, 이에 대해 상세히 설명하면 다음과 같다.

그림 5는 이 발명에 따른 DVR에서의 데이터베이스 복구방법에 대한 동작 흐름도를 나타낸 것으로 마이컴에서는 멀티 디지털 신호 처리부와 코덱을 동작 제어하여, 카메라 영상의 비디오 프레임을 하드디스크에 녹화하는 경우(S10) 헤더 정보와 다수의 비디오 프레임들을 데이터 파일(*.dat)로 기록 관리하고, 데이터 파일에 대응되는 인덱스 파일(*.idx)을 생성 기록함과 아울러 인덱스 파일을 검색 참조하여 타임 슬라이드 맵을 갱신 관리하는 일련의 데이터베이스 관리 동작을 수행하게 된다(S11).

이후 마이컴에서는 상기 인덱스 파일 및 데이터 파일을 검색 참조하여, 다수의 인덱스 파일들을 통합 관리하기 위한 하나의 인덱스 관리 파일을 갱신 기록하게 되며(S12), 이후 갑작스런 정전 또는 외부 충격 등으로 인해 데이터베이스 복구가 필요하게 되면 녹화 동작을 중지한 상태에서 데이터베이스 복구 모드를 설정하게 된다.

그리고 그림 1과 같이 일련의 과정을 거쳐, 데이터베이스 복구 모드가 설정된 경우(S13), 마이컴에서는 인덱스 관리 파일에 기록된 각 엔트리의 부가 정보로서 기록되어 있는 체크 섬(CS)을 검출 확인하여, 에러가 발생된 엔트리를 선별하게 된다(S14).

예를 들어 그림 6에서와 같이 제2 데이터 파일은 정상 기록되는데 제2 인덱스 파일(Index File 2)에 에러가 발생했고, 또 제3 데이터 파일(Data File 3)과 제3 인덱스 파일(Index File 3)에 모두 에러가 발생한 경우, 인덱스 관리 파일에 기록된 제2 엔트리의 체크 섬(CS)과 제3 엔트리의 체크 섬(CS)이 각각 에러값으로 검출된다.

그리고 마이컴에서는 제2 엔트리에 기록된 시간 정보(FT & LT)와 경로 정보(Path)를 참조하여 제2 인덱스 파일에 연계 기록된 제2 데이터 파일을 신속하게 선별 및 엑세스한 후 제2 데이터 파일의 헤더 정보를 검색하게 된다(S15).

또한, 검색된 헤더 정보와 실제로 기록된 비디오 프레임이 일치하는 경우 그에 대응되는 새로운 제2 인덱스 파일, 예를 들어 각 비디오 프레임의 채널, 녹화 시간, 사이즈, 옵셋 정보 등이 정상적으로 포함되는 새로운 제2 인덱스 파일을 생성 복구함과 아울러 복구된 제2 인덱스 파일을 참조하여 타임 슬라이드 맵을 갱신하게 된다(S16).

그리고 마이컴에서는 그림 7에 나타낸 바와 같이, 정상 복구된 제2 인덱스 파일을 참조하여 그에 대응되는 제2 엔트리의 시간 정보와 경로 정보 그리고 체크 섬을 갱신 기록하게 된다(S17).

마이컴에서는 그림 6에서와 같이, 제3 엔트리에 기록된 시간 정보(FT & LT)와 경로 정보(Path)를 참조하여, 제3 인덱스 파일에 연계 기록된 제3 데이터 파일을 신속하게 선별 및 엑세스한 후, 제3 데이터 파일의 헤더 정보를 검색하게 된다.

그리고 검색된 헤더 정보와, 실제로 기록된 비디오 프레임이 일치하는 지를 비교하게 되는 데, 예를 들어 서로 일치하지 않으면, 데이터 파일 복구가 불가능하다고 판단하고 그림 7에서처럼 제3 데이터 파일과 제3 인덱스 파일을 삭제하며, 또한 타임 슬라이드 맵 내에서 관리되는 관련 정보와, 인덱스 관리 파일 내에서 관리되는 제3 엔트리를 삭제하는 일련의 갱신 동작을 수행하게 된다.

마이컴에서는, 데이터베이스 복구 동작이 완료되면(S18), 일련의 갱신 동작을 통해 복구된 데이터베이스를 이용하여, 사용자가 원하는 임의의 녹화 또는 재생 동작을 수행하게 되므로, 데이터베이스 복구에 소요되는 시간을 효율적으로 단축시킬 수 있게 된다. 참고로, 인덱스 관리 파일 내의 각 엔트리에는 해당 데이터 파일과 인덱스 파일에 관련된 보다 다양한 여러 정보들이 추가적으로 기록 관리될 수 있다.

이상, 전술한 이번 발명의 바람직한 실 예는 예시의 목적을 위해 개시된 것으로 관련 엔지니어라면 첨부된 특허 청구범위에 개시된 이 발명의 기술적 사상과 그 기술적 범위 내에서, 또 다른 다양한 실 예들을 개량, 변경, 대체 또는 부가 등이 가능할 것이다.
도면의 주요부분에 대한 부호의 설명100~115 : 카메라
200 : 디지털 비디오 레코더
300 : 모니터
20 : 멀티 디지털 신호 처리부
21 : 오에스디 생성부
22 : 마이컴
23 : 모션 검출부
24 : 타이머
25 : 코덱(Codec)
26 : 하드디스크

댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
0 / 400
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.