I am a second year M.Tech (Research) student at Department of Computer Science & Automation , Indian Institute of Science (IISc). I am working in the Database Systems Lab (DSL), where I am advised by Prof. Jayant Haritsa.
My area of interest lie broadly in using Machine Learning for Database Systems. I am currently working in the feild of Query Optimization in Database Systems.
I have industrial experience of working on various fields such as web technologies, system programming and mobile application development.
- M.Tech (Research) - Computer Science and Engineering [June 2018 - Present]
Computer Science and Automation Dept., Indian Institute of Science, Bangalore
Courses taken: DBMS, Topics in Database Systems, Operating Systems, Computer Architecture, Design and Analysis of Algorithms, Data Analytics, Machine Learning, Probability and Statistics,
- B.Tech - Computer Science and Engineering [July 2011 - June 2015]
University: Gujarat Technological University,
Courses taken: Core CS courses, Cloud Computing, Distributed Computing, Computer Graphics, Android App. Dev.
- Higher Secondary Education, [2009 - 2011]
Sheth C. N. Vidhyalaya, Ahmedabad, Gujarat
Major: Physics, Maths
- Teaching Assistant, [Jan 2020 to June 2020]
Course: E0261 Database Management Systems, CSA/CDS Dept., IISc
- Software Engineer @ Einfochips India Pvt. Ltd., [June 2015 to April 2018]
Cardinality Estimation Problem in Database Query Optimizers (Ongoing)
- Dynamic samples based on query predicates can highly reduce the chances of "Zero Sample" problem and hence, gives closer estimation to actual cardinality after extrapolation.
- To make predicate aware sampling feasible, we introduced Grid Based Dynamic Sampling to fetch concentrated and correlated samples for estimation.
- Designed the modern sampling technique using learned data structures with the framework of Indexed-Based Join Sampling (IBJS) for a faster & space-efficient estimation process.
- This new estimator beats the state-of-the-art learning models by the orders of magnitude for accuracy.
M.Tech (Research) Course Projects
- Benchmark for Cardinality Estimation in Industrial Optimizers:
The aim is to design a benchmark in the form of dataset which specifically challanges the cardinality estimation methods such as histograms-based estimation, independence & uniformity (in join cross-correlation) assumptions based estimation in the industrial query optimizers.
- Protect the Dynamic Data of a Process in Linux Kernel:
This project required a modification in linux kernel and adding custom system calls which protect the dymaically allocated memory regions in VMA from malicious code and restore them on corruption.
- CricPredic - Over by Over Cricket win Predictor for ODI match:
The aim is to accurately predict the winning probability of the team after every over based on the historical data. We used the combination of multiple models such as KNN and ANN (Artificial Neural Network) based on input.
- Implementation of Indexed-Based Join Sampling for Cardinality Estimation:
This is the implementation of proposed cardinality estimation technique in the paper IBJS , which uses index structures on join key attributes to draw correlated samples in order to avoid "zero-sample" problem and consequently produce efficient query execution plans.
- MINIREL - Minimal Relational Database Engine:
This project reqired to design & implement a simplified single-user relational database system, called MINIREL. The project involves writing code for the modules of both the logical layer (algebra and schema layer) and the physical layer (files & records, buffer management, catalogs management, page routines, index routines) of the dbms.
- Lightweight Models for Cardinality Estimation of Range Predicates:
Implemented very small regression models to deliver fast and accurate estimates for multi-dim. range predicates compared to traditional methods with very small training overheads.
- SEM3 Automation & Firmware validation tool:
Developed webpage validation automation framework using JAVA-Selenium and firmware verification tool for proprietary controller through Socket connection using Modbus Commands.
- DSP POC Research:
This POC showed the advantages of offloading the computation from ARM core to the DSP core using RPC on Android platform. Observed ~5-10% performance improvement on image format conversion workload.
- UCM Cloud Applications:
This cloud framework provides consumer and power consumption data maintenance and reporting services to the power companies. J2EE frameworks like Spring, Hibernate and Spring security are used on Server Side with Angular JS on client side.
- Sensity Cloud Application:
This cloud application provides functionality for data gathering from all the nodes in the grid and report generation using MEAN architecture stack.
- Web Lancer – Java, Socket Communication
Common interface framework to configure all connected nodes simultaneously using socket communication.
- Interest Book:
This social app aggregates web content like docs, videos, audios based on user interest on a single platform.
- Student Startup Support System (Pre-final year):
This application manages and tracks student activities on their start-ups and explore ideas of other students.
Skype id: dhrumil.shah488