본문 바로가기
SingleStoreDB/사례연구

[사례 연구, 금융] 머신러닝기반 실시간 이상거래 탐지(미국 메이저 은행)

by 에이플랫폼 [Team SingleStore Korea] 2021. 8. 10.

이 사례 연구는 SingleStore의 제품 마케팅 수석 이사인 Mike Boyarski가 웨비나 세션의 일부로 발표했습니다. Mike는 웨비나를 통해 수십 년 동안 축적된 기술 솔루션을 보유하고 있으며 오늘날의 요구 사항을 충족시키기 위해 인프라를 즉시 발전시켜야 하는 금융 서비스 기관이 직면한 과제에 대해 설명합니다. 웨비나에서도 설명되고 있습니다만, Mike는 주요 미국 은행이 SingleStore를 핵심으로 하는 새로운 스트리밍 데이터 아키텍처를 어떻게 작성했는지를 보여줍니다. SingleStore를 사용하여 이들은 머신러링 모델을 실시간으로 적용하면서 하룻밤 사이에 이루어지는 배치 이상거래 탐지 방식에서 "on the swipe"(실시간) 이상거래 탐지 방식으로 전환할 수 있었습니다. 그는 금융 서비스 및 기타 분야에서 유사한 사용 사례에 사용할 수 있는 레퍼런스 아키텍처를 제시합니다.


 

이 사례 연구는 주요 개인 뱅킹 및 신용 카드 발급사가 실시간으로 이상거래를 방지하는 데 사용할 수 있는 레퍼런스 아키텍처를 제시하거나 다른 많은 실시간 분석 사용 사례에도 적용할 수 있습니다. 또한 SingleStore가 더 빠른 수집, 실시간 스코어링 및 광범위한 이벤트 세트에 대한 신속한 응답을 가능하게 하는 고성능 데이터 플랫폼을 제공하여 이상거래 탐지 서비스에 우위를 제공하는 방법을 설명합니다. Areeba 사례 연구에 설명된 대로 금융 서비스의 다른 SingleStore 고객도 유사한 아키텍처를 사용하고 있습니다.

 

이 사례 연구는 원래 웨비나 시리즈인 "How Data Innovation is Transforming Banking"의 일부로 제공되었습니다. 이 시리즈는 다음과 같은 세 개의 블로그 게시물에 설명된 여러 웨비나를 포함합니다.

 

다음 두 가지 사례 연구도 포함됩니다.

또한, SingleStore의 금융 서비스 솔루션 안내서에서 SingleStore를 산업 전반에 적용할 수 있는 활용 사례와 레퍼런스 아키텍처를 포함한 금융 서비스 영역에서의 SingleStore 활용에 대해서도 알아 볼 수 있습니다.

실시간 이상거래 사례 연구

이 사례는 신용카드 솔루션이었으며, SingleStore의 고객은 표준 SQL을 사용한 고성능의 민첩한 이상거래 탐지 플랫폼을 제공하기를 원했으나, 요구되는 성능은 까다로웠습니다.

고객은 카드가 승인 또는 거부될 때까지 1초안에 응답해야 하며, 매우 정교한 수많은 쿼리세트를 약 50밀리초 이내에 실행해야 합니다. 이 응용프로그램에서는 약 70가지 가치있는 피처(feature)의 레코드를 참조하고 있습니다. 그래서 우리는 그것이 어떻게 보이는지에 대해 살펴보고자 합니다.

처리는 터미널 또는 POS(Point Of Sale; 판매 시점 정보 관리) 시스템에서의 트랜잭션 요청으로 시작됩니다. 요청이 발생하면 해당 이벤트가 은행의 온라인 트랜잭션 처리(OLTP) 응용프로그램으로 수집됩니다. 그리고 해당 요청은 해당 OLTP 응용프로그램에 의해 다양한 쿼리로 변환됩니다.

이 이벤트를 식별하고 시간이 지남에 따라 발생할 수 있는 다른 여러 활동과 일치시켜야 하는 다양한 모델이 있습니다. 그리고 이 응용프로그램에서는 다시 약 70개의 쿼리가 실행되고 있습니다. 따라서 지난 며칠, 몇 개월, 몇 년 동안 이 고객과 해당 공급업체 간의 계약을 확인하는 이벤트를 실행하고 있습니다. 그들은 그 고객과 판매자 대한 동향을 파악하려고 노력하고 있습니다. 그들은 또한 이전 종류의 거래에 대한 위치 이벤트 정보와 이벤트가 발생한 위치에서의 다른 활동들을 보고 있습니다.

모든 단일 쿼리를 나열하지 않고 SingleStore에 있는 레퍼런스 스토어에 대해 모두 병렬로 실행되는 고유한 쿼리 세트가 있습니다. SingleStore는 실시간 운영 데이터 저장소입니다. 따라서 이것은 스코어링을 위해 상당히 정교한 모델에 대해 점검을 제공하는 것입니다. 따라서 데이터는 SingleStore에서 분석됩니다. 우리는 하루가 끝날 때 70개의 독특한 쿼리에 대해 점수를 매기고 기본적으로 가장 최근의 거래에 대해 '예' 또는 '아니오'를 제공합니다. 그리고 필요한 시간(약 50밀리초) 내에 스코어링 서비스를 제공할 수 있습니다.

