NoSE

Schema design for NoSQL applications

Michael Joseph Mior, Kenneth Salem, Ashraf Aboulnaga, Rui Liu

Research output: Contribution to journalArticle

13 Citations (Scopus)

Abstract

Database design is critical for high performance in relational databases and a myriad of tools exist to aid application designers in selecting an appropriate schema. While the problem of schema optimization is also highly relevant for NoSQL databases, existing tools for relational databases are inadequate in that setting. Application designers wishing to use a NoSQL database instead rely on rules of thumb to select an appropriate schema. We present a system for recommending database schemas for NoSQL applications. Our cost-based approach uses a novel binary integer programming formulation to guide the mapping from the application's conceptual data model to a database schema. We implemented a prototype of this approach for the Cassandra extensible record store. Our prototype, the NoSQL Schema Evaluator (NoSE) is able to capture rules of thumb used by expert designers without explicitly encoding the rules. Automating the design process allows NoSE to produce efficient schemas and to examine more alternatives than would be possible with a manual rule-based approach.

Original languageEnglish
Article number7967690
Pages (from-to)2275-2289
Number of pages15
JournalIEEE Transactions on Knowledge and Data Engineering
Volume29
Issue number10
DOIs
Publication statusPublished - 1 Oct 2017

Fingerprint

Integer programming
Data structures
Costs

Keywords

  • NoSQL
  • Physical design
  • Schema optimization
  • Workload modeling

ASJC Scopus subject areas

  • Information Systems
  • Computer Science Applications
  • Computational Theory and Mathematics

Cite this

NoSE : Schema design for NoSQL applications. / Mior, Michael Joseph; Salem, Kenneth; Aboulnaga, Ashraf; Liu, Rui.

In: IEEE Transactions on Knowledge and Data Engineering, Vol. 29, No. 10, 7967690, 01.10.2017, p. 2275-2289.

Research output: Contribution to journalArticle

Mior, Michael Joseph ; Salem, Kenneth ; Aboulnaga, Ashraf ; Liu, Rui. / NoSE : Schema design for NoSQL applications. In: IEEE Transactions on Knowledge and Data Engineering. 2017 ; Vol. 29, No. 10. pp. 2275-2289.
@article{ee4c281c5ad0466dab2c9e1cf79e3ac8,
title = "NoSE: Schema design for NoSQL applications",
abstract = "Database design is critical for high performance in relational databases and a myriad of tools exist to aid application designers in selecting an appropriate schema. While the problem of schema optimization is also highly relevant for NoSQL databases, existing tools for relational databases are inadequate in that setting. Application designers wishing to use a NoSQL database instead rely on rules of thumb to select an appropriate schema. We present a system for recommending database schemas for NoSQL applications. Our cost-based approach uses a novel binary integer programming formulation to guide the mapping from the application's conceptual data model to a database schema. We implemented a prototype of this approach for the Cassandra extensible record store. Our prototype, the NoSQL Schema Evaluator (NoSE) is able to capture rules of thumb used by expert designers without explicitly encoding the rules. Automating the design process allows NoSE to produce efficient schemas and to examine more alternatives than would be possible with a manual rule-based approach.",
keywords = "NoSQL, Physical design, Schema optimization, Workload modeling",
author = "Mior, {Michael Joseph} and Kenneth Salem and Ashraf Aboulnaga and Rui Liu",
year = "2017",
month = "10",
day = "1",
doi = "10.1109/TKDE.2017.2722412",
language = "English",
volume = "29",
pages = "2275--2289",
journal = "IEEE Transactions on Knowledge and Data Engineering",
issn = "1041-4347",
publisher = "IEEE Computer Society",
number = "10",

}

TY - JOUR

T1 - NoSE

T2 - Schema design for NoSQL applications

AU - Mior, Michael Joseph

AU - Salem, Kenneth

AU - Aboulnaga, Ashraf

AU - Liu, Rui

PY - 2017/10/1

Y1 - 2017/10/1

N2 - Database design is critical for high performance in relational databases and a myriad of tools exist to aid application designers in selecting an appropriate schema. While the problem of schema optimization is also highly relevant for NoSQL databases, existing tools for relational databases are inadequate in that setting. Application designers wishing to use a NoSQL database instead rely on rules of thumb to select an appropriate schema. We present a system for recommending database schemas for NoSQL applications. Our cost-based approach uses a novel binary integer programming formulation to guide the mapping from the application's conceptual data model to a database schema. We implemented a prototype of this approach for the Cassandra extensible record store. Our prototype, the NoSQL Schema Evaluator (NoSE) is able to capture rules of thumb used by expert designers without explicitly encoding the rules. Automating the design process allows NoSE to produce efficient schemas and to examine more alternatives than would be possible with a manual rule-based approach.

AB - Database design is critical for high performance in relational databases and a myriad of tools exist to aid application designers in selecting an appropriate schema. While the problem of schema optimization is also highly relevant for NoSQL databases, existing tools for relational databases are inadequate in that setting. Application designers wishing to use a NoSQL database instead rely on rules of thumb to select an appropriate schema. We present a system for recommending database schemas for NoSQL applications. Our cost-based approach uses a novel binary integer programming formulation to guide the mapping from the application's conceptual data model to a database schema. We implemented a prototype of this approach for the Cassandra extensible record store. Our prototype, the NoSQL Schema Evaluator (NoSE) is able to capture rules of thumb used by expert designers without explicitly encoding the rules. Automating the design process allows NoSE to produce efficient schemas and to examine more alternatives than would be possible with a manual rule-based approach.

KW - NoSQL

KW - Physical design

KW - Schema optimization

KW - Workload modeling

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

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

U2 - 10.1109/TKDE.2017.2722412

DO - 10.1109/TKDE.2017.2722412

M3 - Article

VL - 29

SP - 2275

EP - 2289

JO - IEEE Transactions on Knowledge and Data Engineering

JF - IEEE Transactions on Knowledge and Data Engineering

SN - 1041-4347

IS - 10

M1 - 7967690

ER -