Portrait of Phil Bernstein

Phil Bernstein

Distinguished Scientist


I am a member of the Data Management, Exploration and Mining group in Microsoft Research Redmond. I work on various aspects database systems, mostly related to data integration and transaction processing.

Currently, I’m working on a distributed systems programming framework, called Orleans, which was released as open source in January, 2015. I gave a keynote about it at DISC 2014; slides are posted here.

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. Sudipto Das and I recently surveyed techniques for multi-master replication. I have also published 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.

I also work on data integration problems. 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 (Google), Jayant Madhavan (Google), René Miller (Univ. of Toronto), Peter Mork (Noblis), Rachel Pottinger (Univ. of British Columbia), Christoph Quix (Technical Univ. of Aachen), Erhard Rahm (Univ. of Leipzig), Adi Unnithan (Microsoft), 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.





 Professional Activities

Concurrency Control and Recovery in Database Systems

Philip A. Bernstein, Vassos Hadzilacos, Nathan Goodman

This page offers a free download of the above book in PDF file format. You can read or print it using Adobe’s Acrobat Reader, subject to the restrictions on the copyright page, which is the second page of the Preface.

The easy way to obtain the book is to download the zipfile of the entire book from here (22.9 MB). Then tell Winzip to extract it to a folder. The Contents.pdf file in the root folder offers conveneint access to the rest of the book, and the page numbers in the Index are linked to the proper pages. If you take this route, you can ignore the other directions below.

Download Individual Book Sections

If you have a low bandwidth connection, you can download individual pieces and assemble them on your computer. This requires more work, since to operate properly, you must place the .PDF and index files (used for linking between files) in the proper organizational hierarchy on your computer. The proper hierarchy is as follows:

  • Root Level
    • contents.pdf
    • Images folder
      • Index Folder (expand all subfolders under Index here)
      • appendix.pdf, biblio.pdf, Chapters 1-8.pdf, glossary.pdf, index.log, index.pdf, index.pdx, and preface.pdf

Below are all the files, which you can download one by one. All of these files are governed by the copyright notice in the preface.

Zip file of the index folder (520 KB)

contents.pdf (115 KB)

index.pdf (986 KB)

preface.pdf (575 KB)

chapter1.pdf (1.68 MB)

chapter2.pdf (1.31 MB)

chapter3.pdf (4.6 MB)

chapter4.pdf (2.25 MB)

chapter5.pdf (1.75 MB)

chapter6.pdf (3.67 MB)

chapter7.pdf (3.36 MB)

chapter8.pdf (3.47 MB)

appendix.pdf (295 KB)

glossary.pdf (1.27 MB)

bibliography.pdf (1.84 MB)