Stream-Mode FPGA Acceleration of Complex Pattern Trajectory Querying

  • Roger Moussalli
  • Marcos R. Vieira
  • Walid Najjar
  • Vassilis J. Tsotras
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8098)


The wide and increasing availability of collected data in the form of trajectory has lead to research advances in behavioral aspects of the monitored subjects (e.g., wild animals, people, vehicles). Using trajectory data harvested by devices, such as GPS, RFID and mobile devices, complex pattern queries can be posed to select trajectories based on specific events of interest. In this paper, we present a study on FPGA-based architectures processing complex patterns on streams of spatio-temporal data. Complex patterns are described as regular expressions over a spatial alphabet that can be implicitly or explicitly anchored to the time domain. More importantly, variables can be used to substantially enhance the flexibility and expressive power of pattern queries. Here we explore the challenges in handling several constructs of the assumed pattern query language, with a study on the trade-offs between expressiveness, scalability and matching accuracy. We show an extensive performance evaluation where FPGA setups outperform the current state-of-the-art CPU-based approaches by over three orders of magnitude. Unlike software-based approaches, the performance of the proposed FPGA solution is only minimally affected by the increased pattern complexity.


Regular Expression Trajectory Data Pattern Query Design Space Exploration Query Node 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Chorochronos (2013),
  2. 2.
    Aggarwal, C., Agrawal, D.: On nearest neighbor indexing of nonlinear trajectories. In: Proc. ACM Symp. on Principles of Database Systems (PODS), pp. 252–259 (2003)Google Scholar
  3. 3.
    Cazalas, J., Guha, R.: GEDS: GPU Execution of Continuous Queries on Spatio-Temporal Data Streams. In: IEEE/IFIP Int’l Conf. on Embedded and Ubiquitous Computing (EUC), pp. 112–119 (2010)Google Scholar
  4. 4.
    du Mouza, C., Rigaux, P., Scholl, M.: Efficient evaluation of parameterized pattern queries. In: Proc. ACM Int’l Conf. on Information and Knowledge Management (CIKM), pp. 728–735 (2005)Google Scholar
  5. 5.
    Erwig, M., Schneider, M.: Spatio-Temporal Predicates. IEEE Trans. Knowl. Data Eng. 14(4), 881–901 (2002)CrossRefGoogle Scholar
  6. 6.
    Fender, J., Rose, J.: A High-Speed Ray Tracing Engine Built on a Field-Programmable System. In: Proc. IEEE Int’l Conf. on Field-Programmable Technology (FPT), pp. 188–195 (2003)Google Scholar
  7. 7.
    Hadjieleftheriou, M., Kollios, G., Bakalov, P., Tsotras, V.J.: Complex Spatio-temporal Pattern Queries. In: Proc. Intl. Conf. on Very Large Data Bases (VLDB), pp. 877–888 (2005)Google Scholar
  8. 8.
    Hadjieleftheriou, M., Kollios, G., Tsotras, V.J., Gunopulos, D.: Indexing Spatiotemporal Archives. VLDB J. 15(2), 143–164 (2006)CrossRefGoogle Scholar
  9. 9.
    Heckbert, P.S.: Graphics Gems IV, vol. 4. Morgan Kaufmann (1994)Google Scholar
  10. 10.
    Kim, S.-S., Nam, S.-W., Lee, I.-H.: Fast Ray-Triangle Intersection Computation Using Reconfigurable Hardware. In: Computer Vision/Computer Graphics Collaboration Techniques, pp. 70–81 (2007)Google Scholar
  11. 11.
    Knuth, D., Morris, J., Pratt, V.: Fast Pattern Matching in Strings. SIAM J. Comput. 6(2), 323–350 (1977)MathSciNetzbMATHCrossRefGoogle Scholar
  12. 12.
    Kumar, S., Dharmapurikar, S., Yu, F., Crowley, P., Turner, J.: Algorithms to Accelerate Multiple Regular Expressions Matching for Deep Packet Inspection. In: ACM SIGCOMM Conf. on Applications, Technologies, Architectures, and Protocols for Computer Communications, pp. 339–350 (2006)Google Scholar
  13. 13.
    Mitra, A., Najjar, W., Bhuyan, L.: Compiling PCRE to FPGA for Accelerating SNORT IDS. In: ACM/IEEE Symp. on Architecture for Networking and Communications Systems (ANCS), pp. 127–136 (2007)Google Scholar
  14. 14.
    Mokhtar, H., Su, J., Ibarra, O.: On Moving Object Queries. In: Proc. ACM Symp. on Principles of Database Systems (PODS), pp. 188–198 (2002)Google Scholar
  15. 15.
    Moussalli, R., Halstead, R., Salloum, M., Najjar, W., Tsotras, V.J.: Efficient XML Path Filtering Using GPUs. In: Workshop on Accelerating Data Management Systems, ADMS (2011)Google Scholar
  16. 16.
    Moussalli, R., Najjar, W., Luo, X., Khan, A.: A High Throughput No-Stall Golomb-Rice Hardware Decoder. In: IEEE Annual Int’l Symp. on Field-Programmable Custom Computing Machines, FCCM (2013)Google Scholar
  17. 17.
    Moussalli, R., Salloum, M., Najjar, W., Tsotras, V.: Accelerating XML Query Matching through Custom Stack Generation on FPGAs. In: Patt, Y.N., Foglia, P., Duesterwald, E., Faraboschi, P., Martorell, X. (eds.) HiPEAC 2010. LNCS, vol. 5952, pp. 141–155. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  18. 18.
    Moussalli, R., Salloum, M., Najjar, W., Tsotras, V.J.: Massively Parallel XML Twig Filtering Using Dynamic Programming on FPGAs. In: Proc. IEEE Int’l Conf. on Data Engineering (ICDE) (2011)Google Scholar
  19. 19.
    Mouza, C., Rigaux, P.: Mobility Patterns. Geoinformatica 9(4), 297–319 (2005)CrossRefGoogle Scholar
  20. 20.
    Pfoser, D., Jensen, C., Theodoridis, Y.: Novel Approaches in Query Processing for Moving Object Trajectories. In: Proc. Intl. Conf. on Very Large Data Bases (VLDB), pp. 395–406 (2000)Google Scholar
  21. 21.
    Pico Computing M-Series Modules (2012),
  22. 22.
    Piorkowski, M., Sarafijanovoc-Djukic, N., Grossglauser, M.: A Parsimonious Model of Mobile Partitioned Networks with Clustering. In: Int’l Communication Systems and Networks and Workshops (2009)Google Scholar
  23. 23.
    Sadoghi, M., Labrecque, M., Singh, H., Shum, W., Jacobsen, H.-A.: Efficient Event Processing Through Reconfigurable Hardware for Algorithmic Trading. Proc. VLDB Endow. 3(1-2), 1525–1528 (2010)Google Scholar
  24. 24.
    Attia Sakr, M., Güting, R.H.: Spatiotemporal Pattern Queries in Secondo. In: Mamoulis, N., Seidl, T., Pedersen, T.B., Torp, K., Assent, I. (eds.) SSTD 2009. LNCS, vol. 5644, pp. 422–426. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  25. 25.
    Schmittler, J., Woop, S., Wagner, D., Paul, W.J., Slusallek, P.: Realtime Ray Tracing of Dynamic Scenes on an FPGA Chip. In: Proc. ACM Conf. on Graphics Hardware (HWWS), pp. 95–106 (2004)Google Scholar
  26. 26.
    Sidhu, R., Prasanna, V.K.: Fast Regular Expression Matching Using FPGAs. In: Proc. the Annual IEEE Symp. on Field-Programmable Custom Computing Machines (FCCM), pp. 227–238 (2001)Google Scholar
  27. 27.
    Tao, Y., Papadias, D.: MV3R-Tree: A Spatio-Temporal Access Method for Timestamp and Interval Queries. In: Proc. Intl. Conf. on Very Large Data Bases (VLDB), pp. 431–440 (2001)Google Scholar
  28. 28.
    Tao, Y., Papadias, D., Shen, Q.: Continuous Nearest Neighbor Search. In: Proc. Intl. Conf. on Very Large Data Bases (VLDB), pp. 287–298 (2002)Google Scholar
  29. 29.
    Tao, Y., Papadias, D., Sun, J.: The TPR*-Tree: An Optimized Spatio-Temporal Access Method for Predictive Queries. In: Proc. Intl. Conf. on Very Large Data Bases (VLDB), pp. 790–801 (2003)Google Scholar
  30. 30.
    Teubner, J., Müller, R., Alonso, G.: FPGA Acceleration for the Frequent Item Problem. In: Proc. IEEE Int’l Conf. on Data Engineering (ICDE), pp. 669–680 (2010)Google Scholar
  31. 31.
    Vieira, M.R., Bakalov, P., Tsotras, V.J.: Querying Trajectories Using Flexible Patterns. In: Proc. Int. Conf. on Extending Database Technology (EDBT), pp. 406–417 (2010)Google Scholar
  32. 32.
    Vieira, M.R., Bakalov, P., Tsotras, V.J.: FlexTrack: a System for Querying Flexible Patterns in Trajectory Databases. In: Proc. Int’l Symp. on Advances in Spatial and Temporal Databases (SSTD), pp. 475–480 (2011)Google Scholar
  33. 33.
    Woods, L., Teubner, J., Alonso, G.: Complex Event Detection at Wire Speed with FPGAs. Proc. VLDB Endow. 3(1-2), 660–669 (2010)Google Scholar
  34. 34.
    Zheng, Y., Xie, X., Ma, W.-Y.: GeoLife: A Collaborative Social Networking Service Among User, Location and Trajectory. IEEE Data Engineering Bulletin 33(2), 32–40 (2010)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Roger Moussalli
    • 1
  • Marcos R. Vieira
    • 2
  • Walid Najjar
    • 1
  • Vassilis J. Tsotras
    • 1
  1. 1.University of CaliforniaRiversideUSA
  2. 2.IBM ResearchBrazil

Personalised recommendations