Benchling의 Interactive Analysis 기능 구현을 위한 아키텍처 설계 과정
시장 인사이트 · 벤츨링 테크 · 2024.06.11
Benchling의 Interactive Analysis 기능이 어떻게 설계되고 구현되었는지에 대한 기술적인 여정을 소개하는 글입니다. 과학자들이 데이터를 다른 시스템으로 옮기지 않고도 Benchling 내에서 실시간으로 변환, 시각화 및 분석할 수 있도록 돕는 이 기능은 Apache Parquet와 Apache Arrow를 사용하여 데이터 처리 속도를 최적화했습니다. 또한, DuckDB를 활용한 SQL 기반의 기본 변환과 Pandas/Numpy를 이용한 고급 통계 분석을 결합한 ExecutionEngine 구조를 채택했습니다. 아키텍처 설계 과정에서 발생한 Stateless 서비스 선택, 데이터 캐싱 여부, 그리고 S3 활용 방식에 대한 의사결정 과정도 상세히 다루고 있습니다.