[기고] 그래프 DB가 ‘밥’ 먹여준다

그래프 DB를 활용한 UN의 기아문제 해결 사례

전문가 칼럼입력 :2020/08/07 15:40

조 스티치버리

우리는 역사상 가장 풍요로운 시대에 살고있다. 그러나 지구 반대쪽 한편에서는 전쟁, 홍수, 허리케인, 지진 또는 화재와 같은 재해로 인해 심각한 병을 앓거나 영양 실조로 굶주리는 사람들이 점점 늘어나고 있다.  세계 최대의 인도주의 구호단체, UN의 세계식량계획 (World Food Programme, WFP)은 도움이 필요한 사람들을 지원하는 유엔기구이다. WFP에 따르면 매일 밤 약 8억 2100만명이 공복 상태로 잠자리에 들고, 세계 인구 중 3분의 1이 영양실조에 시달리고 있다고 한다.

WFP는 매년 83개국, 9,140만 명에 달하는 굶주린 사람들을 돕기 위해 매일 5천 대의 트럭과 20척의 선박, 그리고 92대의 항공기로 구호물자를 보내고 있다. 물류 배송을 통해 식량위기에 효과적으로 대응할 수 있도록 철저히 준비하고 있다.

■ 굶주린 이들을 위한 WFP의 노력

이를 위해 분석가들은 경제 상황 분석, 지리 공간 분석 등을 포함한 다양한 데이터를 전화와 대면 인터뷰를 통한 설문 조사로 수집하여 해당 지역의 특성을 파악한다. 더욱 상세한 상황 진단을 매년 수 천 세대 이상의 가정과 식품 공급 업체에 접촉해 400문항 이상의 설문을 진행했다.

설문의 각 문항은 매우 체계적으로 짜여 있기 때문에, 이를 데이터베이스로 축적해보면 상당히 많은 양과 복잡한 구조로 나타남을알 수 있다. 그리고 그 과정을 통해 얻은 인사이트는 다음과 같다.

1. 위험에 처한 모든 지역에 대한 건강, 생계 및 사회 경제적 변수를 포함한 통합 표준을 만드는 것은 불가능하다.

2. 다양한 관계의 많은 변수가 존재한다. (WFP의 데이터 과학자는 “식량(Food)은 단지 음식으로만 볼 수 없다. 시골 지역에서의 식량은 농사를 짓기 위한 수단일 수도, 또 운송 수단이나 판매의 수단일 수도 있다”고 표현)

■ 데이터의 활용 방안 연구

지금부터는 수집한 데이터를 활용해 어려움에 처한 지역과 그 사람들을 찾아낸 사례에 대해 소개하고자 한다. 먼저 분석가들은 식품 소비 및 지출 데이터, 다양한 식품 그룹과 측정 단위, 통화 및 여러 식품 공급원(예: 식품을 시장에서 구매했는지, 집에서 재배했는지, 정부가 제공했는지 등에 대한 여부)에 대한 자료를 수집한 후 데이터를 통합했다. 이 엄청난 양의 데이터를 관리하고 분석하기 위한 방법을 찾던 중 그래프 데이터베이스(DB)에서 해결책을 찾을 수 있었다. 비트나인의 아젠스그래프(Agensgraph)를 사용해 변수 간의 관계를 기록해 데이터를 구성했고, 복잡한 데이터셋의 정보를 쉽게 이해할 수 있게 되었다. 이 업무를 담당한 데이터분석가 Singhal은 “비트나인의 아젠스그래프를 통해 여러차원으로 분리된 데이터를 쉽게 집계하고, 통합할 수 있었다” 고 언급하기도 했다.

■ 그래프 DB와 아젠스그래프

많은 기업에서 기존의 관계형 데이터베이스 관리 시스템(RDBMS)으로는 다양한 데이터 형식과 빠르게 변화하는 트렌드를 따라갈 수 없다는 걸 깨달았다. 그 과정에서 NoSQL 기반의  그래프 데이터베이스(DB)는 데이터 커뮤니티에서 가장 강력한 기술로 자리매김했다. 가트너는 선두 그룹에 있는 기업의 70% 이상이 그래프 DB 프로젝트를 사용할 것으로 예측했다.

