sistema di gestione documentale: cosa usare come deposito di back-end (documenti del repository di contenuti)?
-
01-10-2019 - |
Domanda
Voglio fare un sistema di gestione dei documenti (interfaccia in Ruby).
Cosa fare sollutions profesional (Alfresco, Liferay ufficio sociale, altri) utilizzati per la conservazione e il controllo delle versioni dei documenti?
Che altro posso usare?
Punti chiave:
- spazio di archiviazione di ottimizzazione (delta, la compressione ...)
- delle versioni
- capacità di documenti di indice (può essere esterno)
- capacità di backup di make in fase di esecuzione (hot-backup live)
- di blocco?
- scalabilità sul volume di dati di grandi dimensioni
- garantire l'integrità dei dati (hashing?)
- permessi
- transazionale
- supporto del flusso di lavoro (opzionale)
I punti bonus:
- KnowledgeTree farlo?
- Liferay Social Office farlo (JCR?)?
- Alfresco farlo?
Tutti i libri su questo tema?
Soluzione
La maggior parte delle soluzioni di gestione dei documenti aziendali che ho visto ( Cimage , Documentum , LiveLink ) sicuramente non si preoccupano # 1. Lo storage è relativamente a buon mercato, soprattutto se si tratta di archiviazione vs elaborazione (negozio e retreieve). Sono per lo più si basano su storage basato su file system - magari con il nome di astrazione tale che ShoppingList.doc
diventa forse 20100909100101a.doc.rev1
, con un database di tracciamento il-nome dato, il nome memorizzato, revisioni, e vari altri dati {MIME type, intestazioni e proprietà etc}. Non genera delta + compressione si ottiene l'indicizzazione molto facilmente da un qualsiasi numero di prodotti / agorithms esistenti. Versioning è anche estremamente semplice con questo approccio.
A seconda delle dimensioni e scalare sta costruendo, si potrebbe anche archiviare i file con versione all'interno di un database.
Un (S) FTP o CIFS processo di memorizzazione permetterebbe anche il software per funzionare su un application server con lo spazio modesto, ma memorizzare i file + storia su un server di file o nuvola di qualche tipo - anche se questo non è molto diversa da storage basato su file system.
Altri suggerimenti
Sai, il mio primo istinto sarebbe quello di solo utilizzo di Subversion . Avrete bisogno di indicizzazione esterna, e se si desidera memorizzare hash è necessario scrivere del codice per farlo da soli, ma tutto il resto si adatta.
fornito con attacchi rubino, anche se non sono personalmente familiarità con la loro qualità.
Alfresco è comunemente usato come backend, ha una bella API REST. È inoltre possibile definire il proprio API di integrazione, se non ti piace quello incluso.