I am a member of the Data Systems Group in Microsoft Research Redmond. I work on various aspects database systems, mostly related to data integration and transaction processing.
I’m currently working applications of disaggregated memory as a remote database cache. From 2012-2019, I worked on a distributed systems programming framework, called Orleans, which was released as open source in January, 2015 and is widely used inside and outside Microsoft. I gave a keynote about it at DISC 2014 (slides). I worked on projects to enrich Orleans to be an “actor-oriented database system”. I described the vision in a keynote at ICDE 2018 (slides). You can read about the following components: indexing (CIDR 2017), geo-distribution (OOPSLA 2017), and transactions (technical report)—all of which are available on GitHub.
My early research was primarily on transaction processing, and after a long hiatus, I resumed working in this area in 2006 as a co-designer of the database engine for SQL Azure. I then focused on building Hyder, a prototype transactional indexed-record manager that scales out without partitioning. I co-authored a survey of techniques for multi-master replication (SIGMOD 2013) and two books on transaction processing:
- Principles of Transaction Processing (2nd edition), coauthored with Eric Newcomer, was published in June 2009 by Morgan-Kauffman Publishers, a division of Elsevier. Translated into Chinese, Japanese, and Korean.
- Concurrency Control and Recovery in Database Systems, coauthored with Vassos Hadzilacos and Nathan Goodman, is downloadable for free from here.
My other main research interest is data integration. From 2000 – 2011 I led the Model Management Project, whose goal was to make database systems easier to use for model-driven applications, such as design tools, message translators, and database translators. I also worked on object-to-relational mapping, especially in support of the ADO.NET Entity Framework. Over the years, this work has been done in close collaboration with Sergey Melnik (now at Google), James Terwilliger (Microsoft), Eli Cortez (Microsoft), Suad Alagic, Alon Halevy, Jayant Madhavan (Google), René Miller (Northeastern Univ.), Peter Mork (Noblis), Rachel Pottinger (Univ. of British Columbia), Christoph Quix (Technical Univ. of Aachen), Erhard Rahm (Univ. of Leipzig), Adi Unnithan, and many great interns.
I’ve published many research papers on transaction processing, data integration, and other aspects of database management. You can find a nearly-complete list at the DBLP Computer Science Bibliography.
Microsoft Research Podcast
Episode 114 | April 8, 2020 - Forty years ago, database research was an “exotic” field and, because of its business data processing reputation, was not considered intellectually interesting in academic circles. But that didn’t deter Dr. Philip Bernstein, now a Distinguished Scientist in MSR’s Data Management, Exploration and Mining group, and a pioneer in the field. Today, Dr. Bernstein talks about his pioneering work in databases over the years and tells us all about Project Orleans, a distributed systems programming framework that makes life easier for programmers who aren’t distributed systems experts. He also talks about the future of database systems in a cloud scale world, and reveals where he finds his research sweet spot along the academic industrial spectrum.