Jackrabbit:PersistenceManager,DataStore和amp;之间的区别是什么? FileSystem以及如何有效地使用它们?

时间:2016-06-16 08:45:19

标签: java jackrabbit

了解到目前为止:

PersistenceManager :Persistence Manager是Jackrabbit的关键部分,用于存储节点和属性。

DataStore :数据存储与PersistenceManager结合使用来存储大量内容。

FileSystem :FileSystem是一个低级抽象,由Persistence Manager(以及其他一些组件,如版本控制)使用

来源:

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

问题:

  • 上述理解是否正确?

  • 在制作中,建议使用数据库(例如MySQL)来获取长耳兔元数据和数据库。小文件以及大文件的大容量存储,弹性文件系统(如S3)。用于此的配置:

    <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

    • 这种配置是对的吗?
    • FileySystem的配置应该是什么?
  • 上述配置应该在repository.xml还是workspace.xml

1 个答案:

答案 0 :(得分:0)

理解是正确的!但我补充说:

  • FileSystem用于存储配置和其他元数据:nodetype配置,你的namesapaces,版本控制
  • PersistenceManager存储您的节点和属性
  • 用于存储大型二进制数据的数据存储

您的配置必须位于repository.xml中。在此文件中,您可以配置所有工作区,因此workspace.xml是从repository.xml生成的,无需编写workspace.xml

有关repository.xml的示例,请参阅this topic