Open access
Author
Date
2017Type
- Doctoral Thesis
ETH Bibliography
yes
Altmetrics
Abstract
It is an exciting time to do database research. Two movements dominated the eld for the last few years: Big Data and NoSQL. Both movements arose out of necessity, as cloud computing imposes new requirements on database systems.
Cloud computing makes scalability and elasticity more important than ever. A user does not want to pay for computing and storage resources she does not use, but she expects to be able to get these resources as soon as they are needed. Traditional database management systems, however, are not able to meet these requirements.
Early NoSQL systems provided elasticity and scalability by massively simplifying the provided consistency guarantees and the underlying data model. Most notably key value stores can scale to thousands of machines and allow resizing their cluster at runtime. However, their simplicity is also their greatest weakness: The lack of transactions makes it dif cult to reason about concurrency, and the simple data model makes them dif cult to use. Key value stores push most of their complexity into the application. As a result, more recent solutions try not only to add transactions, but they also implement complex operations in a layer above the underlying NoSQL storage. This layering is often referred to as SQL over NoSQL.
Big Data, on the other hand, is about the analytical processing of massive amounts of data in the cloud. The Hadoop ecosystem and, more recently, Spark are the most prominent systems that play in this eld. These systems allow for massive parallelization of complex analytical queries and are elastic and scalable. They achieve this by implementing a shared data architecture which decouples computing resources from storage resources.
However, these Big Data platforms still have a problem: bringing the data from the online NoSQL (or SQL) database into Hadoop is a complex issue. Traditionally, this is solved like traditional data warehousing which is a heavy weight solution.A system like Spark also can not simply use a key value store for its underlying storage, because current key value stores perform poorly when they have to deliver high volumes of data.
This thesis introduces Tell, a distributed shared-data database management system that lls the gap between NoSQL and Big Data. Tell implements the SQL over NoSQL design principle: it performs transaction processing on top of a high- performance key-value store. At the same time, its key value store is heavily optimized for scan queries, allowing data processing engines to fetch their data directly from the online database. Show more
Permanent link
https://doi.org/10.3929/ethz-b-000187431Publication status
publishedExternal links
Search print copy at ETH Library
Contributors
Examiner: Kossman, Donald
Examiner: Bernstein, Philip
Examiner: Boncz, Peter
Examiner: Roscoe, Timothy
Publisher
ETH ZurichSubject
DATABASES + DATABASE MANAGEMENT SYSTEMS (SOFTWARE PRODUCTS); Cloud computing; Key-Value Store; TransactionsOrganisational unit
03689 - Kossmann, Donald (ehemalig)
More
Show all metadata
ETH Bibliography
yes
Altmetrics