A pictorial representation of myself (at some point of time in the past) |
Vivek ShahData Management Systems (DMS) GroupSoftware, Data, People and Society Section Department of Computer Science University of Copenhagen |
Postal AddressDepartment of Computer Science (DIKU)University of Copenhagen Universitetsparken 5 DK-2100 Copenhagen Denmark Office Address: Sigurdsgade 41, room 2.01 Email: |
I am a postdoc in the DMS group where my work targets in-memory relational and spatial database systems. Currently I am working with the new database system vision of actor database systems and on projects in precision agriculture. I am interested in building systems especially distributed data driven systems which leverage modern hardware architecture and address problems faced by current application stacks. I am currently examining the design implications of traditional database system mechanisms of concurrency control, logging, query planning and optimization in the context of actor database systems especially ReactDB.
Previously, I was a doctoral student in the APL group within the Department of Computer Science at the University of Copenhagen where I was supervised by Marcos Vaz Salles and Fritz Henglein. My thesis envisioned the idea of integrating actor programming model in relational database to improve its programmability without sacrificing performance which led to the development of ReactDB. I was also known for trolling the HIPERFIT group.
I finished my M.Sc in Computer Science from the University of Copenhagen with a specialization in Programming languages and Systems in November, 2012. I completed my Bachelor of Technology in Computer Science and Engineering from NIT Hamirpur in 2008. I was born in Kolkata in eastern India. I grew up and spent my entire childhood and teenage years in the quiet town of Naihati on the banks of the famous mythological river Ganges.
Actor-Relational Database Systems
ReactDB is a scalable high-performance database system that targets modern hardware and enhances their programmability by integrating the concepts of actor programming model and relational data model. My Ph.D. dissertation developed the vision for the project and built the system from the ground up. Multiple research directions are currently being pursued in the project where the design of classical database system components e.g., concurrency control, logging, index-management, distribution and deployment are being redesigned in light of the integration.
Virtual Actor Runtime
Microsoft Orleans is a distributed, virtual actor run-time designed to build and deploy elastic, fault-tolerant stateful applications in .NET. My research internship at Microsoft Research helped in adding support for geo-distribution to the system. Currently, I am also looking into ways of efficiently integrating database functionality like spatial querying and transactions into the system while leveraging properties of the actor programming model in line with the vision of actor-oriented databases.
Adaptive Auto-partitioning in Distributed Transactional Data Stores
During my Master's thesis I built Memstore, a distributed in-memory key-value store supporting transactions. To reduce the impact of distributed transaction co-ordination, Memstore re-partitioned the data based on workload access patterns. The system was designed to be an experimental test-bed for studying adaptive re-partitioning algorithms and their impact on transaction processing in key value stores. The brief synopsis of the project is here.
Practical Applications of the Fourth Futumura Projection
The project aimed to understand the extension of existing Futumura projections. In the project, we experiment with the idea of the fourth Futumura projection by building specializers for some experimental DSL in C. Using CMix, we could generate cross compilers to convert a program in the DSL to C. I worked on this project during my Master's studies along with Tim van Deurzen under the supervision of Robert Glueck. The code for the project is hosted here.
Simple Operating System
I worked on this project which was a semester course at ETH Zurich during my Erasmus exchange (within my Master's degree). The project aimed at building major components of a microkernel operating system based on the L4 microkernel for an NSLU2 slug device. Some of the subsystems built as part of the project included the following subsystems viz., virtual memory, demand paging, system call interface, file system, process subsystem, timer drivers, binary loaders. The report with detailed outline of the project is here.The code for the project is hosted here.
In the past I have co-advised 4 B.Sc and 7 M.Sc thesis students.
I am looking for interested B.Sc and M.Sc students interested in building systems. If you are hunting for ideas, look at the project themes on offer in the DMS group. If you have your own ideas for a project or would like to work on one of the outlined project themes, feel free to email or meet me.
[16/06/2018]I had a great time talking about our work on ReactDB at SIGMOD 2018 in Houston.
[17/05/2018]We have a list of project themes on offer for interested B.Sc and M.Sc students in the DMS group. Feel free to contact me if you want to work on them.
[01/11/2017]I have now graduated and am working as postdoctoral researcher at DIKU.
[07/06/2015]Looking forward to the summer internship stint at Microsoft Research, Redmond on Orleans.
[07/06/2015]DMSLab now has its first graduated PhD student. A big round of applause for Kostas for defending his dissertation successfully.
[24/11/2014]OSDI 2014 talks, slides, papers can be found here.
[24/11/2014]SOSP 2013 talks are available on youtube.
[06/08/2014]Looking forward to attend VLDB in Hangzhou, China this year.
[13/11/2013]The weeklong Advanced Java workshop course from Nov 11- Nov 15, 2013 just ended.
[06/09/2013]There is an Advanced Java workshop course coming up for interested students from Nov 11- Nov 15, 2013.
[19/06/2013]APL group in DIKU now has a shiny new Freenode channel. Come on #diku-apl if you want to troll.
[24/05/2013]A new systems seminar reading group (will be extended to full blown seminar once we have more people) is starting up. See here. If you are interested, just send an email.
[14/05/2013]I am planning to restart my old blog which I started as a M.Sc student and plan to continue as a PhD student to detail my not so personal experiences in Copenhagen.
[12/05/2013] Looking for Bachelor and Master's students for possible thesis options in systems.
[18/03/2013] I joined the PhD bandwagon in a 3 year sprint to earn a cool degree.