An in-kernel NOSQL cache for range queries using FPGA NIC

Korechika Tamura, Hiroki Matsutani

Research output: Chapter in Book/Report/Conference proceedingConference contribution

1 Citation (Scopus)

Abstract

To make use of big data, various NOSQL data stores have been deployed, such as key-value stores and column-oriented stores. NOSQL data stores typically achieve a high degree of scalability, while specialized for some specific purposes; thus, Polyglot persistence that employs multiple NOSQL data stores complementally is a practical choice toward a high diversity of application demands. We assume various NOSQL data stores running on database servers are accessed by clients via a network. This paper aims to improve performance of the Polyglot persistence by introducing an FPGA-based 10GbE network interface (NIC) and In-Kernel NOSQL Cache (IKNC) implemented in the NIC device driver. IKNC stores query results as a key-value form in a host memory, and the requested data can be returned to clients immediately if the query result has been cached. In the IKNC keyvalue pair, the key is a hashed value of a given search query and the value is a query result of the search query. Existing works have focused only on key-value stores, while that for column-oriented stores that support range queries (e.g., scan operation) has not been addressed. In this paper, we also propose two cache strategies of IKNC for column-oriented stores. In our experiments, Apache HBase is running on an application layer, while our IKNC with the proposed cache strategies is implemented on an FPGA-based NIC and its device driver. A significant performance improvement is achieved by the proposed IKNC and pros and cons of the proposed two cache strategies are demonstrated.

Original languageEnglish
Title of host publication2016 International Conference on FPGA Reconfiguration for General-Purpose Computing, FPGA4GPC 2016
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages13-18
Number of pages6
ISBN (Electronic)9781509013593
DOIs
Publication statusPublished - 2016 Jul 20
Event2016 International Conference on FPGA Reconfiguration for General-Purpose Computing, FPGA4GPC 2016 - Hamburg, Germany
Duration: 2016 May 92016 May 10

Other

Other2016 International Conference on FPGA Reconfiguration for General-Purpose Computing, FPGA4GPC 2016
CountryGermany
CityHamburg
Period16/5/916/5/10

Fingerprint

Interfaces (computer)
Field programmable gate arrays (FPGA)
Scalability
Servers
Data storage equipment
Experiments
Big data

ASJC Scopus subject areas

  • Hardware and Architecture

Cite this

Tamura, K., & Matsutani, H. (2016). An in-kernel NOSQL cache for range queries using FPGA NIC. In 2016 International Conference on FPGA Reconfiguration for General-Purpose Computing, FPGA4GPC 2016 (pp. 13-18). [7518528] Institute of Electrical and Electronics Engineers Inc.. https://doi.org/10.1109/FPGA4GPC.2016.7518528

An in-kernel NOSQL cache for range queries using FPGA NIC. / Tamura, Korechika; Matsutani, Hiroki.

2016 International Conference on FPGA Reconfiguration for General-Purpose Computing, FPGA4GPC 2016. Institute of Electrical and Electronics Engineers Inc., 2016. p. 13-18 7518528.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Tamura, K & Matsutani, H 2016, An in-kernel NOSQL cache for range queries using FPGA NIC. in 2016 International Conference on FPGA Reconfiguration for General-Purpose Computing, FPGA4GPC 2016., 7518528, Institute of Electrical and Electronics Engineers Inc., pp. 13-18, 2016 International Conference on FPGA Reconfiguration for General-Purpose Computing, FPGA4GPC 2016, Hamburg, Germany, 16/5/9. https://doi.org/10.1109/FPGA4GPC.2016.7518528
Tamura K, Matsutani H. An in-kernel NOSQL cache for range queries using FPGA NIC. In 2016 International Conference on FPGA Reconfiguration for General-Purpose Computing, FPGA4GPC 2016. Institute of Electrical and Electronics Engineers Inc. 2016. p. 13-18. 7518528 https://doi.org/10.1109/FPGA4GPC.2016.7518528
Tamura, Korechika ; Matsutani, Hiroki. / An in-kernel NOSQL cache for range queries using FPGA NIC. 2016 International Conference on FPGA Reconfiguration for General-Purpose Computing, FPGA4GPC 2016. Institute of Electrical and Electronics Engineers Inc., 2016. pp. 13-18
@inproceedings{6b69a5604e7847ef864d68c1f4eec5ab,
title = "An in-kernel NOSQL cache for range queries using FPGA NIC",
abstract = "To make use of big data, various NOSQL data stores have been deployed, such as key-value stores and column-oriented stores. NOSQL data stores typically achieve a high degree of scalability, while specialized for some specific purposes; thus, Polyglot persistence that employs multiple NOSQL data stores complementally is a practical choice toward a high diversity of application demands. We assume various NOSQL data stores running on database servers are accessed by clients via a network. This paper aims to improve performance of the Polyglot persistence by introducing an FPGA-based 10GbE network interface (NIC) and In-Kernel NOSQL Cache (IKNC) implemented in the NIC device driver. IKNC stores query results as a key-value form in a host memory, and the requested data can be returned to clients immediately if the query result has been cached. In the IKNC keyvalue pair, the key is a hashed value of a given search query and the value is a query result of the search query. Existing works have focused only on key-value stores, while that for column-oriented stores that support range queries (e.g., scan operation) has not been addressed. In this paper, we also propose two cache strategies of IKNC for column-oriented stores. In our experiments, Apache HBase is running on an application layer, while our IKNC with the proposed cache strategies is implemented on an FPGA-based NIC and its device driver. A significant performance improvement is achieved by the proposed IKNC and pros and cons of the proposed two cache strategies are demonstrated.",
author = "Korechika Tamura and Hiroki Matsutani",
year = "2016",
month = "7",
day = "20",
doi = "10.1109/FPGA4GPC.2016.7518528",
language = "English",
pages = "13--18",
booktitle = "2016 International Conference on FPGA Reconfiguration for General-Purpose Computing, FPGA4GPC 2016",
publisher = "Institute of Electrical and Electronics Engineers Inc.",

}

