skip to main content
research-article

Database compression on graphics processors

Published:01 September 2010Publication History
Skip Abstract Section

Abstract

Query co-processing on graphics processors (GPUs) has become an effective means to improve the performance of main memory databases. However, this co-processing requires the data transfer between the main memory and the GPU memory via a low-bandwidth PCI-E bus. The overhead of such data transfer becomes an important factor, even a bottleneck, for query co-processing performance on the GPU. In this paper, we propose to use compression to alleviate this performance problem. Specifically, we implement nine lightweight compression schemes on the GPU and further study the combinations of these schemes for a better compression ratio. We design a compression planner to find the optimal combination. Our experiments demonstrate that the GPU-based compression and decompression achieved a processing speed up to 45 and 56 GB/s respectively. Using partial decompression, we were able to significantly improve GPU-based query co-processing performance. As a side product, we have integrated our GPU-based compression into MonetDB, an open source column-oriented DBMS, and demonstrated the feasibility of offloading compression and decompression to the GPU.

References

  1. D. Abadi, S. Madden, and M. Ferreira. Integrating compression and execution in column-oriented database systems. In SIGMOD, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. D. J. Abadi, S. R. Madden, and N. Hachem. Column-stores vs. row-stores: how different are they really? In SIGMOD, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. P. A. Alsberg. Space and time savings through large data base compression and dynamic restructuring. Proceedings of the IEEE, 1975.Google ScholarGoogle ScholarCross RefCross Ref
  4. N. Bandi, C. Sun, D. Agrawal, and A. E. Abbadi. Hardware acceleration in commercial databases: a case study of spatial operations. In VLDB, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. C. Binnig, S. Hildenbrand, and F. Faerber. Dictionary-based order-preserving string compression for main memory column stores. In SIGMOD, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. P. Boncz, M. Zukowski, and N. Nes. Monetdb/x100: Hyper-pipelining query execution. In CIDR, 2005.Google ScholarGoogle Scholar
  7. P. A. Boncz. Monet: A Next-Generation DBMS Kernel For Query-Intensive Applications. PhD thesis, CWI, 2002.Google ScholarGoogle Scholar
  8. S. Che, M. Boyer, J. Meng, D. Tarjan, J. W. Sheaffer, and K. Skadron. A performance study of general-purpose applications on graphics processors using CUDA. In Journal of Parallel and Distributed Computing, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. S. Ding, J. He, H. Yan, and T. Suel. Using graphics processors for high performance ir query processing. In WWW, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. W. Fang, M. Lu, X. Xiao, B. He, and Q. Luo. Frequent itemset mining on graphics processors. In DaMoN, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. N. K. Govindaraju, J. Gray, R. Kumar, and D. Manocha. Gputerasort: High performance graphics coprocessor sorting for large database management. In SIGMOD, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. N. K. Govindaraju, S. Larsen, J. Gray, and D. Manocha. A memory model for scientific algorithms on graphics processors. In Supercomputing, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. N. K. Govindaraju, B. Lloyd, W. Wang, M. Lin, and D. Manocha. Fast computation of database operations using graphics processors. In SIGMOD, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. G. Graefe and L. D. Shapiro. Data compression and database performance. In Applied Computing, 1991.Google ScholarGoogle Scholar
  15. S. Harizopoulos, V. Liang, D. J. Abadi, and S. Madden. Performance tradeoffs in read-optimized databases. In VLDB, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. B. He, W. Fang, Q. Luo, N. K. Govindaraju, and T. Wang. Mars: a mapreduce framework on graphics processors. In PACT, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. B. He, N. K. Govindaraju, Q. Luo, and B. Smith. Efficient gather and scatter operations on graphics processors. In SC, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. B. He, M. Lu, K. Yang, R. Fang, N. K. Govindaraju, Q. Luo, and P. V. Sander. Relational query co-processing on graphics processors. In TODS, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. B. He, K. Yang, R. Fang, M. Lu, N. K. Govindaraju, Q. Luo, and P. V. Sander. Relational joins on graphics processors. In SIGMOD, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. A. L. Holloway and D. J. DeWitt. Read-optimized databases, in depth. In VLDB, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. K. A. Hua and C. Lee. Handling data skew in multiprocessor database computers using partition tuning. In VLDB, 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. C. Kim, J. Chhugani, N. Satish, E. Sedlar, A. D. Nguyen, T. Kaldewey, V. W. Lee, S. A. Brandt, and P. Dubey. FAST: fast architecture sensitive tree search on modern cpus and gpus. In SIGMOD, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. M. D. Lieberman, J. Sankaranarayanan, and H. Samet. A fast similarity join algorithm using graphics processing units. In ICDE, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. M. Poess and D. Potapov. Data compression in oracle. In VLDB, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. M. Stonebraker, D. J. Abadi, A. Batkin, X. Chen, M. Cherniack, M. Ferreira, E. Lau, A. Lin, S. Madden, E. O'Neil, P. O'Neil, A. Rasin, N. Tran, and S. Zdonik. C-store: a column-oriented dbms. In VLDB, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. T. Willhalm, N. Popovici, Y. Boshmaf, H. Plattner, A. Zeier, and J. Schaffner. SIMD-scan: ultra fast in-memory table scan using on-chip vector processing units. In VLDB, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. R. Wu, B. Zhang, and M. Hsu. GPU-accelerated large scale analytics. Technical report, HP, 2009.Google ScholarGoogle Scholar
  28. M. Zukowski, S. Heman, N. Nes, and P. Boncz. Super-scalar RAM-CPU cache compression. In ICDE, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Database compression on graphics processors
      Index terms have been assigned to the content through auto-classification.

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image Proceedings of the VLDB Endowment
        Proceedings of the VLDB Endowment  Volume 3, Issue 1-2
        September 2010
        1658 pages

        Publisher

        VLDB Endowment

        Publication History

        • Published: 1 September 2010
        Published in pvldb Volume 3, Issue 1-2

        Qualifiers

        • research-article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader