대규모 그래프 데이터를 다루는 데 있어 기존 방식의 비효율성을 해결하기 위해 '아이스버그 포맷(Icebug-format)'이라는 새로운 표준이 등장했습니다. 이 포맷은 그래프 데이터를 디스크와 메모리에서 효율적으로 저장하고 교환할 수 있도록 설계되었으며, 특히 수십억 개의 엣지(edge)를 가진 초대형 그래프의 로딩 및 처리에 혁신을 가져올 것으로 기대됩니다. 기존 그래프 분석 패키지들이 가변적인(mutable) 그래프 구현 방식을 사용해 대규모 데이터 처리 시 병목 현상을 겪었던 문제를 해결하는 데 초점을 맞춥니다.
아이스버그 포맷은 두 가지 형태로 제공됩니다. '아이스버그 디스크(icebug-disk)'는 아파치 파케이(Apache Parquet) 파일 기반으로 객체 저장 및 영구 저장을 위해 사용되며, '아이스버그 메모리(icebug-memory)'는 아파치 애로우(Apache Arrow) 테이블 기반으로 인-프로세스(in-process) 제로-카피(zero-copy) 접근을 가능하게 합니다. 두 형태 모두 방향성 그래프를 압축 희소 행(CSR: Compressed Sparse Row) 형식으로 표현하여 인접 리스트(adjacency-list) 순회를 빠르게 수행합니다. 특히 아이스버그 디스크는 파케이와 CSR의 조합으로, 특정 구현에 종속되지 않는 개방형 표준이라는 점이 강점입니다. 스키마 변환 도구를 통해 덕DB(DuckDB)나 일반 파케이 파일에서 아이스버그 디스크 포맷으로 쉽게 변환할 수 있으며, 파이애로우(PyArrow), 덕DB, 아파치 데이터퓨전(Apache DataFusion) 등 다양한 백엔드를 지원하여 유연성을 높였습니다.
이러한 표준화된 접근 방식은 그래프 데이터의 상호 운용성(interoperability)을 크게 향상시킵니다. 현재는 레이디버그DB(ladybugdb)가 유일한 구현체이지만, 다른 그래프 데이터베이스들이 이 파케이 레이아웃을 채택한다면, 데이터 변환 없이 여러 구현체 간에 그래프 데이터를 이동할 수 있게 됩니다. 이는 그래프 분석, 머신러닝, 그리고 복잡한 관계형 데이터를 다루는 다양한 분야에서 데이터 처리의 효율성을 극대화하고, 개발자들이 특정 도구에 얽매이지 않고 자유롭게 데이터를 활용할 수 있는 기반을 마련해 줄 것입니다. 결과적으로 대규모 그래프 데이터셋을 활용하는 연구 및 상업적 애플리케이션 개발에 가속도를 붙일 것으로 예상됩니다.