데이터 전파란 무엇인가?
데이터 전파(Data Propagation)는 하나 이상의 소스 데이터 웨어하우스에서 전파 규칙(propagation rules)에 따라 다른 로컬 액세스 데이터베이스로 데이터를 배분하는 과정을 의미합니다. 데이터 웨어하우스는 매일 대량의 데이터를 관리해야 하며, 처음에는 적은 양의 정보로 시작하지만 여러 데이터 소스와의 지속적인 공유와 수신을 통해 날마다 그 규모가 커지게 됩니다.
데이터 공유가 활발해질수록 데이터 웨어하우스 관리는 중요한 문제로 대두됩니다. 기업 정보를 더 효과적으로 관리하려면 여러 하위 집합, 정렬 방식, 시간 단위 등으로 데이터베이스를 체계적으로 운영해야 합니다. 또한 이러한 데이터 자원은 끊임없이 최신 상태로 유지되어야 하는데, 업데이트 과정에는 대량의 레코드를 한 시스템에서 다른 시스템으로 이동하고 비즈니스 인텔리전스(BI) 시스템과 주고받는 작업이 포함됩니다.
일반적으로 대량의 데이터 이동은 운영 소프트웨어나 웨어하우스 데이터의 성능과 가용성을 저하시키지 않으면서 짧은 시간 안에 배치(batch) 방식으로 처리됩니다. 다만 변경해야 할 데이터의 양이 많아질수록 절차는 더욱 복잡하고 어려워집니다. 따라서 데이터 웨어하우스 관리자는 대량 정보를 더 빠르게 변환하고, 마지막 웨어하우스 업데이트 이후 변경된 데이터만 식별하여 전송하는 방법을 모색해야 합니다.
데이터 전파를 통한 데이터 공유와 관련된 문제를 해결하기 위해 개발된 대표적인 방법은 다음과 같습니다.
1. 대량 추출(Bulk Extract)
이 방식에서는 복사 관리 도구나 유틸리티를 사용하여 운영용 관계형 데이터베이스의 전체 또는 일부를 추출합니다. 추출된 데이터는 일반적으로 FTP(파일 전송 프로토콜)나 이와 유사한 기법을 통해 대상 데이터베이스로 전송됩니다. 추출된 데이터는 필요에 따라 호스트나 객체 서버에서 사용하는 형식으로 변환할 수도 있습니다.
2. 파일 비교(File Compare)
이 기법은 대량 이동(bulk move) 방식을 발전시킨 것으로, 최근에 추출한 운영 데이터를 이전 버전과 비교하여 증분 변경 데이터(incremental change data) 집합을 생성합니다. 이후 처리 과정은 대량 추출 방식과 동일하지만, 예약된 시점에 증분 변경 사항이 객체 서버에 업데이트로 반영된다는 점이 다릅니다. 이 방법은 데이터 변경량이 많지 않은 소규모 문서나 데이터셋에 특히 적합합니다.
3. 변경 데이터 전파(Change Data Propagation)
이 기법은 소프트웨어 변경 프로세스의 일부로서 파일에 발생한 변경 사항을 캡처하고 기록합니다. 트리거(trigger), 로그 종료(log exit), 로그 후처리(log post-processing), DBMS 확장 등 다양한 기술을 활용할 수 있으며, 캡처된 변경 내역은 증분 변경 파일 형태로 생성됩니다.
소스 트랜잭션이 완료된 후 변경 데이터는 변환되어 대상 데이터베이스에 반영됩니다. 이러한 방식의 데이터 전파는 '근실시간(near real-time)' 또는 '연속 전파(continuous propagation)'라고도 불리며, 소스 시스템과 대상 데이터베이스 간의 동기화를 아주 짧은 시간 간격으로 유지하는 데 활용됩니다.