Data Driven Enterprise가 되기 위한 방안, 데이터옵스 도입 [2부] - 프로세스와 조직
상태바
Data Driven Enterprise가 되기 위한 방안, 데이터옵스 도입 [2부] - 프로세스와 조직
  • 조형진 이사
  • 승인 2020.01.02 01:57
  • 조회수 3232
  • 댓글 0
이 콘텐츠를 공유합니다

데이터옵스 라이프사이클

데이터 파이프라인은 다양한 소스에서 데이터를 추출하고, 준비 및 분석 단계를 거쳐 보고서 또는 시각화 형태로 종료되는 일련의 분석 프로젝트 과정상에서의 데이터 흐름을 의미한다.

데이터옵스 라이프사이클은 교차되는 2개의 데이터 파이프라인으로 구성되어 있다.

가치 파이프라인은 원시 데이터 소스를 입력하여 일련의 오케스트레이션 단계를 거쳐 데이터 소비자(또는 고객)에게 “가치”를 창출하는 분석 인사이트를 제공한다. 데이터옵스는 오케스트레이션을 자동화하고, 통계적 프로세스 제어(SPC)를 사용하여 가치 파이프라인을 통해 흐르는 데이터의 품질을 모니터링한다.

혁신 파이프라인은 새로운 분석 아이디어가 존재할 경우, 새로운 기능을 개발하여 가치 파이프라인에 도입되는 프로세스이다. 

투이톡_데이터옵스_1.jpg
[그림 1] 데이터옵스 라이프사이클 / 출처: https://www.datakitchen.io

 

개발 및 배포 프로세스

데이터옵스는 데브옵스 개발 모델을 기반으로 한다. 데브옵스 프로세스는 소프트웨어 개발 프로젝트의 공통적인 단계인 개발, 빌드, 테스트, 배포, 실행 등이 포함된다.

데이터옵스 프로세스는 데브옵스의 CI(Continuous Integration), CD(Continuous Deployment) 개념을 도입하여 데이터 통합, 테스트, 배포를 자동화한다. 여기에서 CI는 개발 환경에서 지속적으로 새로운 코드를 빌드, 통합, 테스트하는 방식이다. 빌드 및 테스트는 자동화되어 신속하고 반복적으로 수행할 수 있다. CD는 소프트웨어 배포 또는 제공에 대한 접근 방식이다.

응용 프로그램이 모든 테스트를 통과하면 해당 프로그램을 프로덕션에 배포한다. 자동화 된 CI/CD를 통해 하루에도 여러 번 소프트웨어 업데이트가 가능하다.

투이톡_데이터옵스_2.jpg
[그림 2] 데브옵스와 데이터옵스 프로세스 비교

데이터옵스 프로세스는 데브옵스 프로세스와 비교하여 3가지의 특징을 살펴 볼 수 있다.

▶ 샌드박스 관리

샌드박스는 다른 팀원에서 영향을 주시 않으면서 새로운 응용 프로그램의 기능을 개발하고 테스트 할 수 있는 별도로 격리된 개발 환경이다. 소프트웨어 개발에서 샌드박스 생성은 일반적으로 간단하다.

하지만 데이터 분석의 샌드박스는 도구 및 데이터 관점에서 그 복잡성이 높다. 데이터팀의 경우 소프트웨어 개발팀에 비해 더 많은 도구를 사용하는 경향이 있다. 데이터 엔지니어링, 데이터 사이언스, BI, 데이터 시각화, 거버너스를 위한 수많은 도구, 언어와 공급업체가 존재한다. 
소프트웨어 개발팀의 특징처럼 중앙집중화가 이루어지지 않으면 데이터 팀의 경우 전사적으로 흩어져있는 다양한 도구 및 데이터로 인해 자연스럽게 분산되는 경향이 있다. 따라서 데이터옵스에서는 복잡성이 높은 샌드박스 관리가 중요한 특징 중의 하나이다.

 

오케스트레이션

오케스트레이션은 데이터옵스 프로세스에서 두 번 발생한다. 첫 번째 앞쪽의 오케스트레이션은 “테스트”, ”배포” 프로세스 이전에 발생하는 것으로 혁신 파이프라인에서 프로덕션에 배포하기 전 새로운 분석을 테스트하고 확인하는데 사용된다. 이때 데이터를 액세스, 변환, 모델링, 시각화 및 보고하는 수많은 도구를 제어한다.

뒤쪽에 있는 부분은 가치 파이프라인을 오케스트레이션한다. 파이프라인을 관통하는 데이터를 통계적 프로세스 통제를 통해 모니터링한다.

 

테스트

