Sujaya Maiyya

As a Computer Science Ph.D. student at UC Santa Barbara, I design, prototype and evaluate protocols for managing large-scale data. My goal is to build practical fault-tolerant systems that allows users to access data with minimal latency. I have broader interests in Large Scale Data Management, Distributed Systems, Cloud Computing and Blockchain. I am co-advised by Prof.Amr El Abbadi and Prof.Divy Agrawal.

Education

PhD in Computer Science University of California, Santa Barbara (Jan 2018 - present)
MSc in Computer Science University of California, Santa Barbara (Sept 2016 - Dec 2017)
BE in Information Science PESIT, Bangalore (Aug 2010 - May 2014)


Publications

Sujaya Maiyya, Faisal Nawab, Divyakant Agrawal, Amr El Abbadi "Unifying Consensus and Atomic Commitment for Effective Cloud Data Management" VLDB 2019 [pdf].

Sujaya Maiyya, Victor Zakhary, Divy Agrawal, Amr El Abbadi "Database and Distributed Computing Fundamentals for Scalable, Fault-tolerant, and Consistent Maintenance of Blockchains" VLDB 2018 (tutorial) [pdf] [slides].

Vaibhav Arora, RKS Babu, Sujaya Maiyya, Divyakant Agrawal, Amr El Abbadi, Xun Xue, Yanan Zhi and Jianfeng Zhu "Dynamic Timestamp Allocation for Reducing Transaction Aborts" IEEE Cloud 2018 [pdf].

Ongoing Research

Unifying consensus and atomic commitment protocols

One of my ongoing research projects is to unify consensus and atomic commitment protocols, which are seemingly disparate problems, into a single framework. The framework is developed to consolidate a myriad of transactional protocols developed in both the distributed systems and the database community dis-jointly. Cloud enterprises need a way to replicate their data on multiple servers to provide fault-tolerance and a way to shard the data across different servers to provide scalability. When transactions update data, all the involved shards and replicas need to be updated. Databases such as Spanner, update the shards independent of updating replicas, and this obliviousness incurs additional rounds of message communication for transaction commitment. In our work, we develop a new protocol that combines theefforts for committing a distributed transaction with the process of replicating the data. The amalgamation of the two efforts significantly reduces the latency required to commit transactions and thus, helps in processing more requests. This work is under revision for VLDB 2019.

Hybrid fault-tolerant protocols

With the increase in small scale enterprises, there is increasing demand to rent servers from public cloud providers. Small enterprises usually own a few trusted servers in their compute fleet but would be insufficient to provide the required fault-tolerance or to cater to geographically distributed customers. Many state machine replication protocols have been developed thatcater to either a fully trusted environment or a completely un-trusted environment. In a collaborative project, I helped develop a replication protocol that leverages the trust of a private cloud and the scalability of a public cloud. The protocol tolerates a bounded numbers of crash and Byzantine failures, while providing the correctness and liveness required by a replication protocol. The use of a hybrid protocol also helps in reducing the number of servers to be rented from external providers. With an ever-growing need for data computation and storage, a practical solution such as ours will help small scale businesses in providing online service geographically with optimal costs. This work is currently under review.

Teaching Experience

I have served as a Teaching Assistant in the Computer Science department at UCSB for two years. The courses I have taught are:
  • CS130A: Data Structures and Algorithms using C++ - Fall 2018, Winter 2018
  • CS171: Distributed Systems - Spring 2018
  • CS32: Object Oriented Design - Fall 2017
  • CS16: Problem Solving using C++ - Spring 2017
  • CS56: Advanced Application Programming - Winter 2017


  • Industrial Experience

    PhD Software Engineer Intern - Cloud Infra - Google (June 2018 - September 2018)

    I worked in Quotaserver – a distributed bin counting - team. During my internship, I ddentified the performance bottleneck of Quotaserver which was due to the backend database, Spanner. I optimized the performance of Quotaserver by sharding a single key in Spanner across different cells. The optimization resulted in 2.3x performance gain and 51% reduction in latency of the system.

    Software Engineer Intern - Ads - Google (June 2017 - September 2017)

    I worked in Google Ads group to introduce a new type of scheduler for Ads report generation that produced timely reports for customers across the globe. The project went in production and impacted many ad publishers, redefining the existing client SLAs.

    Software Developer - NetScaler - Citrix R&D (Feb 2014 - July 2016)

    I worked with Cloud Orchestration team of NetScaler in developing various features for NetScaler Control Center (NCC). I successfully drove the project of adding a new feature in NCC which enabled major CloudStack tenants to use load-balancing features of NetScaler. I have also committed fixes into OpenSource Apache CloudStack. I took ownership of extending admin partition feature of NetScaler to various cloud users, thus eliminating hardware constraints required for loadbalancing.