Skip to main content
QUICK REVIEW

[논문 리뷰] Spreadsheets for Stream Partitions and Windows

Martin Hirzel, Rodric Rabbah|arXiv (Cornell University)|2015. 03. 13.
Advanced Database Systems and Queries참고 문헌 2인용 수 3
한 줄 요약

이 논문은 스트림 처리 연산자를 효율적으로 프로그래밍할 수 있도록 스프레드시트에 WINDOW 및 PARTITION라는 두 가지 새로운 기능을 도입함으로써 스프레드시트를 확장한다. 이러한 확장 기능은 가변 크기의 윈도우와 키 기반 데이터 파artitioning을 통한 반응형, 상태 없는 계산을 가능하게 하여 도메인 전문가가 저수준 프로그래밍 없이도 직접 스프레드시트에서 확장성 있고 실시간 스트리밍 애플리케이션을 구축할 수 있도록 한다.

ABSTRACT

We discuss the suitability of spreadsheet processors as tools for programming streaming systems. We argue that, while spreadsheets can function as powerful models for stream operators, their fundamental boundedness limits their scope of application. We propose two extensions to the spreadsheet model and argue their utility in the context of programming streaming systems.

연구 동기 및 목표

  • 무한대이고 고용량인 스트리밍 데이터를 처리하는 데 있어 전통적인 스프레드시트의 한계를 해결하기 위해, 스트리밍 전용 연산을 지원하도록 모델을 확장한다.
  • 스프레드시트에는 익숙하지만 저수준 스트리밍 프로그래밍에는 익숙하지 않은 도메인 전문가가 독립적으로 스트리밍 연산자를 개발하고 배포할 수 있도록 한다.
  • 스프레드시트의 유한한 성질이 스트리밍 워크로드에서 윈도우링과 파artitioning에 대한 표현력을 제한하는 문제를 해결한다.
  • 스프레드시트의 반응형, 상태 없는, 조합 가능한 성질을 유지하면서도, 동적 데이터 스트림에 대해 확장성 있고 인크리멘탈 계산을 가능하게 한다.

제안 방법

  • 하나의 셀이 동적 값 목록(예: 최근 60초 간의 거래)을 저장할 수 있도록 하는 새로운 WINDOW 함수를 도입한다. 이는 SUM, AVERAGE, COUNT 등의 집계 함수에 전달될 수 있다.
  • 새로운 값이 윈도우에 도착할 때만 재계산을 트리거함으로써 반응성을 확보하여 성능과 반응성을 유지한다.
  • 비집약 함수를 거부함으로써 타입 안정성을 강제함으로써 잘못된 사용을 방지하고 의미가 예측 가능한 상태를 유지한다.
  • PARTITION 함수를 도입하여 SELECT와 유사하게 동작하지만, 각 고유한 키(예: 주식 티커)마다 별도의 고립된 계산 인스턴스를 생성함으로써 코드 중복 없이 키 기반 처리를 가능하게 한다.
  • 스프레드시트 내의 PARTITION 함수 간에 키 일관성을 강제하여 의미적 모순을 방지하고 효율적이고 확장 가능한 실행을 지원한다.
  • 확장된 모델을 ActiveSheets에 통합함. ActiveSheets는 Microsoft Excel 기반 플랫폼으로, 스프레드시트 논리를 IBM InfoSphere Streams용 SPL 연산자로 내보낸다.

실험 결과

연구 질문

  • RQ1가변 크기의 윈도우를 지원하는 스프레드시트가 실시간 스트리밍 처리 워크로드를 효과적으로 모델링하고 실행할 수 있는가?
  • RQ2스프레드시트에서 키 기반 파artitioning을 어떻게 모델링할 수 있는가? 이를 통해 코드 중복 없이 키 기반 처리를 지원할 수 있는가?
  • RQ3무한대 데이터 스트림에 대해 반응형, 인크리멘탈 계산을 지원하기 위해 스프레드시트 모델에 어떤 확장이 필요한가?
  • RQ4윈도우링과 파artitioning과 같은 복잡한 스트리밍 연산을 지원하면서도, 스프레드시트의 반응형 및 상태 없는 의미 체계를 유지할 수 있는가?
  • RQ5도메인 전문가가 저수준 프로그래밍 없이도 스프레드시트 인터페이스만으로도 확장성 있는 스트리밍 애플리케이션을 개발하고 배포할 수 있는 정도는 어느 정도인가?

주요 결과

  • WINDOW 함수는 셀이 동적 값 목록을 저장할 수 있도록 하여 가변 크기의 윈도우(예: 최근 1분 간의 데이터)를 자연스럽고 효율적으로 모델링할 수 있도록 한다. 새로운 입력이 들어올 때마다 재계산이 트리거된다.
  • SUM 및 AVERAGE와 같은 집계 함수는 새로운 값이 윈도우에 도착할 때마다 인크리멘탈로 업데이트될 수 있어 성능과 반응성을 유지한다.
  • PARTITION 함수는 하나의 키(예: 한 종목의 심볼)에 대해 하나의 계산을 정의할 수 있도록 하며, 이는 데이터 스트림 내의 고유한 키 수만큼 자동으로 복제된다.
  • PARTITION 함수 간에 일관된 키를 요구함으로써 모델은 정확성을 보장하고 런타임 충돌 없이 효율적이고 확장 가능한 실행을 가능하게 한다.
  • 확장 기능은 스프레드시트의 반응형, 상태 없는, 조합 가능한 성질을 유지하여 도메인 전문가가 Excel에서 복잡한 스트리밍 연산자를 직접 구축하고 내보낼 수 있도록 한다.
  • 이 방법은 저수준 프로그래밍이나 외부 조율 없이도 유연하고 재사용 가능한 스트리밍 논리(예: VWAP 기반의 할인 탐지)를 빠르게 개발할 수 있도록 한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.