그리고, 궁극적으로 이 고객은 민첩성을 높여 시간이 지남에 따라 더 많은 피처 추출 쿼리를 추가하여 지속적인 인사이트(데이터에서 추출된)를 사용하여 모델을 계속 최적화할 수 있게 되었습니다. 이것을 일부 고객이 활용하고 있는 다양하고 새로운 이상거래 방지 기술에 대한 인사이트를 위해 조정되는 지속적으로 움직이는 모델이라고 생각하십시오.

그래서, SingleStore 이전에 사용하던 이전 솔루션을 비교 및 ​​대조할 때 야간 배치 작업을 활용하고, 각 고객에 대한 이러한 기능 레코드를 누적하고, 밤새 분석을 수행하고, 점수가 실제로 정확한지 확인하려고 했습니다. 신용 카드 또는 직불 카드 세부 정보를 분실한 적이 있는 분들은 아시겠지만, 밤까지 점검이 발생하지 않으면, 사기범은 하루에 여러 번 카드를 사용할 수 있습니다. 이상거래는 수익 손실을 초래하였습니다.

또한, 그들이 가진 또 다른 문제는 이상거래 모델을 쉽게 변경할 수 없다는 것이었습니다. 따라서 업데이트 일환으로 처리되는 피처를 반복하고 새 쿼리를 추가하는 것은 매우 느렸습니다. 이상거래의 프로파일이나 지문을 식별할 수 있을 때, 진행중이거나 진행예정인 이상거래의 출처나 유형을 포착하기 위해 시스템을 업데이트하는 데 몇 주가 걸렸습니다.

실시간 이상거래 탐지를 위한 SingleStore의 장점

결과적으로 그들은 SingleStore로 이동하는 데에는 여러 가지 이유가 있었습니다. 하나는 동시에 실행되는 매우 정교한 수많은 쿼리세트가 50밀리초 이내에 실행되길 원했다는 것입니다. 이전 시스템에서는 불가능한 일이었습니다. 그 시스템은 일관성이 없었기 때문에 안정적인 성능을 얻지 못했습니다.

SingleStore에서 얻은 흥미로운 점은 표준 SQL을 사용하여 모델 스코어에 새로운 피처를 추가하여 반복적으로 수행할 수 있다는 것입니다. 이를 통해 시스템을 재설계하거나 이전 시스템의 일부였던 장기간의 변경 관리 프로세스를 기다릴 필요 없이 플랫폼을 유연하게 갱신할 수 있게 되었습니다. 이전 시스템의 문제 중 많은 부분이 비표준, 즉 non-SQL 또는 비관계형 기반 기술을 사용하고 있다는 사실과 관련이 있었습니다.​

따라서 궁극적으로 그들이 모델링할 수 있는 것은 이러한 지속적인 개선과 실시간 개선으로 말 그대로 수천만 달러에서 수억 달러에 이르는 비용 절감과 이상거래로 인한 손실을 줄일 수 있다는 것입니다. 따라서 표준 SQL을 사용하는 이상거래 탐지 플랫폼의 민첩성을 높이고, 고객이 경험과 서비스의 중단을 눈치채지 못하도록 우수한 성능을 제공하는 한편, 비용을 절감하고 고급 서비스를 통해 수익을 창출하는 것이 중요합니다.

SingleStore개요

SingleStore는 많은 은행에서 사용됩니다. 왜냐하면, 친숙한 관계형 SQL과 정기적인 가격/성능이 경쟁사에 비해 우수하기 때문입니다.

이 다이어그램은 SingleStore의 특징을 요약합니다. SingleStore의 고객이 구현해 낼 수 있는 많은 레퍼런스 아키텍처와 관련된 형태로 세일즈 포인트를 요약하기 때문에 이것을 "markitecture"(마키텍처) 다이어그램이라고 부릅니다.

SingleStore는 속도, 규모 및 SQL을 모두 하나의 패키지로 제공하는 것으로 유명합니다. 물론 대부분의 데이터베이스는 속도가 빠르다고 하겠지만, SingleStore는 아마도 세계에서 가장 빠른 데이터베이스일 것입니다. 그 이유는 플랫폼에 대한 데이터 파이프라인 전체를 최적화할 수 있기 때문입니다. lock-free 아키텍처가 있으므로 Kafka 또는 사용자 지정 응용프로그램 로직 및 변경 데이터 캡처(CDC) 로직에서 스트리밍 이벤트를 처리할 수 있습니다.

