Skip to main content
QUICK REVIEW

[논문 리뷰] Boosting XML Filtering with a Scalable FPGA-based Architecture

Abhishek Mitra, Marcos R. Vieira|ArXiv.org|2009. 09. 09.
Advanced Database Systems and Queries참고 문헌 21인용 수 39
한 줄 요약

이 논문은 XML 필터링을 가속화하기 위한 순수 하드웨어 기반, FPGA 기반 아키텍처를 제안한다. XPath 쿼리를 정규 표현식으로 변환하고, 현장에 통합된 스택을 사용하여 FPGA에 구현함으로써 확장성 있고 고처리량의 경로 쿼리 처리를 실현한다. 이 방법은 단일 FPGA 장치에서 파싱과 필터링을 함께 구현함으로써 프로세서 간 통신 오버헤드를 제거하여 기존 소프트웨어 또는 하이브리드 시스템 대비 처리량을 10배 이상 향상시킨다.

ABSTRACT

The growing amount of XML encoded data exchanged over the Internet increases the importance of XML based publish-subscribe (pub-sub) and content based routing systems. The input in such systems typically consists of a stream of XML documents and a set of user subscriptions expressed as XML queries. The pub-sub system then filters the published documents and passes them to the subscribers. Pub-sub systems are characterized by very high input ratios, therefore the processing time is critical. In this paper we propose a "pure hardware" based solution, which utilizes XPath query blocks on FPGA to solve the filtering problem. By utilizing the high throughput that an FPGA provides for parallel processing, our approach achieves drastically better throughput than the existing software or mixed (hardware/software) architectures. The XPath queries (subscriptions) are translated to regular expressions which are then mapped to FPGA devices. By introducing stacks within the FPGA we are able to express and process a wide range of path queries very efficiently, on a scalable environment. Moreover, the fact that the parser and the filter processing are performed on the same FPGA chip, eliminates expensive communication costs (that a multi-core system would need) thus enabling very fast and efficient pipelining. Our experimental evaluation reveals more than one order of magnitude improvement compared to traditional pub/sub systems.

연구 동기 및 목표

  • 증가하는 데이터 볼륨과 복잡한 필터링 워크로드로 인해 고처리량 XML 기반 퍼블리시-서브스크립션 시스템에서 발생하는 성능 저하 문제를 해결하기 위해.
  • 단일 FPGA 장치에 XML 파싱 및 필터링 논리를 함께 위치시켜 통신 지연을 제거하고 처리량을 향상시키기 위해.
  • 다양한 종류의 XPath 쿼리를 지원하는 순수 하드웨어 솔루션을 통해 확장성 있고 고처리량의 XML 필터링을 실현하기 위해.
  • 기존 소프트웨어 또는 하이브리드 하드웨어/소프트웨어 아키텍처보다 훨씬 높은 처리 속도를 달성하기 위해.

제안 방법

  • 효율적인 하드웨어 매핑을 위해 사용자 지정 XPath 쿼리를 등가의 정규 표현식으로 변환하기 위해.
  • 계층적 경로 표현식을 처리하기 위해 확장 가능한 스택 기반 아키텍처를 사용하여 FPGA에 정규 표현식 엔진을 구현하기 위해.
  • 저지연, 파이프라인 처리를 가능하게 하기 위해 XML 파서와 필터 논리를 동일한 FPGA 내에 통합하기 위해.
  • 스트리밍 XML 문서에 대한 고처리량을 달성하기 위해 병렬성과 하드웨어 수준 최적화를 활용하기 위해.
  • 동적 쿼리 업데이트와 효율적 자원 활용을 지원하는 모듈러하고 확장 가능한 FPGA 아키텍처 설계하기 위해.
  • 모든 처리 단계—파싱, 매칭, 필터링—을 단일 FPGA 장치 내에서 유지하여 데이터 이동 최소화하기 위해.

실험 결과

연구 질문

  • RQ1순수 하드웨어 기반 FPGA 아키텍처가 퍼블리시-서브스크립션 시스템에서 XML 필터링에 있어 기존 소프트웨어 또는 하이브리드 시스템보다 현저히 높은 처리량을 달성할 수 있는가?
  • RQ2어떻게 하면 FPGA에 효율적으로 구현 가능한 정규 표현식에 적합한 방식으로 XPath 쿼리를 효과적으로 변환할 수 있는가?
  • RQ3어떤 아키텍처 기법이 FPGA에서 계층적 XML 경로 쿼리의 확장성 있고 고처리량 처리를 가능하게 하는가?
  • RQ4단일 FPGA 장치에 파싱 및 필터링 논리를 함께 위치시킴으로써 얼마나 낮은 지연과 통신 오버헤드를 줄일 수 있는가?
  • RQ5이 FPGA 네이티브 접근 방식을 통해 처리량과 확장성 측면에서 어떤 성능 향상이 달성될 수 있는가?

주요 결과

  • 제안된 FPGA 기반 아키텍처는 기존 소프트웨어 기반 퍼블리시-서브스크립션 시스템 대비 처리량이 10배 이상 향상된다.
  • 동일한 FPGA 칩에 파싱 및 필터링을 통합함으로써 고비용의 프로세서 간 통신을 제거하여 효율적인 파이프라인 처리와 저지연 작동이 가능해진다.
  • 현장 내 스택의 사용으로 다양한 종류의 경로 쿼리를 효율적으로 표현하고 처리할 수 있으며, 복잡한 XPath 패턴을 지원한다.
  • XPath를 정규 표현식으로 하드웨어 매핑함으로써 실시간 XML 스트림 워크로드에 적합한 고처리량, 확장 가능한 처리가 가능해진다.
  • 시스템은 강력한 확장성을 보이며, 고용량, 저지연 콘텐츠 기반 라우팅 환경에의 구현에 적합하다.

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

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

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

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