KR20170116354A - 인-메모리 db 환경에서 데이터 접근 빈도에 따른 가변 복제 방법 - Google Patents

인-메모리 db 환경에서 데이터 접근 빈도에 따른 가변 복제 방법 Download PDF

Info

Publication number
KR20170116354A
KR20170116354A KR1020160043966A KR20160043966A KR20170116354A KR 20170116354 A KR20170116354 A KR 20170116354A KR 1020160043966 A KR1020160043966 A KR 1020160043966A KR 20160043966 A KR20160043966 A KR 20160043966A KR 20170116354 A KR20170116354 A KR 20170116354A
Authority
KR
South Korea
Prior art keywords
file
memory
files
duplicate
restoration
Prior art date
Application number
KR1020160043966A
Other languages
English (en)
Inventor
안재훈
김영환
Original Assignee
전자부품연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 전자부품연구원 filed Critical 전자부품연구원
Priority to KR1020160043966A priority Critical patent/KR20170116354A/ko
Publication of KR20170116354A publication Critical patent/KR20170116354A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1805Append-only file systems, e.g. using logs or journals to store data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/184Distributed file systems implemented as replicated file system
    • G06F16/1844Management specifically adapted to replicated file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1865Transactional file systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

In-Memory B 환경에서 데이터 접근 빈도에 따른 가변 복제 방법이 제공된다. 본 발명의 실시예에 따른 파일 복제 방법은, In-Memory DB를 구축하고, In-Memory DB를 복원하데 사용되는 복원 파일을 생성하여 저장하되, 복원 파일의 특성을 기초로 복원 파일에 대한 복제 파일의 개수를 결정한다. 이에 의해, 디스크 스토리지 저장 공간을 효율적으로 활용할 수 있게 된다.

Description