따라서 SingleStore는 데이터를 플랫폼에 효율적으로 가져온 다음 그 데이터에 대한 쿼리를 시장의 데이터 웨어하우스 제품과 같은 속도로 실행할 수 있습니다. 여기에는 Teradata, Vertica 등과 같은 훌륭한 레거시 플랫폼과 최신 클라우드 기반 데이터 웨어하우스도 포함됩니다. SingleStore는 빠르고 디스크 기반의 강력한 columnstore 엔진과 메모리 내에서 동작하는 강력한 rowstore 엔진이 있습니다. 다음은 SingleStore의 기반과 아키텍처에 대한 설명입니다.

앞서 분산 확장 아키텍처를 기반으로 하는 SingleStore의 스케일 아웃에 대해 언급했습니다. 이것은 노드 기반의 비공유(shared-nothing) 아키텍처입니다. 이것이 SingleStore를 매우 빠르게 만드는 이유입니다. 그리고 기존의 툴들과 연계되어 있는 관계형 SQL이 시스템에서 데이터를 가져오는 가장 쉬운 방법이라고 생각하기 때문에 관계형 SQL을 강력히 믿고 있습니다. 더욱 중요한 것은 대부분의 조직내에 이미 존재하는 스킬 셋 에서도 작동한다는 것입니다.

아키텍처 및 에코시스템 지원 측면에서 좌측에 있는 것처럼 Kafka, Hadoop/HDFS, AWS S3, Spark 및 사용자 지정 파일 시스템과 같은 다양한 소스에서 데이터를 수집할 수 있습니다. 따라서 SingleStore수집 기술은 최고 수준이며 대부분의 은행을 비롯한 많은 고객이 우리 플랫폼을 선호하는 또 다른 이유입니다.

데이터가 SingleStore에 도착하면 두 개의 서로 다른 스토리지 엔진이 있습니다. 포인트 조회, 트랜잭션에 대해 매우 빠르고, ACID를 완전히 준수하는 메모리 기반 Rowstore 가 있습니다. 물론 전통적인 데이터 웨어하우스처럼 보이고 느껴지는 Columnstore 엔진도 있습니다. 압축기능이 매우 우수하며, 빠른 집계 쿼리를 쿼리하고 수행할 수 있습니다. 1초에 1조 행 스캔에 대한 성능 시험을 수행했습니다. 따라서 데이터 웨어하우스 유형의 작업에서도 매우 빠릅니다.

그리고, SingleStore는 JSON, 관계형 구조, 키-값, 시계열 등 최신 데이터베이스에서 기대할 수 있는 모든 유연한 데이터 유형을 제공합니다. 배포 유연성은 대부분 Kubernetes 및 컨테이너 지원을 기반으로 합니다. 클라우드와 자체 온프레미스 인프라에서 무엇이든 실행할 수 있습니다. 물론 베어메탈이나 다른 Linux 환경에서 실행하는 경우도 가능합니다.

마지막으로, 아키텍처에 대해 좀 더 자세히 알아보면 ACID를 완전히 준수합니다. 즉, 트랜잭션을 커밋, 보장 및 디스크에 기록이 가능합니다. 또한, 우리는 모든 이벤트를 독자적인 개체로 취급하며 SingleStore는 ANSI SQL과 완전히 호환되며 최신 데이터베이스에서 기대할 수 있는 모든 유연한 데이터 유형을 지원합니다.

SingleStore의 데이터 수집은 세계 최고 수준입니다. 응용프로그램 요구 사항에 따라 병렬 스트림 수집을 수행할 수 있으며 Rowstore, Columnstore 또는 둘 다에 직접 수집할 수 있습니다. 필요한 SLA 결과를 얻기 위한 최상의 프로세스 흐름을 결정할 수 있는 유연성을 제공하는 것이 고객이 이 플랫폼을 선호하는 이유입니다.

 

SingleStore는 비공유(shared-nothing), 대규모 병렬 처리(Massively Parallel Processing), 고도의 동시성 데이터베이스입니다. 즉, 많은 사용자가 시스템에 접근하고 있는 경우나 대량의 데이터 수집 포인트가 시스템에 들어오는 경우 대부분의 다른 플랫폼과 달리 당사 플랫폼의 동시성은 문제가 되지 않습니다.

이상거래 탐지 응용프로그램에 필요한 기능 및 쿼리 유형에 대해 깊이 있게 다룰 수 있지만 오늘 우리의 목표는 실시간 이상거래 응용프로그램에 적합한지 이해하기 위한 출발점을 제공하는 것이었습니다. 이것으로 SingleStore가 실시간 이상거래 탐지에 어떻게 적용되고 있는지에 대한 이야기를 마치겠습니다.

SingleStore.com에서 SingleStore에 대한 자세한 내용을 확인하거나, 무료로 SingleStore를 사용해 볼 수 있습니다.

 

August 25th, 2019

Floyd Smith

 

 


 

출처: https://www.singlestore.com/blog/case-study-fraud-detection-on-the-swipe/

 

Case Study: Fraud Detection “On the Swipe” For a Major US Bank

This case study shows how a major US bank created a new streaming data architecture, with SingleStore at its core, for fraud detection "on the swipe," applying machine learning models in real time.

www.singlestore.com

 

 

 www.a-platform.biz | info@a-platform.biz