데이터옵스의 테스트는 가치 및 혁신 파이프라인에서 모두 수행하며, 데이터와 코드가 테스트 대상이 된다. 가치 파이프라인상에서는 데이터 값을 모니터링하여 이상징후를 포착하거나 통계적인 임계값을 설정하고, 이를 초과하는 경우 Alert를 제공한다.

혁신 파이프라인상에서는 새로운 분석을 배포하기전에 테스트를 통해 검증한다. 이때 테스트는 데이터가 아닌 코드를 대상으로 한다. 새로운 코드를 프로덕션으로 병합하기 전에 모든 테스트를 통과해야한다.

 

데이터옵스 프로세스

데이터옵스는 데이터 사용 및 가치를 향상시키기 위해 거버넌스 및 메타데이터를 기반으로 데이터 제공을 위한 설계, 배포 및 관리를 자동화한다. 데이터 파이프라인을 오케스트레이션 및 자동화하고, CI/CD 사례를 활용하여 분석 모델이 프로덕션으로 올바르게 확장할 수 있도록 한다.

[그림 3]은 새로운 데이터가 파이프라인에 추가될 때 데이터옵스 프로세스를 통해 데이터 모델로 진화하는 과정을 보여주고 있다.
 

투이톡_데이터옵스_3.jpg
[그림 3] 데이터옵스 프로세스 / 출처: https://www.saagie.com

샌드박스 단계는 정제되지 않은 원시 데이터를 탐색한다. 데이터 팀은 이러한 데이터로부터 비즈니스의 새로운 가치를 찾아낸다. 데이터 정제, 매핑, 모델링 등이 필요하지 않은 단계이며, 유효성 관점 보다는 빠른 실험이 주된 목적이다.

스테이징 단계는 1차적으로 정제된 데이터 세트로 초기 모델을 개발하고, 반복적인 작업과정을 통해 개선되고 데이터 품질 수준이 향상된다.

마지막으로 완전히 정제된 분석모델은 프로덕션 단계로 진화하고, 데이터 소비자가 일상적인 분석활동에서 사용할 수 있게 된다. 이러한 지식을 활용하여 의사결정 프로세스를 개선 및 가속화하고 장기적인 관점에서 비즈니스 가치를 창출할 수 있다.

 

두 가지 차원의 결합으로 데이터 조직 구성

데브옵스는 소프트웨어 개발팀과 운영팀의 협업이 강조되었는데, 데이터옵스에서도 동일하다. 데이터 분석에서 개발팀은 DW 및 분석을 생성하는 분석가, 데이터 과학자, 데이터 엔지니어, 데이터 아키텍처 및 개발자들이다. 운영팀은 데이터 파이프라인을 지원하고 모니터링한다. IT인력일 수도 있지만, 분석을 생성하고 소비하는 고객도 포함될 수 있다. 데이터옵스는 이러한 그룹들을 모아 보다 밀접하게 협력할 수 있다.

또한 데이터옵스는 조직을 다른 차원으로 통합을 할 수 있다.

분산된 조직의 경우, 셀프서비스 도구를 사용하여 각 비즈니스 단위에서 데이터 분석 및 개발이 이루어진다. 이런 분산 조직은 사용자에게 혁신적인 결과를 제공하는 역할을 통해 기업의 경쟁력을 유지할 수 있지만, 하향식 통제가 미흡할 경우 관리의 어려움이 있을 수 있다.

중앙집중식 조직의 경우, 하나의 조직 통제하에 분석 개발을 한곳으로 집중화함으로써 표준화 된 메트릭스(metrics), 데이터 품질 제어, 보안 및 거버넌스 시행이 가능하다. 다만 창의성이 미흡 할 수 있는 단점이 있다.
 

투이톡_데이터옵스_4.jpg
[그림 4] 개발/운영 조직, 그리고 분산/중앙집중적 조직, / 출처: https://www.datakitchen.io
 
데이터옵스는 이점 중 하나는 이러한 개발 조직과 운영 조직간의 협업뿐만 아니라, 분산과 중앙집중식 데이터 분석 개발 조직을 조화롭게 결합하는 것이다. 기업에서는 다양한 새로운 분석 기회가 시작되고 또 여러 단계 프로세스를 통해 분석 모델이 진화한다. 아이디어가 유용하거나 전사차원에서 광범위하게 배포될 가치가 있는 경우, 이를 더 강력하게 구현할 수 있는 중앙집중식 개발팀으로 이관하여 추진할 수 있다. 이렇듯 분산 개발 조직을 유지하면서 중앙집중화의 효율성을 거둘 수 있다.

* ‘Data Driven Enterprise가 되기 위한 방안, 데이터옵스 도입 [3부]: 프레임워크와 고려 사항’으로 이어집니다.
*
‘Data Driven Enterprise가 되기 위한 방안, 데이터옵스 도입 [1부]: 개념과 필요성’에서 이어진 글입니다.


 

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