인-메모리 DB 환경에서 데이터 접근 빈도에 따른 가변 복제 방법{Variable Replication Method according to the Data Access Frequency in In-Memory DB}
본 발명은 DB 관리 기술에 관한 것으로, 더욱 상세하게는 In-Memory DB 환경에서 데이터를 복제하는 방법 및 이를 적용한 DBMS(DataBase Management System)에 관한 것이다.
In-Memory DB는 메모리에 DB를 구축/운영하는 메모리 기반의 DB로, 기존 디스크 기반의 DB에 비해 빠른 응답 속도를 보장할 수 있다. 하지만 휘발성 메모리를 사용하는 관계로, 갑작스런 장애 발생 시 DB 복원을 통한 신뢰성 확보 수단이 필요하다.
이를 위해, In-Memory DB에서는 일정 간격 마다 DB 데이터 복원에 사용할 복원 파일(중간 저장 파일)을 생성하여 디스크에 저장하고 있다. 복원 파일은 매우 중요한 파일이기 때문에, 복제본을 생성하여 분산 저장하고 있다.
하지만, DB를 운용함에 있어 시간이 지남에 따라 다수 개의 복원 파일이 생성되며, 이에 대한 복제본의 수도 증가하게 된다. 따라서 복원 파일 유지를 위한 고용량의 스토리지 용량을 필요로 하여, 관리와 비용의 증가로 이어진다.
또한, In-Memory DB는 사용자 애플리케이션의 데이터 변경 요청 및 대규모의 트랜잭션(Transaction) 발생 시 메모리에 저장되어 있는 DB 테이블의 내용이 파일로 저장되기 때문에, 대규모 트랜잭션에 해당하는 복원 파일은 In-Memory DB의 모든 내용을 기록하게 된다.
이와 같은 파일의 크기는 In-Memory DB의 운용에 따라 달라지겠지만, 5G 파일에 대해 복제본이 3개 이상 생성될 경우를 가정하면 총 20GB의 스토리지 용량을 필요로 하게 된다.
이와 같은 복원 파일의 크기와 스토리지 용량의 한계에 따라 무제한적 복제 및 보관이 사실상 불가능하다. 따라서 복원 파일의 저장에 있어 효율적인 스토리지 용량을 사용에 대한 방안의 모색이 요청된다.
본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은, In-Memory 데이터베이스 시스템 환경에서 복원 파일에 대한 접근 빈도에 따라 복제 파일의 개수를 결정하는 방법 및 이를 적용한 DBMS를 제공함에 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른, 파일 복제 방법은, In-Memory DB를 구축하는 단계; 상기 In-Memory DB를 복원하데 사용되는 복원 파일을 생성하여 저장하는 단계; 상기 복원 파일의 특성을 기초로, 상기 복원 파일에 대한 복제 파일의 개수를 결정하는 단계; 및 결정된 개수의 복제 파일을 생성하여 저장하는 단계;를 포함한다.
그리고, 상기 복원 파일의 특성은, 상기 복원 파일에 대한 접근 빈도일 수 있다.
또한, 상기 결정 단계는,
상기 복원 파일이 로그 파일인 경우, 상기 복제 파일의 개수를 a개로 결정할 수 있다.
그리고, 상기 결정 단계는, 상기 복원 파일이 체크포인트(Chekpoint) 파일인 경우, 상기 복제 파일의 개수를 a개 보다 작은 b개로 결정할 수 있다.
또한, 상기 결정 단계는, 상기 복원 파일이 트랜잭션(Transaction) 파일인 경우, 상기 복제 파일의 개수를 b개 보다 작은 c개로 결정할 수 있다.
그리고, 본 발명의 일 실시예에 따른 파일 복제 방법은, 상기 복제 파일의 복원을 위한 패리티 비트 파일을 생성하여 저장하는 단계;를 더 포함할 수 있다.
또한, 상기 복제 파일과 상기 패리티 비트 파일은, 각기 다른 시스템에 저장될 수 있다.
한편, 본 발명의 다른 실시예에 따른, DB 시스템은, In-Memory DB가 구축되는 메모리; 상기 In-Memory DB를 복원하데 사용되는 복원 파일이 저장되는 디스크; 및 상기 복원 파일의 특성을 기초로 상기 복원 파일에 대한 복제 파일의 개수를 결정하고, 결정된 개수의 복제 파일을 생성하여 상기 디스크에 저장하는 프로세서;를 포함한다.
이상 설명한 바와 같이, 본 발명의 실시예들에 따르면, In-Memory 데이터베이스 시스템 환경에서 복원 파일에 대한 접근 빈도에 따라 복제 파일의 개수를 결정하여, 디스크 스토리지 저장 공간을 효율적으로 활용할 수 있게 된다.
또한, 본 발명의 실시예들에 따르면, 복제 파일 개수 감소에 의한 위험성을 패리티 비트 파일 생성을 통해 보완할 수 있다.
아울러, 본 발명의 실시예들에 따르면, In-Memory DB 구조 변경 없이, 시스템 레벨에서 간단하게 가변 복제 기법을 적용할 수 있다.
도 1은 본 발명이 적용 가능한 In-Memory DB 환경을 도시한 도면,
도 2는 본 발명의 일 실시예에 따른 In-Memory DB 환경에서 복원 파일 복제 방법의 설명에 제공되는 도면,
도 3은 본 발명의 다른 실시예에 따른 DBMS의 블럭도, 그리고,
도 4는 본 발명의 또 다른 실시예에 따른 In-Memory DB에 대한 복원 파일의 가변 복제 방법의 설명에 제공되는 흐름도이다.
이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
도 1은 본 발명이 적용 가능한 In-Memory DB 환경을 도시한 도면이다. 도 1에 도시된 바와 같이, In-Memory DB는 메모리에 DB를 구축/운용하며, 사용자 애플리케이션들(클라이언트들)의 요청을 처리한다.
또한, In-Memory DB의 복원을 위해 필요한 복원 파일을 HDD(Hard Disk Drive)에 저장하여 보존한다. 복원 파일은 복제되어 다수의 HDD들에 분산&중복 저장된다.
도 2는 본 발명의 일 실시예에 따른 In-Memory DB 환경에서 복원 파일 복제 방법의 설명에 제공되는 도면이다.
도 2에 도시된 바와 같이, 본 발명의 실시예에 따른 In-Memory DB 환경에서 복원 파일의 복제 개수는 데이터 접근 빈도(Data Access Frequency)를 기반으로 한다.
구체적으로, 데이터 접근 빈도가 높은 복원 파일에 대해 상대적으로 많은 개수의 복제 파일을 생성하여 분산&중복 저장하고, 데이터 접근 빈도가 낮은 복원 파일에 대해 상대적으로 적은 개수의 복제 파일을 생성하여 저장한다.
이를 테면, 도 2의 ①에 도시된 바와 같이, 복원 파일들 중 접근 빈도가 높은 로그 파일에 대해서는, 3개의 복제 파일을 생성하여 각기 다른 HDD들에 분산&중복 저장한다.
로그 파일은 In-Memory DB 운용 상황에 따라 자주 DB 상태를 저장하므로, 접근 빈도가 높다.
또한, 도 2의 ②에 도시된 바와 같이, 복원 파일들 중 접근 빈도가 중간 정도인 체크포인트(Chekpoint) 파일에 대해서는, 2개의 복제 파일을 생성하여 각기 다른 HDD들에 분산&중복 저장한다.
체크포인트 파일은 In-Memory DB에서 적은 개수의 테이블 내용이 변경되었을 때 로그 파일과 더불어 DB 상태를 저장하는 파일로 접근 빈도가 로그 파일 보다는 낮다.
그리고, 도 2의 ③에 도시된 바와 같이, 복원 파일들 중 접근 빈도가 낮은 트랜잭션(Transaction) 파일에 대해서는, 1개의 복제 파일을 생성하여 다른 HDD에 저장한다.
트랜잭션 파일은 대규모로 In-Memory DB 내에서 테이블의 내용이 대규모로 변경되었을 경우에 생성하는 파일로, 접근 빈도가 로그 파일이나 체크포인트 파일 보다 낮다.
한편, 3개의 복제 파일이 생성되지 않는 체크포인트 파일과 트랜잭션 파일에 대해서는, 패리티 비트 파일을 생성하여 복제 파일이 저장되는 HDD가 아닌 다른 HDD에 따로 저장한다.
패리티 비트 파일은 복제 파일의 복원을 위해 사용되는 파일로, 복제 파일 보다 용량이 훨씬 적다. 복제 파일의 개수 감소로 인한 위험을 보상하기 위한 구성이다.
도 2에 도시된 복원 파일의 복제 개수를 데이터 접근 빈도에 따라 적응적으로 결정하는 기법에 의해, 스토리지 용량의 효율성이 높아지게 된다. 복원 파일에 대해 무조건적으로 동일한 개수의 복제 파일을 생성하지 않기 때문이다.
또한, 이와 같은 복제 관리 방법은 In-Memory DB의 구조에 대한 변경을 요구하는 것이 아니며, 시스템 레벨에서 가변 복제 기법을 적용하는 것으로 족하므로, 실제 구현이 간단하다.
도 2에 도시된 가변 복제 방법이 적용 가능한 DBMS(DataBase Management System)을 도 3에 도시하였다. 도 3은 본 발명의 다른 실시예에 따른 DBMS의 블럭도이다.
본 발명의 실시예에 따른 DBMS는, 도 3에 도시된 바와 같이, 메모리(110), NIC(120), CPU(130), 및 HDD들(140)을 포함한다.
메모리(110)는 In-Memory DB가 구축/운용되는 휘발성의 저장매체이고, HDD들(140)는 DB 데이터 영구 저장되고 복원 파일과 복제 파일이 저장되는 대용량의 디스크 스토리지이다.
CPU(130)는 메모리(110)에 In-Memory DB를 구축/운용하고 In-Memory DB를 HDD들(140)에 영구 저장한다.
그리고, CPU(130)는 In-Memory DB를 HDD(140)에 옮기기 전에 발생할 수 있는 장애에 대한 대비책으로, In-Memory DB에 대한 복원 파일을 생성하고, 이에 대한 복제 파일을 생성하여 HDD들(140)에 분산하여 중복 저장한다.
또한, 필요시 CPU(130)는 복원 파일을 복원하는데 사용되는 패리티 비트 파일을 생성하여 HDD들(140)에 저장한다.
도 4는 본 발명의 또 다른 실시예에 따른 In-Memory DB에 대한 복원 파일의 가변 복제 방법의 설명에 제공되는 흐름도이다.
도 4에 도시된 바와 같이, 먼저 CPU(130)는 메모리(110)에 In-Memory DB를 구축/운용한다(S210). 이 과정에서, 로그 파일이 생성되면(S220-Y), CPU(130)는 3개의 복제 파일을 더 생성하여 HDD들(140)에 분산&중복 저장한다(S230).
한편, 체크포인트 파일이 생성되면(S240-Y), CPU(130)는 2개의 복제 파일을 더 생성하여 HDD들(140)에 분산&중복 저장하고(S250), 체크포인트 파일에 대한 패리티 파일을 생성하여 다른 HDD(140)에 따로 저장한다(S260).
그리고, 트랜잭션 파일이 생성되면(S270-Y), CPU(130)는 1개의 복제 파일을 더 생성하여 HDD(140)에 분산&중복 저장하고(S280), 트랜잭션 파일에 대한 패리티 파일을 생성하여 다른 HDD(140)에 따로 저장한다(S290).
지금까지, In-Memory DB 환경에서 데이터 접근 빈도에 따른 가변 복제 방법에 대해 바람직한 실시예를 들어 상세히 설명하였다.
위 실시예에서 복제 파일 생성 개수의 기준인 복원 파일에 대한 접근 빈도는 예시적으로 언급한 것이다. 복원 파일에 대한 다른 특성을 기초로 복제 파일의 생성 개수를 결정하는 경우도 본 발명의 기술적 사상이 적용될 수 있음은 물론이다.
한편, 본 실시예에 따른 장치와 방법의 기능을 수행하게 하는 컴퓨터 프로그램을 수록한 컴퓨터로 읽을 수 있는 기록매체에도 본 발명의 기술적 사상이 적용될 수 있음은 물론이다. 또한, 본 발명의 다양한 실시예에 따른 기술적 사상은 컴퓨터로 읽을 수 있는 기록매체에 기록된 컴퓨터로 읽을 수 있는 코드 형태로 구현될 수도 있다. 컴퓨터로 읽을 수 있는 기록매체는 컴퓨터에 의해 읽을 수 있고 데이터를 저장할 수 있는 어떤 데이터 저장 장치이더라도 가능하다. 예를 들어, 컴퓨터로 읽을 수 있는 기록매체는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광디스크, 하드 디스크 드라이브, 등이 될 수 있음은 물론이다. 또한, 컴퓨터로 읽을 수 있는 기록매체에 저장된 컴퓨터로 읽을 수 있는 코드 또는 프로그램은 컴퓨터간에 연결된 네트워크를 통해 전송될 수도 있다.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
110 : 메모리
120 : NIC
130 : CPU
140 : HDD

