Publish/Subscribe in NonStop SQL: Transactional Streams in a Relational Context

  • Authors:
  • Mike Hanlon;Johannes Klein;Robbert Van der Linden;Hansjörg Zeller

  • Affiliations:
  • -;-;-;-

  • Venue:
  • ICDE '04 Proceedings of the 20th International Conference on Data Engineering
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

Relational queries on continuous streams of data arethe subject of many recent database research projects. In1998 a small group of people started a similar projectwith the goal to transform our product, NonStop SQL/MX,into an active RDBMS. This project tried to integratefunctionality of transactional queuing systems with relationaltables and with SQL, using simple extensions to theSQL syntax and guaranteeing clearly defined query andtransactional semantics. The result is the first commerciallyavailable RDBMS that incorporates streams. Alldata flowing through the system is contained in relationaltables and is protected by ACID transactions. Insert andupdate operations on any NonStop SQL table can be consideredpublishing of data and can therefore be transparentto the (legacy) applications performing them. Unliketriggers, the publish operation does not increase the pathlength of the application and it allows the subscriber toexecute in a separate transaction. Subscribers, using anextended SQL syntax, see a continuous stream of data,consisting of all rows originally in the table plus all rowsthat are inserted or updated thereafter. The system scalesby using partitioned tables and therefore partitionedstreams.