With the dawning of "Big Data" and analytics, we as developers need to, more than ever, efficiently utilize computing resources, both hardware and software, in order to optimally harvest such data.

This project contains a sample application that demonstrates two things:

A data partitioning pattern to enable “Big Data” scalability (potentially TeraBytes ++). Achieved via a Managed Bean routing layer within a data-less XPages “dashboard” application.

Multi-database parallel searching across a large data-set. When a search is requested within the UI, a multi-threaded concurrent search is carried out across twenty-six different databases before providing a seamless search result back to the end-user.

This is achieved via a Managed Bean that executes multi-threaded search logic using a special abstract class that allows the current user session to be shared across multiple threads:


Tony is the developer, Niklas only committer.