오늘날의 분석(Analytics) 요건은 기존 데이터 인프라에 전례 없는 압력을 가하고 있다. 운영 데이터와 저장된 데이터에 대해 실시간 분석을 수행하는 것은 일반적으로 성공이 필수적이지만 구현하기는 항상 쉽지 않다.
예측적 유지보수와 신속한 문제 해결 시간을 가능하게 하기 위해 제트 엔진에서 연속적인 데이터 흐름을 수집하고 분석하고자 하는 항공사를 생각해보자. 각 엔진에는 온도, 속도, 진동 등의 상태를 모니터링하고 사물인터넷(IoT) 플랫폼에 지속적으로 정보를 전송하는 수백 개의 센서가 있다.
IoT 플랫폼이 데이터를 수집, 처리 및 분석한 후 데이터 레이크(운영 데이터 저장소라고도 함)에 이 데이터가 저장되며, 가장 최근의 데이터만 운영 데이터베이스에 보존된다.
이제 실시간 데이터의 비정상적인 판독 값이 특정 엔진에 대한 경고를 촉발할 때마다 항공사는 실시간 운영 데이터와 해당 엔진의 저장된 과거 데이터에 대해 실시간 분석를 실행해야 한다. 그러나 항공사는 현재의 인프라를 사용해 실시간 분석을 수행하는 것이 불가능하다는 것을 알게 될 수도 있다.
오늘날 빅데이터 이니셔티브를 개발하는 회사들은 일반적으로 데이터 과학자가 다양한 분석을 위해 데이터에 액세스할 수 있는 데이터 레이크에 운영 데이터 복사본을 저장하는데 하둡을 사용한다.
들어오는 운영 데이터와 데이터 레이크에 저장된 데이터의 하위 집합에 대한 실시간 분석를 사용 사례에서 실행해야 하는 경우, 기존의 인프라가 걸림돌이 된다. 데이터 레이크에 저장된 데이터에 액세스하는 것은 물론 결합된 데이터 레이크와 운영 데이터에 대한 연합 쿼리를 실행하는 것도 태생적으로 지연된다.
인메모리 컴퓨팅 솔루션은 널리 사용되는 데이터 플랫폼과의 실시간 성능, 대규모 확장성 및 빌트인 통합을 제공해 데이터 레이크와 운영 데이터 전반에 걸친 실시간 분석의 문제를 해결한다. 이런 기능들은 데이터 레이크와 운영 데이터 세트 전반에서 실시간 연합 쿼리를 실행할 수 있는 기능을 통해 하이브리드 트랜잭션/분석 처리(Hybrid Transactional/Analytical Processing, HTAP)를 구현할 수 있게 해준다.
인메모리 컴퓨팅 플랫폼 성능
인메모리 컴퓨팅 플랫폼은 운영 데이터의 수집, 처리 및 분석을 가능하게 하고, 다음 중 일부 또는 전부를 위한 실시간 성능 및 페타바이트 확장성을 함께 제공한다.
- 인메모리 데이터 그리드 및 인메모리 데이터베이스 인메모리 데이터 그리드와 인메모리 데이터베이스는 서버 클러스터의 사용 가능한 메모리와 컴퓨팅을 풀링해 데이터를 메모리에서 처리할 수 있도록 하고 처리 전에 디스크에서 데이터를 검색하기 위한 지연을 제거한다. 인 메모리 데이터 그리드는 기존 데이터베이스 위에 배치되어 기본 데이터베이스를 동기화하며, 인메모리 데이터베이스는 백업 및 복구 목적으로만 주기적으로 디스크에 데이터를 쓰기 때문에 메모리에 전체 데이터 세트를 유지한다. 인메모리 데이터 그리드 및 인메모리 데이터베이스는 온프레미스, 퍼블릭 또는 프라이빗 클라우드 또는 하이브리드 환경에 구축 가능하다.
- 데이터 프로세싱 스트리밍하기 인메모리 컴퓨팅 플랫폼은 아파치 카프카와 같은 인기 스트리밍 플랫폼에서 실시간 성능으로 대용량 데이터 스트림을 수집, 처리 및 분석할 수 있다.
- 머신러닝 및 딥러닝 머신러닝 라이브러리를 포함하는 인메모리 컴퓨팅 플랫폼은 운영 데이터를 사용해 머신러닝 모델을 실시간으로 훈련할 수 있다. 텐서플로우와 같은 딥러닝 플랫폼과 기본적으로 통합된 인메모리 컴퓨팅 플랫폼은 이들 딥러닝 훈련 플랫폼에 데이터를 준비하고 전송하는 비용과 복잡성을 크게 줄일 수 있다.
- 통합 쿼리 일부 인메모리 컴퓨팅 플랫폼은 아파치 카프카 및 아파치 스파크와 같은 인기 스트리밍 데이터 플랫폼과의 빌트인 통합 기능을 활용해 데이터 레이크와 운영 데이터 세트에 걸친 연합 쿼리를 가능하게 한다. 아파치 카프카는 수신 데이터의 실시간 처리를 위한 데이터를 제공하는 실시간 데이터 파이프라인과 스트리밍 앱 구축에 사용된다. 아파치 스파크는 하둡 기반 데이터 레이크와 운영 데이터베이스에서 얻은 데이터 전반에 통합 쿼리를 실행하는 등 대규모 데이터 처리를 수행할 수 있는 통합 분석 엔진이다.
- HTAP 혹은 HOAP(Hybrid Operational/Analytical Processing) HTAP, HOAP 또는 트랜스리틱스(Translytics)는 기업들이 데이터를 전용 트랜잭션 데이터베이스에서 별도의 전용 분석 데이터베이스로 이동하는 데 필요한 값비싸고 느린 추출, 변환, 로드(ETL) 프로세스를 제거해 동시 트랜잭션 및 분석 프로세스를 수행할 수 있는 단일 데이터 세트를 유지할 수 있게 해준다.
카프카에서 스파크로, 그리고 다시 실시간 통찰력
아파치 카프카, 스파크 및 하둡과 통합된 인메모리 컴퓨팅 플랫폼을 통해 앞서 예시로 설명했던 항공사는 특정 엔진의 라이브 운영 데이터와 과거 데이터 전반에 걸쳐 실시간 분석을 실행할 수 있다.
아파치 카프카는 실시간 스트리밍 데이터를 메모리 컴퓨팅 플랫폼에 공급한다. 인메모리 컴퓨팅 플랫폼은 메모리에서 운영 데이터 및 사용 데이터를 유지하며 이러한 데이터 세트에 대한 실시간 쿼리를 실행한다. 스파크는 데이터 호수에서 과거 데이터를 검색하고 메모리 내 컴퓨팅 플랫폼에서 웜 운영 데이터를 검색하여 데이터 사일로 전체에 대한 쿼리를 실행해 더 깊은 통찰력을 제공한다. 이 구조를 통해 항공사는 비정상적인 읽기의 원인에 대한 즉각적인 통찰력을 얻는다.
현대 데이터 인프라에서 가장 큰 이점은 예측 유지 보수와 보다 신속한 문제 해결 시간을 꼽을 수 있다. 이는 고객 만족도 증가, 자산 활용률 개선 및 ROI 증가로 이어진다. 인메모리 컴퓨팅 플랫폼을 사용해 운영 데이터와 데이터 레이크의 하위 데이터의 일부에 대한 실시간 분석을 실행함으로써 이런 서비스와 기타 새로운 실시간 IoT 서비스를 실현할 수 있다. editor@itworld.co.kr
* Nikita Ivanov는 그리드게인 시스템즈(GridGain Systems)의 공동 설립자이자 CTO로, 고급 및 분산된 인메모리 데이터 처리 기술의 개발을 주도해 왔다. 어뎁텍(Adaptec), 비자(Visa), BEA 시스템즈 등의 기업에서도 20년 이상 종사하면서 소프트웨어 애플리케이션 개발, HPC 및 미들웨어 플랫폼 구축과 관련한 경력을 보유하고 있다.