Claims (8)

  1. In-Memory DB를 구축하는 단계;
    상기 In-Memory DB를 복원하데 사용되는 복원 파일을 생성하여 저장하는 단계;
    상기 복원 파일의 특성을 기초로, 상기 복원 파일에 대한 복제 파일의 개수를 결정하는 단계; 및
    결정된 개수의 복제 파일을 생성하여 저장하는 단계;를 포함하는 것을 특징으로 하는 파일 복제 방법.
  2. 청구항 1에 있어서,
    상기 복원 파일의 특성은,
    상기 복원 파일에 대한 접근 빈도인 것을 특징으로 하는 파일 복제 방법.
  3. 청구항 1에 있어서,
    상기 결정 단계는,
    상기 복원 파일이 로그 파일인 경우, 상기 복제 파일의 개수를 a개로 결정하는 것을 특징으로 하는 파일 복제 방법.
  4. 청구항 3에 있어서,
    상기 결정 단계는,
    상기 복원 파일이 체크포인트(Chekpoint) 파일인 경우, 상기 복제 파일의 개수를 a개 보다 작은 b개로 결정하는 것을 특징으로 하는 파일 복제 방법.
  5. 청구항 4에 있어서,
    상기 결정 단계는,
    상기 복원 파일이 트랜잭션(Transaction) 파일인 경우, 상기 복제 파일의 개수를 b개 보다 작은 c개로 결정하는 것을 특징으로 하는 파일 복제 방법.
  6. 청구항 4 또는 청구항 5에 있어서,
    상기 복제 파일의 복원을 위한 패리티 비트 파일을 생성하여 저장하는 단계;를 더 포함하는 것을 특징으로 하는 파일 복제 방법.
  7. 청구항 6에 있어서,
    상기 복제 파일과 상기 패리티 비트 파일은,
    각기 다른 시스템에 저장되는 것을 특징으로 하는 파일 복제 방법.
  8. In-Memory DB가 구축되는 메모리;
    상기 In-Memory DB를 복원하데 사용되는 복원 파일이 저장되는 디스크; 및
    상기 복원 파일의 특성을 기초로 상기 복원 파일에 대한 복제 파일의 개수를 결정하고, 결정된 개수의 복제 파일을 생성하여 상기 디스크에 저장하는 프로세서;를 포함하는 것을 특징으로 하는 DB 시스템.
