Supporting Library for Spring Security Acl with Neo4j Graph Database
The motivation behind this project was to increase performance in Spring Security ACL, by eliminating the Bottleneck created by using traditional RDBMS as backend data store. Read this post for more information.
acl_sid, acl_class, acl_object_identity and acl_entry are modelled represpectively using nodes SidNode, ClassNode, AclNode and AceNode in the following Graph.
Testing against H2 Database and Inmemory Neo4j Test Database with dataset 200 ACL Entries (2 for each Object Identity), 3 Sids (Including logged in User Sid), 100 Classes and 100 Object Identities.
Testing was mainly focused on Retrieval and to retrieve 50 non following Object Identities with ACL Entries (2 for each Object Identity) while running four random times with an Empty Cache, following were the results.
Any feedback positive or negative as long as they are constructive can be sent to Shazin