TY - GEN

T1 - An in-kernel NOSQL cache for range queries using FPGA NIC

AU - Tamura, Korechika

AU - Matsutani, Hiroki

PY - 2016/7/20

Y1 - 2016/7/20

N2 - To make use of big data, various NOSQL data stores have been deployed, such as key-value stores and column-oriented stores. NOSQL data stores typically achieve a high degree of scalability, while specialized for some specific purposes; thus, Polyglot persistence that employs multiple NOSQL data stores complementally is a practical choice toward a high diversity of application demands. We assume various NOSQL data stores running on database servers are accessed by clients via a network. This paper aims to improve performance of the Polyglot persistence by introducing an FPGA-based 10GbE network interface (NIC) and In-Kernel NOSQL Cache (IKNC) implemented in the NIC device driver. IKNC stores query results as a key-value form in a host memory, and the requested data can be returned to clients immediately if the query result has been cached. In the IKNC keyvalue pair, the key is a hashed value of a given search query and the value is a query result of the search query. Existing works have focused only on key-value stores, while that for column-oriented stores that support range queries (e.g., scan operation) has not been addressed. In this paper, we also propose two cache strategies of IKNC for column-oriented stores. In our experiments, Apache HBase is running on an application layer, while our IKNC with the proposed cache strategies is implemented on an FPGA-based NIC and its device driver. A significant performance improvement is achieved by the proposed IKNC and pros and cons of the proposed two cache strategies are demonstrated.

AB - To make use of big data, various NOSQL data stores have been deployed, such as key-value stores and column-oriented stores. NOSQL data stores typically achieve a high degree of scalability, while specialized for some specific purposes; thus, Polyglot persistence that employs multiple NOSQL data stores complementally is a practical choice toward a high diversity of application demands. We assume various NOSQL data stores running on database servers are accessed by clients via a network. This paper aims to improve performance of the Polyglot persistence by introducing an FPGA-based 10GbE network interface (NIC) and In-Kernel NOSQL Cache (IKNC) implemented in the NIC device driver. IKNC stores query results as a key-value form in a host memory, and the requested data can be returned to clients immediately if the query result has been cached. In the IKNC keyvalue pair, the key is a hashed value of a given search query and the value is a query result of the search query. Existing works have focused only on key-value stores, while that for column-oriented stores that support range queries (e.g., scan operation) has not been addressed. In this paper, we also propose two cache strategies of IKNC for column-oriented stores. In our experiments, Apache HBase is running on an application layer, while our IKNC with the proposed cache strategies is implemented on an FPGA-based NIC and its device driver. A significant performance improvement is achieved by the proposed IKNC and pros and cons of the proposed two cache strategies are demonstrated.

UR - http://www.scopus.com/inward/record.url?scp=84991795052&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84991795052&partnerID=8YFLogxK

U2 - 10.1109/FPGA4GPC.2016.7518528

DO - 10.1109/FPGA4GPC.2016.7518528

M3 - Conference contribution

AN - SCOPUS:84991795052

SP - 13

EP - 18

BT - 2016 International Conference on FPGA Reconfiguration for General-Purpose Computing, FPGA4GPC 2016

PB - Institute of Electrical and Electronics Engineers Inc.

ER -