introducing apache jackrabbit oak
DESCRIPTION
Presented @ Adobe, Bangalore - Introduction to the Node State Model in Jackrabbit OAKTRANSCRIPT
![Page 1: Introducing Apache Jackrabbit OAK](https://reader034.vdocument.in/reader034/viewer/2022042521/554c5d96b4c905452e8b523c/html5/thumbnails/1.jpg)
JackRabbit OAK
Yash Mody, PhD CTO | Tekno Point Consulting
www.teknopoint.us
![Page 2: Introducing Apache Jackrabbit OAK](https://reader034.vdocument.in/reader034/viewer/2022042521/554c5d96b4c905452e8b523c/html5/thumbnails/2.jpg)
Introducing the “oak”
Hierarchical Content repository New age CMS – distributed, loosely couples, multiplatform solution JCR Compliant (not full coverage) Scalable (>100 M nodes) Cloud Deployments
www.teknopoint.us
![Page 3: Introducing Apache Jackrabbit OAK](https://reader034.vdocument.in/reader034/viewer/2022042521/554c5d96b4c905452e8b523c/html5/thumbnails/3.jpg)
Architecture
.NodeStore
.MicroKernel (MK)
.NodeState
www.teknopoint.us
![Page 4: Introducing Apache Jackrabbit OAK](https://reader034.vdocument.in/reader034/viewer/2022042521/554c5d96b4c905452e8b523c/html5/thumbnails/4.jpg)
Overview
OAK JCR
OAK CORE
OAK PLUGINS
www.teknopoint.us
![Page 5: Introducing Apache Jackrabbit OAK](https://reader034.vdocument.in/reader034/viewer/2022042521/554c5d96b4c905452e8b523c/html5/thumbnails/5.jpg)
Layers Light wt HTTP protocol for JSON
www.teknopoint.us
![Page 6: Introducing Apache Jackrabbit OAK](https://reader034.vdocument.in/reader034/viewer/2022042521/554c5d96b4c905452e8b523c/html5/thumbnails/6.jpg)
The Node store architecture
www.teknopoint.us
![Page 7: Introducing Apache Jackrabbit OAK](https://reader034.vdocument.in/reader034/viewer/2022042521/554c5d96b4c905452e8b523c/html5/thumbnails/7.jpg)
fundamentals
Hierarchical/Tree Model with nodes and properties Everything else is plugin based Tree is immutable, changes are new revisions
Multi Version Concurrency Control (MVCC) model
Snapshot Isolation Relaxed first committer wins strategy Write Skew (ex: joint accounts)
www.teknopoint.us
![Page 8: Introducing Apache Jackrabbit OAK](https://reader034.vdocument.in/reader034/viewer/2022042521/554c5d96b4c905452e8b523c/html5/thumbnails/8.jpg)
Node state Model
Node – unordered collection Content revisions will change states of Nodes Node State is an immutable snapshot of a specific state NodeState and NodeBuilder Interfaces
www.teknopoint.us
![Page 9: Introducing Apache Jackrabbit OAK](https://reader034.vdocument.in/reader034/viewer/2022042521/554c5d96b4c905452e8b523c/html5/thumbnails/9.jpg)
Node store
Implementation of Node State Model Java API for NSM functionality
www.teknopoint.us
![Page 10: Introducing Apache Jackrabbit OAK](https://reader034.vdocument.in/reader034/viewer/2022042521/554c5d96b4c905452e8b523c/html5/thumbnails/10.jpg)
Microkernel
NSM implementation with String only JSON API Remoteable Stateless 2 flavors of MK: Document and Segment
Document – Max performance in stand alone systems Segment – Max Scalability for cluster
www.teknopoint.us
![Page 11: Introducing Apache Jackrabbit OAK](https://reader034.vdocument.in/reader034/viewer/2022042521/554c5d96b4c905452e8b523c/html5/thumbnails/11.jpg)
Other stuff
Compare NodeState Commit Hooks – controls/modifies what to do with a commit Commit Editors – parallel processing of multiple hooks Commit Validators – only validates. Cannot modify
www.teknopoint.us
![Page 12: Introducing Apache Jackrabbit OAK](https://reader034.vdocument.in/reader034/viewer/2022042521/554c5d96b4c905452e8b523c/html5/thumbnails/12.jpg)
Thanks
@yash_mody http://www.linkedin.com/in/modyyash
www.teknopoint.us