KR1020160043966A 2016-04-11 2016-04-11 인-메모리 db 환경에서 데이터 접근 빈도에 따른 가변 복제 방법 KR20170116354A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160043966A KR20170116354A (ko) 2016-04-11 2016-04-11 인-메모리 db 환경에서 데이터 접근 빈도에 따른 가변 복제 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160043966A KR20170116354A (ko) 2016-04-11 2016-04-11 인-메모리 db 환경에서 데이터 접근 빈도에 따른 가변 복제 방법

Publications (1)

Publication Number Publication Date
KR20170116354A true KR20170116354A (ko) 2017-10-19

Family

ID=60298534

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160043966A KR20170116354A (ko) 2016-04-11 2016-04-11 인-메모리 db 환경에서 데이터 접근 빈도에 따른 가변 복제 방법

Country Status (1)

Country Link
KR (1) KR20170116354A (ko)

Similar Documents

Publication Publication Date Title
US11847336B1 (en) Efficient replication using metadata
US11943290B2 (en) Asynchronous distributed de-duplication for replicated content addressable storage clusters
US10545833B1 (en) Block-level deduplication
KR100985169B1 (ko) 분산 저장 시스템에서 파일의 중복을 제거하는 장치 및 방법
CN106662981B (zh) 存储设备、程序和信息处理方法
US9880771B2 (en) Packing deduplicated data into finite-sized containers
US9087011B2 (en) Data selection for movement from a source to a target
US9996421B2 (en) Data storage method, data storage apparatus, and storage device
US20160196320A1 (en) Replication to the cloud
KR102187127B1 (ko) 데이터 연관정보를 이용한 중복제거 방법 및 시스템
Manogar et al. A study on data deduplication techniques for optimized storage
JP2016510458A (ja) ストレージシステム内でのコピーの実行
US11151056B2 (en) Efficient virtualization layer structure for a data storage system
US10331362B1 (en) Adaptive replication for segmentation anchoring type
KR101525453B1 (ko) 데이터 접근빈도를 이용한 raid 시스템의 데이터 복제 방법
US8595454B1 (en) System and method for caching mapping information for off-host backups
KR101652436B1 (ko) 분산파일 시스템에서의 중복 제거 장치 및 방법
US11561720B2 (en) Enabling access to a partially migrated dataset
US9361302B1 (en) Uniform logic replication for DDFS
US9448739B1 (en) Efficient tape backup using deduplicated data
US9690837B1 (en) Techniques for preserving redundant copies of metadata in a data storage system employing de-duplication
KR20170116354A (ko) 인-메모리 db 환경에서 데이터 접근 빈도에 따른 가변 복제 방법
Wang et al. Improving the availability of supercomputer job input data using temporal replication
US20140344538A1 (en) Systems, methods, and computer program products for determining block characteristics in a computer data storage system
US10002053B1 (en) Optimized index usage for data restore