Understanding so far:
PersistenceManager: Persistence Manager is a critical part of Jackrabbit that stores the nodes and properties.
DataStore: Data Store is used in conjunction with PersistenceManager to store large content.
FileSystem: FileSystem is a low-level abstraction, which is used by Persistence Manager (and a few other components such as Versioning)
Sources:
http://jackrabbit.apache.org/jcr/jackrabbit-configuration.html http://jackrabbit.apache.org/jcr/frequently-asked-questions.html http://wiki.apache.org/jackrabbit/PersistenceManagerFAQ http://wiki.apache.org/jackrabbit/DataStore
Questions:
Is the above understanding correct?
In production, the recommendation is to use database (such as MySQL) for jackrabbit metadata & small files along with bulk-store, resilient filesystem (such as S3) for large files. Configuration to be used for this:
<PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.MySqlPersistenceManager">...<DataStore class="org.apache.jackrabbit.aws.ext.ds.S3DataStore">... (http://mvnrepository.com/artifact/org.apache.jackrabbit/jackrabbit-aws-ext)- Is this configuration right?
 - What should be the configuration for FileySystem?
 
Should the above configuration be in
repository.xmlorworkspace.xml?