아젠스그래프는 포스트그레SQL 기반의 멀티 모델 그래프 데이터베이스로, 관계형 데이터와 그래프 데이터 모델을 하나의 데이터베이스에 통합했다. SQL과 사이퍼(Cypher)를 동시에 사용할 수 있기 때문에 개발자는 데이터 관리를 위한 레거시 SQL 환경과 함께 그래프 데이터베이스의 기능을 활용할 수 있다. 포스트그레SQL 사용자에게는 확장 기능을 지원해 관계형 데이터를 그래프로 쉽게 이전 가능하다. 또한, 아젠스그래프는 ACID 트랜잭션, MVCC, 트리거 및 JSON과 같은 기능과 그래프를 시각화하여 실제 세계의 직관적인 모델을 형성하는 브라우저도 함께 지원한다.

아래의 그림에 나타난 예시는 WFP의 지원금(식비 지원)을 받는 인구의 식습관에 관한 연구를 모델링으로 표현했다.

■ 예제 데이터 1

예제 데이터 1

그래프 엣지(edge)와 특징(properties)가 나타내는 정의는 다음과 같다.

1. 식품군(고기)을 소비하는 가정

2. 식품군(고기) 이 함유한 영양소

3. 해당 식품군에 대해 소비가 이뤄지는 가정

WFP는 위에 제시된 간단한 예제 데이터의 그래프 데이터베이스 쿼리와 추론을 통해 다음과 같은 결론을 도출할 수 있었다.

▲영양 실조 문제가 가장 심각한 가정 파악

▲음식 소비 패턴 분석과 일치하는 품목의 유통의 우선 순위 지정

▲장기 지속적인 효과를 위해 적절한 영양 교육 프로그램 계획

■ 예제 데이터 2

WFP는 지원금을 받는 가정 중에서 필수 영양소가 함유된 식품을 제대로 챙기지 못할 수도 있다고 추측했다. 다음의 두 쿼리는 지원금을 영양성분의 함유와는 무관하게 엉뚱한 곳에 사용하는 가정들을 찾아내기 위한 과정을 설명한다.

쿼리1

먼저 위 '쿼리1'의 설탕과 비타민A의 섭취 횟수를 비교해 아래 그림과 같이 '그래프1'로 시각화했다.

그래프1

43개의 가정 모두 설탕이 함유된 식품을 섭취했지만, 일부의 세대만 비타민 A를 포함한 식품을 섭취했다는 사실을 확인했다. 이는 비타민 A 에 대한 인식이 부족했기 때문일 수도 있지만, 이를 구하지 못하는 지역에 거주하고 있을 가능성도 내포하고 있다.

쿼리2

위 가정(사람)들이 정말 문제가 있는지 찾아내기 위해 위와 같이 '쿼리2'를 준비했다. 이 쿼리는 설탕 함유 식품을 일주일 동안 하루도 빠짐없이 구매하고, 비타민A 식품은 1번만 구매한 이력의 케이스들을 조회했다 이는 지원금으로 비타민A 함유 식품을 구매할 수 있음에도 불구하고 설탕 함유 식품만 구매한 가정을 찾아내기 위함이다.

그래프2

위 '그래프2'에서는 16개 가정에서 설탕이 함유된 식품을 구매했지만, 비타민A가 함유된 달걀과 채소를 구매한 가정은 단 1개에 불과함을 알 수 있다. 이에 따라 WFP는 비타민A의 중요성에 대한 인식이 부족한 가정에 대해 영양 교육을 진행했고, 지원금 대신 비타민A가 함유된 식품으로 교환할 수 있는 쿠폰을 도입하는 등의 솔루션을 내놓을수 있었다.

■ 기아 문제 해결을 위한 기술의 발전

WFP는 2030년까지 기아문제 해결, 식량 안보 달성, 영양문제 개선 등을 목표로 ‘제로 헝거(Zero Hunger)’라는 슬로건을 내세우고 있다. 지금까지 많은 진전이 있었지만, 아직까지는 가야할 길은 멀다. 목표 달성을 위해 지속적인 데이터 분석과 연구 개발을 진행하고, 계속해서 보완책을 마련해내야 할 것이다. 정부와 시민 단체에서는 IT 기술의 효용성을 파악해 투자와 기술 혁신에 힘써야 할 것이다.

관련기사

※ 참조

WFP는 기아 문제 해결을 위해 비트나인의 아젠스그래프를 포함한 여러가지 IT 기술을 사용하고 있고, 해당 내용에 관해 영국의 테크니컬 라이터인 조 스티치버리가 2019년 ‘DZone’에 기고한 내용을 번역 및 각색한 글이다.

*본 칼럼 내용은 본지 편집방향과 다를 수 있습니다.