운영 데이터 저장소(ODS)는 여러 소스에서 데이터를 추출하고 처리하기 위해 최종 스토리지 대상으로 전송하기 전에 데이터 처리를 위한 임시 스토리지 위치 역할을 합니다. 데이터는 정형 또는 비정형으로 저장될 수 있지만, 추출하여 최종 데이터 웨어하우스 위치에 맞는 형식으로 변환할 수 있는 방식으로 저장되어야 합니다. ODS 아키텍처는 일반적으로 ETL(추출, 변환 및 로드) 및 ELT(추출, 로드 및 변환) 데이터 파이프라인을 위해 구축됩니다.
ODS란?
운영 데이터 저장소는 운영 보고 및 분석에 사용되는 실시간 또는 거의 실시간에 가까운 데이터를 위한 중앙 저장소입니다. 대규모 데이터 파이프라인에서 ODS는 데이터가 데이터 웨어하우스로 전송되기 전에 데이터 포맷, 중복 제거 및 최종 처리를 위한 스테이징 영역으로 작동합니다. 예를 들어, 대규모 부동산 조직은 고객을 위한 분석을 수행하기 위해 여러 다른 웹사이트에서 데이터를 추출할 수 있습니다. 추출 프로세스 중에 데이터 파이프라인은 추출된 정보를 ODS에 저장하여 자동화된 스크립트가 데이터를 포맷, 구성 및 중복 제거 할 수 있도록 합니다. ETL이 데이터를 처리하면, 부동산 애플리케이션이 쿼리할 수 있는 데이터 웨어하우스로 전송됩니다.
ODS는 정형 및 비정형 데이터에 사용되지만, 관계형 데이터베이스로 작동하는 데이터 파이프라인에 특히 유용합니다. ODS는 파일 또는 스크랩된 웹 페이지에서 비정형 데이터를 저장할 수 있으며, ETL은 이를 사용하여 변환 단계 전에 수집된 데이터를 처리합니다. ODS가 없으면 레코드 포맷에 실패하면 데이터가 손실됩니다. 변환에 실패한 모든 레코드는 ODS에 남아 추가 처리 또는 추가 인간 검토를 수행할 수 있습니다.
ODS의 목적
대기업 및 머신러닝 애플리케이션의 경우, ETL 처리 중에 여러 위치에서 데이터를 가져오는 경우가 많습니다. 데이터 파이프라인은 네트워크 소스의 파일, API 엔드포인트의 데이터 및 웹 애플리케이션에서 스크랩된 데이터를 가져올 수 있습니다. 데이터를 수집하는 데 사용되는 스크립트는 데이터를 처리할 수 있는 ODS로 덤프합니다. ODS의 목적은 데이터 추출 스크립트가 데이터 처리 전에 수집된 정보를 저장할 수 있는 공간을 확보하는 것입니다.
ODS는 실시간 대시보드 및 애플리케이션의 중요한 부분으로, 특히 ODS에서 수집된 데이터가 여러 위치에서 사용되는 경우 더욱 그렇습니다. 예를 들어, ODS에는 ETL 프로세스가 데이터 웨어하우스로 전송하기 전에 포맷하는 수집된 데이터가 포함되어 있으며, 데이터 웨어하우스는 분석을 통해 이를 재무 예측에 사용할 수 있습니다. ODS는 최종 사용자 애플리케이션에 데이터를 제공하기 전에 임시 데이터 수집 서비스라고 생각하십시오.
ODS의 장점
엔터프라이즈 비즈니스는 더 나은 데이터 처리와 더 효율적인 ETL 파이프라인을 위해 ODS가 필요합니다. ETL 스크립트는 데이터를 저장할 수 있는 공간이 있기 때문에, 실시간 애플리케이션은 데이터를 가져와 신속하게 처리, 인공지능 계산 및 머신러닝을 수행할 수 있는 위치도 있습니다. ODS가 없으면 ETL 데이터 파이프라인이 데이터베이스 제약에 맞지 않거나 데이터 웨어하우스에 저장되기 전에 처리할 수 없는 데이터를 삭제할 수 있습니다.
몇 가지 추가 혜택은 다음과 같습니다.
- 다양한 형식과 조직으로 다양한 데이터 소스를 편리하게 수집
- 다양한 소스에서 수집된 모든 기록의 전체 스냅샷으로, 문제를 식별하거나 필요한 경우 데이터를 재처리하는 데 사용할 수 있습니다.
- 분석 및 머신러닝을 위한 비정형 데이터 스토리지 기능
- 클라우드 ODS 시스템은 위치에 관계없이 사용자, 애플리케이션, 관리자 또는 타사 공급업체가 사용할 수 있도록 구성할 수 있습니다.
- 모든 내부 애플리케이션에 대한 데이터를 수집하기 위한 중앙 위치
ODS 구현
ODS는 데이터 파이프라인 및 ETL 처리의 일부이므로 설계 및 데이터 아키텍처에 포함되어야 합니다. 수집된 데이터의 유형은 ODS의 중요한 결정 요소입니다. 모든 비정형 데이터는 NoSQL 데이터베이스가 필요합니다. 관계형 데이터베이스는 테이블 제약 조건에 맞지 않는 데이터를 거부합니다.
데이터베이스 플랫폼을 선택한 후에는 ODS를 온프레미스에서 호스팅할지 클라우드에서 호스팅할지 결정해야 합니다. 온-프레미스 데이터베이스는 대중이 사용할 수 없는 내부 애플리케이션에 더 적합할 수 있지만, ETL 스크립트는 데이터베이스와 내부 데이터 웨어하우스에 도달할 수 있어야 합니다. 클라우드 데이터베이스는 프로덕션 클라우드 애플리케이션 데이터베이스에 연결하도록 구성할 수 있는 퍼블릭 클라우드 애플리케이션에 유용합니다.
실시간 애플리케이션은 속도와 컴퓨팅 성능을 필요로 하기 때문에 데이터베이스 아키텍처가 대량의 데이터를 처리할 수 있는 대역폭, 컴퓨팅 성능, 메모리 및 스토리지 용량을 갖도록 합니다. 필요한 스토리지 용량을 파악하기 위해 데이터 수집에 대한 시운전을 수행하는 것이 타당할 수 있지만, 확장성을 위해 추가 스토리지를 허용하는 것도 잊지 마십시오. 스냅샷은 결국 다른 백업 데이터베이스로 이동되거나 데이터 노후화 후 제거될 수 있으며 더 이상 관련이 없습니다.
ODS vs. 데이터 웨어하우스
데이터 웨어하우스는 새니타이징 및 포맷된 데이터의 최종 목적지입니다. ETL 절차의 ODS는 원시 데이터가 구조화, 중복 제거 및 검증될 때까지 저장되는 곳입니다. 데이터 구성 방식과 저장 위치는 개별 비즈니스 규칙에 따라 다릅니다. 데이터 웨어하우스의 관계형 데이터베이스는 저장하기 전에 포맷해야 하는 엄격한 규칙을 가진 정형 데이터를 요구합니다.
ODS 테이블은 새로운 데이터로 지속적으로 업데이트되며, 실시간 데이터 처리 및 사용자 애플리케이션에 사용할 수 있습니다. 정형 및 비정형 데이터는 ODS 테이블에 저장할 수 있지만, 많은 시스템은 비정형 데이터를 사용하여 데이터 수집의 제약을 줄입니다. 데이터 웨어하우스로 가져오는 동안 제약 및 필터링을 적용할 수 있습니다.
쿼리는 데이터가 훨씬 더 영구적인 데이터 웨어하우스 테이블에서 실행되어야 합니다. 데이터 웨어하우스에서 데이터를 삭제하는 것은 드문 일입니다. 데이터를 아카이브할 수도 있지만, 데이터를 완전히 제거하는 것은 드문 일입니다. ODS 데이터는 훨씬 더 변동성이 높습니다. 중복 데이터는 제거될 수 있으며, 오래된 데이터나 손상된 데이터는 삭제될 수 있습니다.
결론
데이터 웨어하우스를 위해 다양한 소스에서 데이터를 수집하려는 경우, ODS 임시 아키텍처는 비즈니스 규칙이 다른 여러 애플리케이션을 지원하는 데이터 파이프라인에 유용합니다. 데이터를 정형 및 비정형 형식으로 변환하여 머신러닝, 쿼리, 보고, 분석 대시보드 및 데이터 웨어하우스를 사용하는 기타 프런트엔드 애플리케이션을 지원할 수 있습니다.
증가하는 데이터베이스를 지원하기 위해 퓨어스토리지 클라우드 솔루션은 AWS , Azure 및 기타 모든 공급업체가 ODS를 연결할 수 있도록 지원합니다. ETL 절차는 확장 가능한 데이터베이스 서비스에 빠르게 액세스하여 실시간 처리 및 빠른 쿼리를 지원합니다.