데이터 생성에서 활용까지 모든 흐름 한 눈에 파악
[아이티데일리] 기업들의 관심이 데이터 거버넌스(Data Governance)에 집중되고 있다. 생성형 인공지능(AI) 확산에 따른 데이터 접근성 확대, IT 환경과 업무 시스템 복잡도 향상에 따른 데이터 관리 체계 정비 등 여러 이유가 있지만 핵심은 데이터의 신뢰성 확보다. 최근 데이터 거버넌스의 여러 영역 중에서도 기업들이 특히 주목하는 분야가 있다. 바로 데이터의 흐름을 시각화해 계보로 구현하고 관리하는 ‘데이터 리니지(Data Lineage)’다. 데이터의 생성부터 여러 시스템을 거쳐 데이터가 변형되는 과정, 데이터가 최종적으로 활용되는 단계에 이르기까지 데이터 전(全) 주기 흐름을 파악할 수 있는 데이터 리니지에 대해 살펴본다.
투명한 관리로 데이터 신뢰도 향상
디지털 혁신이 기업들의 최우선 과제로 부상하면서 IT 투자도 빠르게 늘어나고 있다. 국내·외 많은 기업은 ICT 기술 위에 수많은 시스템을 구축하고, 그 시스템이 생성한 무수한 데이터를 활용해 비즈니스 가치를 혁신하고 있다. 디지털 혁신의 중심에는 단연 데이터가 존재한다.
데이터를 효과적으로 활용하지 못하는 조직은 시시각각 변화하는 비즈니스 요구사항에 적절히 대응할 수 없으며 시장에서 도태될 수밖에 없다. 실시간으로 생성되는 데이터를 모으고, 관리하는 체계를 갖추어야 하며, 적시에 데이터를 분석해야만 비즈니스 인사이트를 창출할 수 있다.
특히 최근에는 생성형 AI가 IT 업계 혁신 아이템으로 떠오르며 데이터의 중요성이 더욱 강조되고 있다. 퍼블릭 클라우드나 프라이빗 클라우드 등 데이터 저장 위치와 해당 클라우드에서 구동되는 시스템 역시 다양해지고 있다. 데이터 활용을 위해 솔루션을 도입하고 관련 인프라를 확장하면서 업무 시스템은 더욱 복잡해지고 있다. 복잡한 시스템은 복수의 데이터베이스(DB) 간 연계를 어렵게 만들어 데이터의 신뢰성에 영향을 미칠 수 있다. 또한 데이터 추적과 관리도 힘들게 한다. 보유한 데이터의 양이 많다고 하더라도, 데이터를 투명하게 관리할 수 없다면 활용 가치가 크게 낮아진다. 정해진 규약에 따라 제대로 관리되지 못한 데이터는 신뢰도가 떨어진다.
일반 기업의 대표에게 데이터가 보고되는 과정을 예로 들어보면, A라는 데이터가 1이라는 시스템과 2라는 DB, 3이라는 시스템, 4라는 DB를 거쳐 대표이사에게 제공된다고 가정해보자. 하지만 대표가 파악하고 있는 A라는 데이터 값은 데이터 기반 수치와 다를 수 있다. 또한 데이터에 기반해 의사결정을 내리는 대표이사일수록 A라는 데이터가 가장 처음 생성된 지점은 어디고, 1이라는 시스템, 2라는 DB, 3이라는 시스템, 4라는 DB를 거쳐 데이터 A가 어떻게 변화했는지 출처를 확인하고 싶을 것이다.
이러한 데이터 흐름을 파악할 수 있는 체계가 바로 데이터 계보관리, 즉 ‘데이터 리니지’다. 데이터 리니지(Data Lineage)는 말 그대로 데이터의 계보를 의미한다. 특정 조직에서 데이터의 수집 및 저장, 이동, 통합, 분석, 폐기에 이르는 모든 주기를 추적할 수 있는 체계를 의미한다. 특정 데이터가 어떤 시스템에서 생성됐고 어느 DB에 저장됐는지, 이후 어떤 과정을 거쳐 현재 어디에 활용되고 있는지 등을 투명하게 실시간으로 파악할 수 있게 해준다.
데이터 리니지에 대해 지티원 백운기 전무는 “데이터는 보통 최초 생성되면 흔히 추출·적재·변환(ETL) 툴을 이용하거나 SQL을 활용해 타깃 DB에 저장된다. 데이터 리니지는 데이터의 이러한 생성, 변경, 이동 등 이력과 주기를 관리함으로써 데이터가 적합한 과정을 거쳐 최적화된 형태로 활용되고 있는지 적시에 확인하는 것을 목적으로 한다”면서 “데이터 흐름을 확보해 데이터 유통의 투명성을 확보하고, 데이터 오류 원인을 파악해 제거하며, 궁극적으로 데이터 계보를 현행화함으로써 데이터의 정확성과 시스템의 안정성을 유지할 수 있다”고 말했다.
데이터 리니지는 △데이터 신뢰성 향상 △규정 준수 및 감사 지원 △데이터 품질 관리 △효율적인 데이터 운영 △변화관리 및 영향 분석 △비즈니스 의사 결정 지원 △협업 촉진 △비용 절감 등 8가지 가치를 제공한다.
첫째 데이터 신뢰성이 향상된다. 데이터가 어디서 생성됐고 어떻게 변환됐는지 명확히 파악할 수 있어 데이터의 투명성을 확보할 수 있다. 또한 데이터 오류 발생 시 문제의 근본 원인을 신속하게 추적하고 해결할 수 있다.
다음으로 규정 준수 및 감사를 지원한다. 데이터 리니지는 데이터 처리 과정이 규제 요구사항을 준수하는지 입증할 수 있고, 데이터 흐름과 변환 기록을 명확히 해 감사 요구에 대응할 수 있다.
세 번째는 데이터 품질 관리가 가능하다. 데이터 리니지는 데이터 변환 과정에서 발생할 수 있는 오류를 최소화하고 데이터의 정확성을 유지하며, 데이터 품질 문제를 사전에 식별하고 수정할 수 있는 기능을 제공한다. 네 번째는 효율적인 데이터 운영이 가능하다는 점이다. 데이터 이동 및 변환 과정을 최적화해 운영 효율성을 높이고, 데이터 문제 해결에 걸리는 시간을 단축해 인적 및 물적 자원을 절감할 수 있다.
다섯 번째는 변화 관리 및 영향 분석이 가능하다. 데이터 계보를 통해 데이터 변경이 조직 전체에 미치는 영향을 분석할 수 있고, 데이터 변경에 따른 리스크를 사전에 파악하고 관리할 수 있다. 비즈니스 의사결정도 지원한다. 의사결정에 필요한 데이터의 신뢰성을 높여 정확하고 신속한 비즈니스 의사결정을 지원하고, 다양한 출처의 데이터를 통합해 포괄적인 인사이트를 제공한다.
일곱 번째로 협업을 촉진할 수 있다. 데이터 리니지는 데이터를 투명하게 관리함으로써 부서 간 데이터 공유와 협업을 촉진한다. 또한 데이터 계보를 통해 데이터에 대한 이해를 높이고 조직 내 지식을 공유할 수 있다. 마지막은 비용 절감이다. 데이터 오류 및 문제 해결에 드는 비용을 줄일 수 있고 데이터 처리 과정의 비효율성을 줄여 자원을 효율적으로 활용할 수 있게 한다.
가시성 있는 흐름 파악으로 데이터 거버넌스 완성
데이터 거버넌스는 기업의 IT 시스템 내 데이터를 관리하기 위한 정책 및 프로세스를 의미한다. 기업이 보유·활용한 데이터의 양이 많아질수록 이를 체계적으로 관리해야 할 필요성 역시 높아진다. 빅데이터에 이어 생성형 AI에 관한 관심이 급증한 현시점에서 데이터 거버넌스의 중요성은 갈수록 부각되고 있다.
일반적인 기업 및 조직의 데이터 거버넌스 구현 절차는 크게 △데이터 표준화 △메타데이터 관리 △데이터 품질관리 △데이터 리니지 △데이터 카탈로그 관리 등의 순서로 진행되는 경우가 많다.
먼저 여러 곳에서 수집된 데이터의 형식이나 범위 등을 기준에 맞게 일치시키는 ‘데이터 표준화’를 수행해 데이터의 규격을 완성하고, 이렇게 완성된 데이터의 메타정보를 토대로 메타데이터를 관리한다. 이후 데이터에 대한 품질을 관리하면서 데이터 거버넌스 체계를 잡아가곤 한다.
구체적으로 데이터 리니지 구축 작업이 데이터 거버넌스 프로젝트에 포함될 경우, 데이터 거버넌스 전략 수립 단계부터 상세 요건들이 정해진다. 목표와 조직, 역할 등이 정해지고, 각 요구사항을 도출한 이후에 관련 정책을 수립한다. 이후에는 구체적인 데이터 리니지 솔루션 도입계획이 수립되고, 솔루션에 대한 도입 평가 및 선정이 이뤄진다.
솔루션이 선정되면, 이를 설치하고 데이터 환경에 맞게 설정한다. 특히 기존의 데이터 시스템, 애플리케이션들과 연동하여 데이터 흐름과 변화를 자동으로 추적할 수 있도록 설정한다. 또한 메타데이터를 수집하고, 이를 시스템에 통합해 데이터의 출처, 변환, 사용 이력을 파악할 수 있도록 한다. 이러한 구성이 완성된 후에는 데이터 흐름과 변화를 모니터링하고 추적하게 되며, 전체 데이터 거버넌스 프레임워크와 통합되도록 검토하는 과정을 거친다.
이와 관련, 클라우데라 김호중 전무는 “데이터 거버넌스를 수립하는 과정에서 데이터 리니지 솔루션을 도입하는 순서는 매우 중요하다. 단순히 솔루션을 도입해서 구축하는 형태보다는 데이터 거버넌스의 단계마다 데이터 리니지에 대한 내용이 포함되어야 한다. 데이터 리니지 솔루션과 시스템을 구축하는 시점과 방법은 조직의 상황과 데이터 환경에 따라 상이할 수 있다”고 설명했다.
최근에는 데이터 품질관리 이후에 데이터 리니지 체계를 수립하는 기업 및 조직이 늘고 있다. 일반적으로 데이터 품질관리에 속하는 데이터 프로파일링, 데이터 규칙 추출 및 정제 등의 작업이 마무리돼야 데이터의 흐름을 역추적할 수 있기 때문이다.
이에 대해 데이터스트림즈 이상화 이사는 “데이터 리니지는 데이터 거버넌스를 구성하는 하나의 요소로 구성돼 있다. 일반적으로 데이터 거버넌스 프로젝트를 추진하면 가장 마지막에 흐름관리를 구성한다”면서 “데이터 리니지는 표준과 관리체계 결과를 토대로 분석 작업이 필요하다. 기초적인 전사 시스템 자원 평가를 비롯해 어떤 프로그램과 어떤 시스템을 어느 지점에서 사용하고 툴이 어디에 적용되는지, 또 업무 흐름은 어떻게 흘러가는지 등을 분석해야 한다. 기업 규모의 차이는 있지만, 이러한 기초작업이 없다면 평균 최소 6개월부터 최대 2년 가까이 소요된다”고 설명했다.
지티원 백운기 전무는 “데이터 리니지는 일반적으로 데이터 거버넌스 프로젝트가 추진되는 과정에서 후속 작업으로 포함되거나, 특정 용도로 데이터 리니지 구축 프로젝트가 진행된다. 한 예로 국내에 지사를 둔 글로벌 A 은행은 데이터 신뢰도 향상을 위한 데이터 매핑 정의서 자동화 프로젝트를 추진하며 데이터 리니지를 도입했고, 국내 굴지의 B 제조사는 특정 공정의 특정 라인에 대한 데이터 이동 경로를 가시화하는 용도로 별도의 메타데이터 관리 체계없이 구축했다. 이 외에 대부분의 데이터 리니지 사례는 차세대 구축사업이나 데이터 거버넌스 구축 등 거대한 프로젝트의 데이터 거버넌스 부분 계보관리 파트로 구축되곤 한다”고 부연했다.
데이터 리니지 시스템을 구축할 때 현행 시스템에 대한 분석과 정리가 가장 중요하다. 이는 그러나 가장 어려운 부분이기도 하다. 현행 시스템에 대한 분석과 정리가 선행되지 않으면 데이터 리니지 도입이 지연될뿐더러 효과를 보기도 어렵다. 고객사가 형상관리 시스템을 구축해 운영하더라도 완전하지는 않다. 형상관리 시스템에 등록돼 있다고 해서 모두 현재 운영되고 있는 시스템은 아니기 때문이다.
또한 많은 IT 담당자들이 필요에 따라 테이블을 만들고 활용하지만, 사용한 후 필요 없어진 테이블을 지우는 데에는 인색하다. ETL 프로세스를 만들었을 경우 이후에도 변경하며 사용할 수 있는데, 괜히 기존에 개발해 둔 것을 건드렸다가 나쁜 영향을 줄 수도 있으니 그대로 두고 새롭게 만드는 일이 부지기수다. 이렇게 낭비되는 요소들이 전부 형상관리 시스템에 축적돼 있다.
한 고객사 프로젝트를 사례로 들면, A 고객은 형상관리 시스템을 통해 대부분의 시스템을 통제하고 있다고 판단했다. 하지만 실제로 분석해 보면 운영되고 있는 시스템은 그리 많지 않았다.
데이터 리니지를 도입한 후 전사적인 데이터 흐름을 분석할 경우 현재 사용하지 않는 테이블이나 프로그램을 구분할 수 있기는 하지만, 사전에 가능한 범위 내에서 불필요한 프로그램들을 통합하거나 정리함으로써 데이터 리니지 구축을 더욱 매끄럽게 추진할 수 있다.
반대로 특정 조직에서 독립적으로 사용하는 시스템이라는 이유로 소스를 별도로 형상관리 시스템에 등록하지 않은 경우도 있다. 이러한 시스템을 사전에 파악하지 못해 구축 단계에서 포함시키지 못하면 전사적인 데이터 리니지 구축은 요원해진다.
본격적인 데이터 리니지 구축 프로젝트에 돌입하기 전에 해당 조직과의 면담을 통해 시스템 개요를 파악하고 적극적인 협조를 약속받아야 한다. 성공적인 데이터 리니지 구축을 위해서는 고객사의 적극적인 참여가 필수적이다.
‘데이터 매핑 정의’에서 고도화
데이터 리니지는 2001년에 이미 데이터 흐름관리라는 이름으로 국내에 소개됐다. 당시에는 메타데이터 구축, 데이터 표준화 등에 관심이 모아졌으며, 데이터 리니지는 비교적 늦은 2016년부터 주목받기 시작했다.
클라우데라 김호중 전무는 “과거에는 데이터 계보를 수동으로 기록하고 문서화하는 방법이 주로 사용됐다. 하지만 오류가 많았고, 시간도 많이 소요됐다. 그리고 스프레드시트를 사용해 데이터를 기록하고 관리하기도 했다. 이후 DB가 나오면서 DB의 스키마를 통해 데이터의 구조와 관계를 정의하고, 이를 기반으로 데이터 흐름을 이해하고 관리했다. 하지만 스키마만으로 데이터의 상세한 변화를 추적하는 데 한계가 있었다. 일부 시스템에서는 DB 로그파일을 사용해 데이터의 변경 이력을 관리했으나, 데이터의 전체적인 흐름을 관리하기는 어려웠다”고 설명했다.
이어 김 전무는 “데이터 웨어하우스(DW)가 출현하면서 OLTP에서 DW, 데이터마트(DM), OLAP까지의 흐름 사이 사이에서 데이터를 이관하는 ETL 프로세스를 통해서 데이터의 추출, 변환, 적재 과정을 추적해 데이터 계보를 일부 관리할 수 있었다. 즉 원천 데이터가 ETL을 거쳐 DW에 어떻게 적재되는지, BI의 어떤 메트릭으로 확인되는지 등의 계보를 관리하고, 현황을 파악하는데 사용됐다. 그리고 주기적으로 데이터를 배치 처리하는 시스템에서도 데이터의 출처와 변환을 문서화해 관리하기도 했다”며 데이터 리니지에 대해 설명했다.
데이터 리니지는 데이터 계보의 근거를 메타데이터에서 찾는다. 과거에는 데이터의 흐름을 추적하기 위해 메타데이터에 기반한 ‘데이터 매핑 정의서’를 만들어 별도로 관리했다.
일반적으로 데이터를 저장할 때 ETL 툴을 사용한다. ETL 툴을 사용하면, 특정 DB 테이블에서 데이터를 가져오는 작업과 타깃이 되는 DB의 테이블에 데이터를 적재하는 작업이 진행된다. 대개 데이터가 추출되는 위치와 로드되는 위치를 각각 소스와 타깃으로 정의한다. 이를 별도로 명문화해 특정 DB에서 특정 DB로 데이터가 이동된 지점에 대한 정보를 보고 데이터의 흐름을 관리할 수 있다는 것이다. 통상 ETL 툴을 이용할 경우 데이터 매핑 정보를 문서화 하고 이를 사람이 직접 관리한다.
만약 ETL 툴을 사용하지 않고 별도의 SQL 구문을 통해 소스와 타깃을 정의한다면, 데이터 흐름을 관리하기 위한 역추적 절차의 난이도는 상당히 높아지게 된다. SQL 구문을 정의할 때 어떠한 계산식이 사용됐는지 분석하는 파싱(Parsing) 작업이 필요하기 때문이다. 파싱은 파서(Parser) 역할을 하는 컴퓨터가 문장 단위의 문자열을 구문 트리로 재구성하는 구문 분석 과정을 의미한다.
하지만 데이터 매핑 정의서를 수작업으로 관리하는 데는 한계가 있다. 소스와 타깃 사이의 ETL 매핑 관계만 정의되므로, 중간 단계의 임시 테이블 및 기타 프로그램에 대한 정보가 누락돼 검증하기 어려울 수 있다는 것이다. 또한 수작업 혹은 반자동으로 관리되므로 데이터 흐름 정보의 현행화가 어렵고, 분석/파악에 많은 비용이 들어가게 된다.
지티원 백운기 전무는 “원천 DB 테이블과 대상 DB 테이블 간의 데이터 매핑 관계(ETL 매핑) 정보를 바탕으로 수작업으로 정의서를 만들고 업데이트가 필요하면 수작업으로 문서를 업데이트하는 방식이었다. 주로 설정 정보에 의존해 데이터의 흐름 정보를 수작업으로 관리하는 것이 계보 관리의 첫 단계였다”면서 “하지만 데이터 흐름 정보를 수작업으로 관리하다 보면 여러 한계에 부딪힐 수밖에 없다. 특히 데이터 관리 환경 역시 복잡해지고 있어 자동으로 데이터 흐름을 분석할 수 있는 기술이 필요하게 됐다”고 설명했다.
사실 데이터 매핑 관계는 ETL 툴의 설정 정보가 제공된다면 쉽게 추출할 수 있다. 하지만 그렇지 않은 경우 ETL, EAI(Enterprise Application Integration) 등의 설정 정보뿐만 아니라 프로그램 소스로부터 SQL 구문을 추출해 원천 데이터로부터 목적지 데이터까지의 흐름과 데이터 이동에 이용되는 계산식까지 자동 분석하는 정밀 원천 기술이 중요하다. 달리 말하면 메타데이터를 기반으로 깊이 있게 파싱할 수 있는 역량이 요구된다는 것이다.
데이터 신뢰성과 데이터 리니지는 데이터 관리 및 거버넌스의 중요한 구성 요소로, 밀접한 연관성을 갖고 있다. 데이터 리니지는 크게 투명성 제공, 문제 해결, 규제준수 등 측면에서 데이터 신뢰도를 높일 수 있다.
먼저 데이터 계보 관리는 데이터의 투명성을 제공한다. 데이터의 흐름과 변화를 명확히 보여주기 때문에 데이터가 어디에서 왔는지, 어떤 변형을 거쳤는지, 그리고 최종적으로 어떻게 사용되는지를 추적할 수 있다. 이런 이유로 데이터의 출처와 처리 과정에 대한 투명성을 제공한다. 이는 곧 데이터에 대한 신뢰성으로 이어진다.
다음은 문제 해결이다. 데이터 리니지는 데이터의 변화를 추적함으로써 데이터 오류나 문제의 원인을 찾는 데 유용하다. 문제 발생 시, 데이터 계보를 통해 문제가 발생한 시점이나 변형 과정을 확인함으로써 신속하게 해결할 수 있다. 이 역시 데이터의 신뢰성을 높이는 데 기여한다.
마지막으로 규제 준수다. 데이터가 어떻게 처리되고 저장되는지를 명확히 기록하는 데이터 계보 관리는 규제 준수를 확인하는 데 중요한 역할을 한다. 데이터의 추적 가능성을 보장함으로써 규정과 법률을 준수하는 데 기여한다. 이 역시 데이터에 대한 신뢰를 높이는 요소다.
향후 데이터 리니지에 AI와 ML이 접목되면서 자동화되고, 능동적인 데이터 분석과 이상탐지, 예측 기능이 강화될 것으로 전망된다. 특히 최근 생성형 AI 확대로 모델 정확성과 신뢰성을 향상하고자 하는 움직임이 일고 있는데, 데이터 리니지가 중요한 역할을 할 것이다. 데이터 리니지를 통해 AI 모델의 성능을 개선하고 디버깅을 쉽게 해 AI 모델의 정확성과 신뢰성을 향상하게 될 것이다. 이는 결국 AI 모델의 책임성과 투명성과도 직결된다.
최근 GDPR이나 CCPA 등 데이터 보호규정 준수를 자동으로 모니터링하고 알려주는 능동형 감사 기능이 중요해지고 있다. 생성형 AI 역시 학습에 대한 원천소스 수집 경로와 생성데이터의 윤리 측면의 검토와 감사 역시 중요해지고 있어 향후 데이터 소스와 시스템을 통합해 계보를 관리할 수 있는 통합 데이터 리니지 플랫폼의 필요성과 중요성은 더욱 커질 것으로 예상된다.
메타 정보 및 DB 스키마 공개돼야 데이터 흐름 파악 가능
데이터 리니지는 소스 DB와 타깃 DB 간 매핑 정보를 자동으로 추적할 수 있는 개념이다. 이를 달리 말하면 매핑 정보가 공개돼야 한다는 의미다. 일례로 애플리케이션의 메타데이터가 오픈되지 않아 DB의 스키마를 읽어올 수 없거나 DB의 SQL 파싱을 수행할 수 없다면 데이터의 흐름을 파악하는데 어려움이 따른다.
지티원 백운기 전무는 “‘데이터가 1번 DB에서 2번 DB로 제대로 흘러갔다’는 정도를 파악하는 기준은 1번 DB에서 발생한 ETL 설정 정보 혹은 SQL 변환규칙 등과 2번 DB 스키마가 제대로 부합하는지를 확인하면 된다. 만약 SQL 변환규칙과 타깃 DB의 스키마 정보를 비교했을 때 이상이 없으면 데이터가 정상적으로 이동했다고 판단하는 근거가 된다”고 설명했다.
이어 백운기 전무는 “물론 타사의 특정 솔루션은 메타데이터 저장소가 없으면 데이터 리니지 시스템을 구축하지 못할 수 있다. 하지만 메타데이터 저장소가 없어도 DB 스키마를 직접 읽어 데이터 리니지 시스템을 구축할 수 있는 방법도 있다. 프로그램 소스나 ETL에서 매핑데이터를 추출한 것만 갖고 데이터 계보를 정의할 수도 있지만, 이는 실제 DB에 대한 테크니컬 메타데이터가 결합되지 않으면 정확성 측면에서 문제의 소지가 있을 수 있다”고 덧붙엿다.
특히 메타정보가 없는 경우에는 다음 ‘표 2’와 같은 잘못된 매핑 사례가 왕왕 발생하기도 한다.
클라우데라 김호중 전무는 “직접 메타데이터에 접근할 수 없더라도, 데이터의 입·출력, 사용패턴, 로그 등을 분석해 간접적으로 데이터 흐름과 변화를 추적할 수도 있다”면서 “DB나 애플리케이션에서 발생하는 트랜잭션 로그를 통해 변경 이벤트를 캡처한 후 데이터 변화를 추적하고 데이터의 값의 변화와 흐름을 분석한 후 전체 데이터 셋의 변화를 추정할 수도 있다. 만약 데이터 파이프라인이 구축돼 있다면 데이터 파이프라인 모니터링을 통해서 각 단계에서의 데이터를 추적해 데이터 흐름을 관리할 수도 있다”고 설명했다.
디노도코리아 김세준 상무는 “애플리케이션의 스키마가 부재하거나 암호화되더라도 해당 시스템의 내부는 블랙박스로 두고 입력되는 데이터와 출력되는 데이터 간의 흐름을 수기로 관리를 한다면 최소한의 계보 관리는 가능하다”며 “다만 이는 해당 시스템에 대한 이해와 업무적 지식을 갖추고 있는 담당자가 있어야 한다. 이러한 담당자를 통해 수기로 데이터 계보에 대한 정보를 메타데이터화한다면 관리는 가능할 것”이라고 첨언했다.
데이터 리니지는 솔루션의 자동화 정도에 따라 요구되는 기술적 역량이 달라진다. 자동화의 정도와 요구되는 기술적 역량은 반비례한다.
자동화정도가 낮을 경우 데이터 리니지 적용을 위한 ‘데이터 모델링’ 기법에 대한 지식은 물론 데이터가 저장되는 위치 및 형태를 위해 데이터 아키텍처에 대한 이해도 필요하다. 또한 데이터 이동 시 사용하는 ETL 도구, 수집 도구 및 DBMS 또는 하둡과 같은 분산처리시스템 내 처리 로직 등에서 데이터 계보 정보를 추출하는 방법에 대한 설계 역량도 동반돼야 한다. 그리고 이를 어떻게 구현하는가에 따라 파이썬과 같은 프로그래밍 기술, 계보를 시각화하기 위한 기술 등이 필요할 수 있다. 이외에 계보 정보에 비(非) 기술자들도 이해할 수 있는 메타데이터 관리는 필수적이다.
물론 자동화된 솔루션을 도입하더라도, 데이터의 흐름 자체를 관리하기 위한 업무적 역량은 필요하다. 여기에는 데이터 거버넌스 정책과 표준 수립 및 적용 역량, 데이터 보안 및 개인정보관리 역량, 데이터의 흐름을 이해하고 문제 파악하는 분석 및 문제 해결 역량, 그리고 마지막으로 다양한 이해관계자들에게 데이터 리니지를 설명할 수 있는 소통 역량이 필요하다.
영향도 분석에 강점이 있는 기업들이 데이터 리니지에도 강점을 갖는다. 데이터 흐름 상에서 어떤 부분에 잠재적인 리스크가 존재하는지를 잘 알고 있기 때문이다. 즉 단계별로 복잡하게 얽혀 있는 정보 중에서 어떤 정보를 데이터 리니지를 위한 메타데이터로 추출해야 하고 어떤 방법을 통해 영향도 분석 결과를 도출하면 되는지 또 어떤 부분이 누락되면 안 되는지를 명확하게 알고 대응할 수 있다. 데이터 분석 리포트와 같이 목적성이 뚜렷하면 근간을 이루는 정보도 탄탄할 수밖에 없다.
기업별 솔루션 소개
지티원 ‘데이터호크(DataHawk)’
지티원은 데이터 거버넌스와 애플리케이션 거버넌스 통합 포털을 구축해 고객들에게 서비스하고 있다. 하나의 단일 데이터 거버넌스 플랫폼 포털을 통해 표준화와 다양한 상호운용성을 보장하며 고객의 전방위적인 데이터 업무 활용을 지원한다.
지티원은 데이터 계보·흐름 자동 분석 솔루션 데이터호크(DataHawk)를 개발·공급하고 있다. 데이터호크는 데이터 원천으로부터 ETL, SQL, 온라인, 배치 프로그램 등 데이터 목적지까지 흘러가는 경로와 변환규칙을 가시화한 데이터 계보 관리 솔루션이다. 데이터호크는 크게 △데이터 계보·흐름 △데이터 산출 규칙 △데이터 계보·흐름 보고서 △대시보드 △검색 △어드민 콘솔 등의 기능을 갖고 있다.
먼저 데이터호크는 업무 시스템, 테이블, 컬럼 레벨 데이터 흐름 정보를 그래프 형태로 가시화할 수 있다. 또한 소스-타깃 사이 컬럼 레벨 데이터 흐름을 그리드로 표시할 수도 있고, 데이터 흐름에 관여하는 SQL 문에 대한 다이어그램도 지원한다. 특히 소스 및 ETL 매핑 정보가 누락될 때 사용자 정의 데이터 흐름도 지원한다. 아울러 정적 SQL 뿐만 아니라 동적 SQL도 자동으로 추출하고 분석할 수 있다. 이를 통해 복잡한 SQL 구조를 가시화해 개발자나 데이터베이스관리자(DBA)의 이해를 도울 수 있다.
다음으로 데이터 산출 규칙을 자동으로 생성·추출할 수 있다. 데이터호크는 타깃 테이블, 컬럼에 유입되는 데이터 값이 생성되기까지의 산출 규칙(Derivation Rule)을 자동으로 추출하는 기능을 제공한다. 아울러 산출 규칙에 대한 양방향 추적도 지원해 데이터의 이동 경로를 가시화할 수 있다.
세 번째는 데이터 계보·흐름 보고서 기능이다. 소스와 타깃 사이 데이터 추적 정보를 엑셀 파일로 저장할 수 있다. 컬럼 레벨의 데이터 이동 경로와 데이터 산출 규칙을 포함하고 있으며, 다양한 조회화면을 직접 액셀 등으로 출력할 수 있다.
네 번째는 대시보드 기능이다. 데이터 카탈로그의 통계·변경 추이 정보를 제공한다. 이 기능을 통해 데이터 자산 통계와 변경 추이를 확인할 수 있고, ODS, DB 카탈로그, ETL 툴(인포매티카, 데이터스테이지, MSTR 등) 설정, SQL, PLSQL, 쉘 스크립트(Shell Script), NoSQL, 하둡(Hadoop), 레드시프트(RedShift), 하이브SQL(HiveSQL), 데이터레이크(DataLake) 등 프로그램의 자산 통계 및 변경 추이도 확인이 가능하다. 아울러 DB 패키지, 프로시저, 테이블, 컬럼, 인덱스, 뷰 등의 변경 현황 및 이력도 시의성있게 구성할 수 있다.
다섯 번째로 데이터호크의 검색기능이다. 전체 DB 및 프로그램을 대상으로 빠르고 편리하게 검색할 수 있다. 오브젝트 명이나 타입, 키워드, SQL 등에 의한 빠른 검색을 지원한다. 다양한 조건들의 조합을 지원하는 복합 검색을 지원하며, 검색 조건 재사용도 가능하다. 흐름 맵 전개 중 해당 노드를 빠르게 검색할 수도 있다. 또한 검색 결과로부터 데이터 흐름 맵이나 CRUD 매트릭스로 이동할 수도 있다.
마지막으로 관리자 콘솔을 제공한다. 해당 콘솔을 통해 수집/분석 작업을 자동화할 수 있다. 프로젝트 마법사 기반 수집·분석 작업 자동화가 가능하다. 또한 프리셋을 이용해 유사 시스템 분석 작업 생산성도 향상할 수 있다. 프리셋은 수집 및 분석 작업에 필요한 기본 설정 정보를 포함하고 있는 템플릿이다.
관리자 콘솔에서는 스케줄러 및 권한관리도 가능하다. 수집/분석 작업의 스케줄링 및 모니터링부터 프로젝트 및 사용자별 권한 관리, 프로젝트 생성 및 관리를 위한 레스트 API를 제공한다.
지티원은 데이터호크에 다양한 환경 분석을 위한 자체 개발 파서를 적용했고, 빅데이터 환경 기술 요소들에 대한 분석도 지원하고 있으며, 경로 기반 동적 문자열 분석 특허 기술이 적용됐고, 프로그램 내 데이터 흐름 분석을 지원하는 특허도 적용했다.
데이터스트림즈 ‘Q-트랙(Q-Track)’
데이터스트림즈는 빅데이터 구축·관리·분석 전문기업으로, 데이터 통합과 품질관리·메타데이터·표준화 등 데이터 거버넌스 분야와 인공지능(AI/ML), 데이터 패브릭 등의 솔루션과 컨설팅 서비스를 중심으로 비즈니스를 영위하고 있다. 데이터스트림즈가 전면에 내세운 데이터 리니지 솔루션은 ‘Q-트랙(Q-Track)’이다.
데이터스트림즈의 Q-트랙의 특장점은 크게 △데이터 흐름관리 시각화 △웹 기반 서비스 제공 △다양한 분석 파서 제공 및 구축 △분석 대상 소스 수집/활용 연계 등 4가지다. 먼저 데이터 흐름관리 시각화에 강점을 갖고 있다. 기본적으로 테이블에 대한 흐름정보와 단위 컬럼에 대한 흐름 정보, ETL 툴(테라스트림(Terastream))에 대한 흐름정보를 제공하며, 각 흐름 단위 별 추적 기능도 제공한다.
다음은 웹 기반 서비스를 제공한다는 점이다. 마이크로소프트(MS) 에지, 구글 크롬 등 최신 버전을 지원하며, 별도의 클라이언트 환경 설치가 필요없다. 세 번째로는 다양한 분석 파서를 제공한다. 데이터스트림즈의 Q-트랙은 프로그램 언어 기반 분석 파서를 제공하며, 오라클 DB 등 RDBMS 환경의 SQL 분석 파서부터 ETL이나 OLAP 툴 파서, 빅데이터 흐름 분석을 위한 분석 파서 등을 지원한다.
마지막으로 분석 대상 소스 수집/활용 연계가 가능하다. Q-트랙은 기업 내 존재하는 형상관리 시스템과 연계 구축이 가능하며, 특정 파일 위치 내에 존재하는 파일을 수집할 수 있다. 오픈소스 깃허브, SVN 연계 수집도 지원하며, 데이터 활용을 위한 API 및 링크를 제공한다.
주요 기능은 크게 5가지다. 먼저 ‘물리 테이블/컬럼 객체 검색을 통한 업무별 검색’ 및 ‘테이블 또는 컬럼과 연계된 프로그램 목록 검색’ 기능을 제공한다. 테이블/컬럼 명으로 데이터를 검색할 수 있고, 상세 컬럼 정보를 제공한다. 해당 테이블 연관 프로그램 목록도 제공하고 메타데이터 기준 검색, 분석된 메타데이터 기준 검색도 제공한다.
다음으로 ‘원천 소스 분석을 통한 테이블/파일 흐름도 검색’과 ‘필터 기능 활용 순방향/역방향 탐색 기능’, ‘temp 정보 제외 기능’, ‘선택 개체 기준 추적 기능’ 등을 지원한다. 테이블 흐름도의 경우 테이블 단위의 흐름도를 제공하며, 연결선을 제공한다. 소스/타깃 정보, 관련 프로그램 정보, 흐름도 다운로드 기능 등도 지원한다.
세 번째로 테이블/컬럼 도식화를 통해 데이터 흐름을 추적하고 연결선을 통한 추적도 가능하다. 컬럼 매핑에는 상세 데이터 컬럼 매핑 정보, 직접 연관 컬럼 정보, 흐름 없는 컬럼 숨기기 기능, 검색 시 추적선 표기 기능, 파일 위치 표기 등 기능을 제공한다. 네 번째로는 테이블 내 컬럼을 기준으로 흐름을 시각화해 검색된 지점부터 흐름의 마지막까지 추적할 수 있는 기능을 제공한다. 마지막은 테이블 기준 복수 컬럼에 대한 흐름정보를 시각화하며, 흐름 데이터의 복잡도에 따라 시각화 레벨을 지정할 수 있는 기능을 제공한다.
클라우데라 ‘CDP’
클라우데라는 하이브리드 데이터 플랫폼을 지향하며, 데이터의 수집부터 저장, 분석, AI/ML까지 전체 데이터 라이프사이클을 지원한다. 통합 데이터 패브릭, 개방형 데이터 레이크하우스, 확장 가능한 데이터 메시를 제공해 원천 데이터에서 데이터 변환, 파이프라인을 통한 데이터 적재, 분석, BI, AI/ML에 활용되는 데이터 생명주기 전반에 걸친 데이터 계보를 관리한다.
클라우데라는 CDP(Cloudera Data Platform)의 일부로 데이터 리니지 솔루션을 제공하고 있다. 데이터의 자산을 검색, 구성, 관리하는 목적으로 데이터 자산 간의 관계를 구축하고, 데이터 사용 및 변환 방식을 추적해 계보 관계를 생성하고, 데이터 변환을 시각화로 제공해 데이터의 출처를 신속하게 파악하고 데이터 및 스키마 변경의 영향도를 파악할 수 있도록 지원한다.
‘SDX(Shared Data eXperience)’를 통해 모든 메타데이터를 관리하고, 세분화된 역할 및 속성 기반의 보안정책 및 데이터 접근제어를 하며, 케르베로스(Kerberos) 기반 암호화와 엔터프라이즈급 감사와 데이터 계보 및 거버넌스를 제공하고 있다.
구체적으로는 SAML을 통해 도메인에 정의된 사용 및 그룹을 제어하고, 케르베로스, 프리IPA(FreeIPA), TLS를 통한 네트워크 보안과 암호화를 지원하며, 아파치 녹스(Apache Knox)를 통해 모든 웹 UI에 대한 SSO를 활성화한다. 하이브 메타스토어(Hive Metastore) 및 스키마 레지스트리를 사용해 구조화된 메타데이터를 관리하며, 레인저(Ranger)를 사용해 사용자, 역할, 태그 또는 사용자 속성 기반의 액세스를 접근 제어한다. 또한 아틀라스(Atlas)를 사용해 감사 추적 및 수집부터 서빙까지 계보 그래프를 캡처할 수 있으며, 데이터 카탈로그를 통해 메타데이터 및 워크플로우 관리 및 데이터 프로파일링을 지원한다.
디노도 ‘디노도 플랫폼’
디노도는 데이터 리니지 기능을 ‘디노도 플랫폼(Denodo Platform)’을 통해 제공하고 있다. 디노도 플랫폼은 데이터 관리 작업을 최소한의 노력으로 최대의 결과를 얻을 수 있도록 지원하는 데이터 가상화 기술 기반의 데이터 관리 솔루션이다. 데이터 리니지뿐만 아니라 데이터 보안, 감사, 유니파이드 시멘틱(Unified Semantic), 데이터 카탈로그(Data Catalog), 이기종 데이터 조합 등 데이터 관리가 필요로 하는 전반적인 기능을 기업의 특수한 상황에 맞게 맞춤 적용해 반복적이고 소모적인 업무를 줄일 수 있다.
디노도 플랫폼의 데이터 리니지는 데이터 패브릭 아키텍처를 근간으로 연결된 데이터로부터 활용되는 최종 데이터 간의 모든 계보를 추적 관리한다. 데이터 계보를 통해 데이터 원천의 스키마에 어떤 변화가 있는지, 또 어떤 데이터 원천으로 연결이 됐는지, 원천 컬럼으로부터 어디까지 파생돼 활용됐는지 그리고 활용되는 데이터의 출처가 어디며 어떤 변환 과정을 거쳐서 최종 데이터로 가공됐는지 등의 정보를 관리할 수 있다.
이러한 정보는 사용자가 수기로 등록하는 것이 아니라, 데이터 모델을 저장함으로써 SQL구문으로부터 자동 추출돼 저장된다. 때문에 별도로 다른 작업을 하지 않아도 데이터 계보정보를 관리할 수 있다. 아울러 컬럼 단위로 하위 추적 또는 역추적할 수 있는 정보를 보유하고 있으며, UI뿐 아니라 쿼리를 통해 해당 정보에 대한 조회가 가능해 필요한 정보를 원하는 대로 추출/가공/활용할 수 있다.
디노도코리아 김세준 기술총괄 상무는 “물리적인 데이터 통합으로는 무분별한 데이터 복제 또는 단계별 불필요한 데이터 적재 등으로 계보 관리가 매우 어렵다. 그러나 논리적 데이터 패브릭 아키텍처를 통해 데이터 개발 및 문서화 작업을 하게 되면, 최소한의 노력으로도 많은 정보를 관리할 수 있다. 디노도는 데이터 관리의 불편함을 지속적으로 개선하고 있으며 태블로, 파워 BI와 같은 툴 내의 정보, ETL 등 데이터 이동 정보 등 데이터 생애주기에서 발생하는 모든 정보를 포괄해 관리할 수 있는 기능을 선보일 예정”이라고 강조했다.


