저는 TrueLayer의 수석 머신러닝 엔지니어인 Moreno Raimondo Vendra입니다. 저희 ML 팀은 데이터 집약적인 요구 사항이 있는 조직 내 다른 팀을 지원합니다. 이들이 대량의 데이터를 처리하고, 데이터로부터 통찰력을 얻으며, 이 데이터로부터 머신러닝 모델을 구축하도록 돕고 있죠. 대부분 핵심 TrueLayer 제품 사용 사례에 집중하지만 때로는 연구 프로젝트도 추진합니다.
TrueLayer는 핀테크 회사이자 오픈 뱅킹 제공업체이므로 주로 금융 데이터로 작업합니다. 당사는 GDPR 준수를 보장하면서 고객이 오픈 뱅킹 데이터에 액세스할 수 있도록 합니다. 저희가 참여하는 프로젝트 중에는 추가적인 판매자 정보로 사용자 거래를 강화하는 프로젝트도 있습니다.
프로덕션 데이터베이스 또는 데이터 레이크에 액세스하고 데이터를 다운로드하여 작업할 수 없다는 점 때문에 금융 데이터 작업은 간단한 일이 아닙니다. 데이터에 대한 보안 액세스를 보장하고 쉽게 공유할 수 있는 분석 정보를 생성해야 합니다.
과거에는 독립실행형 AWS EC2 머신이 있었는데 로그인에 애로가 많았습니다. 여러 VPN을 사용하는 데다 임시 개인 자격 증명이 자주 만료되었기 때문이죠. 더 많은 양의 데이터를 처리하기 위해 인스턴스 크기를 쉽게 업그레이드할 수 없었습니다. 물론 새로운 팀원의 온보딩도 고충 중 하나였습니다.
“Datalore을 이용해 보안 요구 사항을 충족하면서 인체 공학적으로 데이터에 액세스할 수 있게 되었고, 이는 획기적인 전환점이 되었습니다. 그 결과, 머신러닝 팀 내에서뿐만 아니라 다른 관련자와도 훨씬 더 쉽게 협업할 수 있었습니다.”
— Moreno Raimondo Vendra, TrueLayer 수석 머신러닝 엔지니어
세 명으로 구성된 머신러닝 팀에서 Datalore를 매우 활발하게 사용하며 회사 내에 관련 작업자가 두 명 더 있습니다.
저희가 작업하는 데이터는 일반적으로 운영 데이터베이스에서 생성되지만 이러한 데이터의 일부를 AWS S3의 데이터 레이크에 저장합니다. 작업 대상이 되는 주요 데이터 유형은 오픈 뱅킹 거래에 대한 개인화되지 않은 메타데이터입니다. 일반적으로 S3용 Python 클라이언트를 통해 여기에 액세스합니다.
또한 로그 및 메트릭과 같은 자체 서비스에서 생성된 데이터도 작업 대상입니다. Datalore를 사용하여 수백 기가바이트의 데이터를 검색해야 하는 복잡한 문제를 디버그할 뿐만 아니라 패턴을 식별하고 데이터를 시각화하고 정보를 공유할 수 있었습니다.
저희는 주로 pandas를 사용하고 정말 직관적인 시각화 탭을 자주 이용합니다. 데이터 탐색이 훨씬 더 빠르고 훨씬 더 향상된 경험을 제공합니다.
여기서도 공동 작업이 이루어집니다. 누군가 데이터를 가져오고 Notebook을 공유하여 팀과 함께 편집할 수 있으며, 그러면 누군가 이를 다시 가져다가 나중에 작업을 계속합니다. wjgml는 항상 모든 Notebook을 보고서로 만들려고 노력합니다. 분석이 끝나면 항상 결론을 추가하고 스토리텔링 방식을 적용하여 작업 내용에 의미를 부여합니다.
Datalore를 사용하면 이 데이터 스토리텔링을 매우 잘 수행할 수 있습니다. 한 곳에서 데이터를 가져오고 Python으로 복잡한 조작을 수행하고(원하는 만큼 깊이 파고들 수 있음) 시각화를 생성하고 결과를 비즈니스 소비자에게 친화적인 형식으로 내보낼 수 있기 때문입니다. 이러한 작업을 여러 도구와 상호 작용할 필요 없이 한 곳에서 할 수 있습니다. PDF 및 정적 보고서를 생성하고 정기적으로 실행되도록 예약하며 시간 경과에 따라 변화하는 기능과 메트릭을 추적할 수 있습니다. 이러한 실행 기록에 액세스할 수 있다는 것은 매우 크게 도움이 됩니다.
“데이터 탐색 및 보고는 매우 매력적인 활용 분야입니다. 하지만 모델 프로토타이핑과 학습 같은 영역에서도 Datalore를 사용하여 데이터에 쉽게 액세스하고 실험을 더 빠르게 진행하는 이점을 누릴 수 있습니다.”
이제 작업 공간에서 Notebook을 구성할 수 있으므로 각 팀원이 특정 프로젝트와 주제에 대해 작업한 내용을 쉽게 추적할 수 있습니다. Github, Gitlab 및 기타 git과 유사한 플랫폼이 있기 때문에 소프트웨어 엔지니어링에서는 이 문제가 이미 해결되었습니다. 하지만 데이터 과학 및 Notebook 공동 작업을 수행하는 조직에게는 간단한 일이 아닙니다.
"Datalore는 협업을 훨씬 더 쉽게 만들어 주었고 이제 모든 중요 작업을 한 곳에서 유지하면서 잘 정리할 수 있게 되었습니다."
TrueLayer에서 저희는 ML 엔지니어 팀으로 활동하며 Notebook을 협업의 중심으로 삼아 페어 프로그래밍을 수행하는 것이 가장 일반적인 작업 방식입니다.
또한 코드 개발을 위해 PyCharm 및 Code With Me 플러그인을 사용합니다. 실시간으로 코드를 편집하는 인터페이스와 경험이 여러 도구에 걸쳐 비슷하다는 점이 정말 마음에 듭니다. 예를 들어, ML 모델용 훈련 스크립트를 실행하면서 첨부된 파일의 Python 스크립트에 대해 실시간으로 공동 작업을 수행할 수 있었습니다. 비디오 채팅이 아닌 코드를 함께 들여다 보면서 문제를 더 쉽고 빠르게 발견하고 수정할 수 있었습니다. 하나의 환경에서 작업 내역을 추적하고 작업 공간에서 작업을 정리할 수 있어 팀의 생산성이 향상됩니다.
기본적으로 Python API인 클러스터에 모델 서버가 배포되어 있습니다. 일반적으로 Datalore에 학습 Notebook이 있고, 모델을 학습하고, 모델 아티팩트(아카이브)를 생성한 다음 이를 클러스터에 배포하는 식으로 작업합니다. 그런 다음 PyCharm과 Code With Me를 사용하여 모델 서버 API를 개발합니다. 다양한 JetBrains 도구에 걸쳐 친숙한 UI를 사용하므로 이 프로세스가 매우 간편합니다.
최근에는 데이터에 정통하고 데이터 제품에 훨씬 더 쉽게 액세스하기를 원하는 소프트웨어 및 데이터 엔지니어들이 많은 관심을 보이고 있습니다. 현재 많은 엔지니어가 Jupyter Notebook이 무엇인지는 알고 있지만 Datalore를 통해 쉽게 데이터 연결을 제공할 수 있다면 소프트웨어 엔지니어의 진입 장벽을 낮추는 데 큰 도움이 될 것입니다.
Hunters 위협 제거 전문가, Netanel Golani
Hunters의 데이터 과학 팀은 Datalore를 사용하기 시작한 지 불과 한 달 밖에 지나지 않았지만 특히 수많은 고객의 데이터 소스를 처리하는 일상적 워크플로에서 생산성과 유용성이 개선된 것을 이미 체감하고 있습니다.
Chad Rosenberg, 기술 책임자, The Center for New Data
Datalore는 파이프라인 결과 디버깅, 웹훅 시도, 자동 플로팅 기능을 통한 빠른 데이터 시각화하는 등 Airflow에서 할 수 없는 데이터 작업 방식을 제공합니다. Datalore의 네이티브 Snowflake 커넥터와 pandas의 프로그래밍 방식 커넥터를 사용할 수 있으므로 공유 Notebook에서 작업할 때 확실히 시간을 절약할 수 있습니다.
Surya Rastogi, 수석 데이터 과학자, Chainalysis
우리에게 가장 큰 과제 중 하나는 블록체인 분야가 빠르게 확장되고 있고 계속해서 쏟아져 나오는 새로운 데이터를 수집하고 분석해야 한다는 것입니다. 회사로서 우리는 많은 데이터 수집 및 처리 역량을 가지고 있으며 계속 성장할 것으로 기대합니다.