Hi all!
I am currently investigating the posibilities of managing a rather large set of binaries within the Hippo CMS. I have some options in mind but I am not really sure of all the risks, so I would like you to share your thoughts with me. But first, let me explain the customers wish.
The usecase I have is as follows: We are running a rather small Hippo application with currently only 4 different document types. One of those types a sort of article, nothing fancy, just like any other article. The ‘special’ part about this article, is that it’s going to link to approximatly 10 to 30 attachments EACH. With attachments I mean any possible asset, meaning images, videos, pdfs or any other office documents. From the start we will have around 100 of those articles, meaning we have around 1000 to 3000 assets. This will grow with approximatly 100 to 200 articles a year, so 1000 to 6000 assets a year.
Some other requirements are that images could be previewed and that all attachments are downloadable for the endusers. It would be considerd a nice to have if the documents in the assets could be indexed for search, although this is not a hard requirement.
Option 1: Changing JCR Datastore to VFSDataStore
I’ve found this wonderfull blogpost(http://woonsanko.blogspot.com/2016/08/cant-we-store-huge-amount-of-binary.html) from @Woonsanko. He explains that you can use a different type of Datastores to make it possible to store binaries on a separate location, for example S3 or SFTP. This looks like a pretty solid solution, but I’m not really sure of the down sites. I think the downsides of this solution are the following:
- SFTP server goes down or when the connection is lost, the data will not be stored in the SFTP server and will be lost permanent.
- This solution still uses JCR, meaning the repository will contain all binaries and therefore grow quite big.
Positive side: - We can use Hippo CMS as before, nothing changes for the users.
- Documents are indexed into JCR so therefore searchable.
- Low effort, just configuration
Option 2: Iframe with external application (https://www.onehippo.org/library/concepts/editor-interface/cms-perspectives.html)
It’s also possible to use an existing Digital Asset Management system for this and implement them via an Iframe CMS Perspective.
Downsides of this solution:
- We cannot make use of the Hippo CMS way of working with assets
- We cannot see unused files, or at least not as easy.
- Yet another system we have to maintain, purchase or develop
Option 3: Stick with Hippo as is
Downsides:
- large repository
- large database, database with binaries
Positive side: - We can use Hippo CMS as before, nothing changes for the users.
- Documents are indexed into JCR so therefore searchable.
- no effort, just configuration
Personally I’m really positive about the first option. The only thing is that I’m not a JCR expert and cannot really see the disadvantages of this solution.
I’m looking forward to your thoughts and experiences. Especially on the first option.
Have a nice day!
Jesper