在使用JCR的wcm中组织文件的正确方法是什么。假设总文件数为100,000多个文件,总文件大小约为50-70GB。 是否更好地按fie类型组织文件(并创建子目录以进一步按某些类别对文件进行分组)
有什么好处。使用查询API,维护或其他东西时是否有任何区别。
Proposal 1:
--shared
------images
------pdf
------movies
--location1
------images
------pdf
------movies
--location2
------images
------pdf
------movies
Proposal 2:
--pdf
-------shared
-------location1
-------location2
--images
--------shared
--------location1
--------location2
.. etc
答案 0 :(得分:2)
看看这个:D avid's Model: A guide for content modeling
一些亮点:
答案 1 :(得分:1)
无论您做什么,请确保在任何给定节点下最终不会有超过1000个子节点。 就像在任何(实际)文件系统中一样,当您想要列出其中包含大量文件/子文件夹的文件夹时,可能需要一些时间。 默认情况下,Jackrabbit 2.x现在将对用户空间进行哈希处理。 即:
/users/s/sa/sandra
/users/s/si/simong
...
我会亲自去找你的第一个提案,因为它更有意义。 我们有一个webapp,我们所有的用户都可以在JCR上传/删除/修改他们的文件,并采用这种方式:
/_users/s/si/simon/public
/_users/s/si/simon/public/My Pictures
/_users/s/si/simon/public/My Pictures/2010/06/Trip to the US
/_users/s/si/simon/public/My Pictures/2010/06/Trip to the US/DC1001.jpg
/_users/s/si/simon/private/account_details.txt
...
我们在UNIX类系统中完全遵循home文件夹的方式。 我们试图弄清楚我们(合理地)可以做的所有事情。例如用户空间(/ s / si / simong),但也包括消息:
/_users/s/si/simong/messages/2009/12/25/ab34ed87dee
/_users/s/si/simong/messages/2010/03/12/e4f1de3cd48
...
然而,由个人用户在给定文件夹中没有超过1000个子文件(我们会警告他们。) 这样做也可以为您提供进行访问控制的好处。 即:〜/ private下的everthing只能由当前用户读取和写入,〜/ public可供所有人阅读。