Jackrabbit Oak

Jackrabbit Oak - Oak for short - is a hierarchical, distributed, and eventually-consistent NoSQL database developed under the umbrella of the Apache Software Foundation. Due to its hierarchical data model that naturally captures the structure of web-pages, Oak is the database of choice for various Content Management Systems (CMS). Oak's main contributor, Adobe, uses Oak in its product Adobe Experience Manager (AEM), a CMS and marketing tool for enterprises.


My Research

The problem I'm working on are frequent transaction aborts in Oak's concucrrency control mechanism due to index conflicts in Oak's property index. Oak uses Multiversion Concurrency Control (MVCC), which means that a transaction's reads and writes are not synchronized with that of other transactions, but at commit time a transaction is aborted if since it started another transaction has committed changes to the same data items.

The tree to the right shows an example of conflicting index updates. Transaction T1 deletes the nodes in the hatched area, while transaction T2 adds a new child node under one of the nodes deleted by T1. Hence either T1 or T2 needs to abort. My goal is to avoid unnecessary transaction aborts in Oak's concurrency control mechanism.

Interested in finding out more about my research or doing a BSc/MSC thesis or a project on this topic? Contact me!


About Me

I'm a research assistant and doctoral student at the University of Zurich in the Database Technology Research Group, working on my doctoral thesis under the supervision of Prof. Michael Böhlen.

I received my Bachelor's and Master's degree in Computer Science in 2013 and 2015, respectively, from the Free University of Bolzano. In the fall of 2015 I started my PhD.

You can find my official university webpage here.

Contact

Email wellenzohn@ifi.uzh.ch
Address University of Zürich
Department of Informatics
Binzmühlestrasse 14
CH-8050 Zürich
Switzerland
Office 2.E.09
Tel. +41-44-635-6728