12. november 2014

Vivek Shah wins Best Paper Runner Up for prospective database system

Large Databases, Partitioning, Online Transaction Processing

We live in a world where computers are playing an ever larger role. Computers are constantly getting more and more powerful, leading to bigger and more complex applications - which require more from the developer of these applications. Vivek Shah hopes to bridge this gap between performance and accessibility.

Google, Facebook, MMORPGs, banking systems - they all have it. A large database hiding beneath their applications, storing the massive amounts of information required to deliver their service, more recently, with the growth of cloud infrastructure, also often in the form of clusters of machines. In this distributed setting, databases have not been able to provide optimal performance for various classes of applications, leaving application developers with incapable of writing applications with efficient database performance.

As a result, a lot of developers have started writing their own versions of databases to fit their need for performance. This has caused a huge increase in development and debugging costs and has made application development harder, giving up the field to the big spender companies.

With his work, Vivek intends to provide a model for database design that can improve performance by letting more of the database work into the hands of the developers.

Performance vs. ease of use

When developing, you generally want your finished application to have high performance. However, ensuring this normally requires a lot of work for the developers and it can prove difficult to obtain maximum performance.

This means that the people working with the transition between databases and applications often have to choose between two benefits - greater performance or easier work for the application developers. If they choose performance, they might end up in a situation where developers can't test their applications' problems, which leads to errors and unhappy users. If they choose ease of use, the application will not run as efficiently as possible.

Working on a solution

Vivek is working on a solution to this infrastructure problem during his Ph.D., trying to find a middle ground where both performance and ease of use is taken into consideration. The core ideas of his approach is to figure out a way to give some more of the work, that is usually confined to the database, to the developers, while still ensuring that the most difficult tasks are kept as part of the database development.

The difficulties in the project lies in figuring out which tasks are too hard for the application developers to handle - it's a delicate balance, and it's  important to avoid the pitfall of handing over too much work to the application developers.

Best Paper Runner Up

Vivek won a Best Paper Runner Up in September 2014 for his paper "Transactional Partitioning: A New Abstraction for Main-Memory Databases", which he presented at the 40th International Conference on Very Large Data Bases. The conference is an annual international forum for a wide array of people working with databases and data management, and was arranged by Zhejiang University in China.

His research outlined in the paper will involve a more hands-on build of a system instead of entirely theoretical research.

About Vivek Shah

VivekVivek is a Ph.D student in the APL Section. His work involves systems, such as operating systems and data driven systems, as well as programming languages, and his current research is aimed at large data driven systems and addressing possible computing and data models for scaleup and efficiency.

Vivek finished his M.Sc in Computer Science from the University of Copenhagen with a specialization in Programming languages and Systems in November, 2012. He completed his Bachelor of Technology in Computer Science and Engineering from NIT Hamirpur in 2008.