alfresco usable, reliable, scalable, compliance

23
2009 - Proprietary and Confidential Information of Xenit Solutions Never forget the non-functional requirements Usable, Reliable, Scalable, Compliant Ronny Timmermans December 14, 2010 1

Upload: xenit-solutions-nv

Post on 20-Aug-2015

1.284 views

Category:

Documents


2 download

TRANSCRIPT

  1. 1. Usable, Reliable, Scalable, CompliantNever forget the non-functionalrequirementsRonny TimmermansDecember 14, 2010 12009 - Proprietary and Confidential Information of Xenit Solutions
  2. 2. Agenda Usability Reliability architecture Scalability & performance Users Content Regions ComplianceDecember 17, 2010 2 2010 - Proprietary and Confidential Information of Xenit Solutions
  3. 3. Usability Alfresco offers many interfaces for different purposes Email:imap Browser:HTTP omnipresent Desktop : webdav, cifs, sharepoint protocol, ... Technical:jmx, ftp Share interface: more productive & intuitive Hide details until user explores them Preview of the document Adapt to your own document model, aspects, ... Simple search Simplicity of CIFS is appealing. But?December 17, 2010 3 2010 - Proprietary and Confidential Information of Xenit Solutions
  4. 4. Usability: Make it simple, please... flintstones openingYour Average User.Here, is Fred, backFrom .NETrockDecember 17, 2010 42010 - Proprietary and Confidential Information of Xenit Solutions
  5. 5. Usability: Fred, Alfresco desktop What happened to? Drag & drop Adaptive, context sensitive, interfaces Undo operation Off-line work Concurrent operations (search, browse, preview)? Simplicity of CIFS? Richness of Explorer? Ease of Share?=> Fred: Responsiviness Performance Ergonomy Intuitif usage No crusade against the web, but a mission for the end-user. Our desktop is HTTP based. Usable from anywhere Where possible, we process in the back-end portableFred makes your desktop rock.December 17, 2010 52010 - Proprietary and Confidential Information of Xenit Solutions
  6. 6. Reliability Architecture is key Failing subsystemsshould not blockthe core Lucene is important Central role for all queries and transactions Sensitive to : Different languages indexing Physical layoutDecember 17, 201062010 - Proprietary and Confidential Information of Xenit Solutions
  7. 7. Reliability: Alfresco architecture is keyDM WCMRM DAM Share Web SitePortalAlfresco explorerSpring SurfJSF platformOS File systemOffice MobileRich Desktop application Content Services Control ServicesCollaboration ServicesContent Repository File SystemRDBMS2010 - Proprietary and Confidential Information of Xenit Solutions
  8. 8. Reliability: architecture brings qualities Office Suite Environment agnostic Multi tenantAuthentication Users/groups BrowserStnadards BasedClustering Application serverBackup/ Restore Admin DatabaseHeartBeat AuditingOperating system Records management2010 - Proprietary and Confidential Information of Xenit Solutions
  9. 9. Reliability & High AvailabilityDuplicate (state)! Level 2 cache Indexes Database Content storeDecember 17, 201092010 - Proprietary and Confidential Information of Xenit Solutions
  10. 10. Reliability: Cluster configuration Clustering Application Availability Web application/ Web application/ But also Servlet ContainerServlet ContainerscalabilityAlfresco ContentAlfresco Contentapplication serverapplication server Back-up ApplicationBack-up Application (Read Only)server Web application/ Web application/ Availability Servlet ContainerServlet Container Simplicity MASTER:SLAVE Alfresco Content Replication Alfresco Content Hot & coldapplication server application serverDecember 17, 2010 10 2010 - Proprietary and Confidential Information of Xenit Solutions
  11. 11. Scalability & performanceDecember 17, 2010112010 - Proprietary and Confidential Information of Xenit Solutions
  12. 12. Alfresco Scalability dimensions In number of users => performance & CPU In number of documents (content) => infrastructure Database is crucial Lucene on fast disks (see also roadmap) Multi-content store (castor) Vivium case: about 10 milliondocuments, about 100 million records Geographically Alf2Cas & castor can helpDecember 17, 2010122010 - Proprietary and Confidential Information of Xenit Solutions
  13. 13. Scalability: Alfresco = ECM system An ECM is a relatively static system. It can be cached. Caches can be everywhere. Alfresco is the tip of a system iceberg. Know, Master & Optimize the iceberg! OS (64 bit) database JVM Activate what you need: -> Alfresco subsystems What does Alfresco do for us? Hibernate Removal by iBatis since 2008 More performant database integration. Completed in 3.4 XeniT customer area will allow access to our Alfrescoknowledge base with real world casesDecember 17, 2010132010 - Proprietary and Confidential Information of Xenit Solutions
  14. 14. Scalability & Clustering Horizontal and vertical scaling is possible: large-scale-enterprise-deploymentsDecember 17, 2010 14 2010 - Proprietary and Confidential Information of Xenit Solutions
  15. 15. Performance : case Brutex : 106 emails Customer Brutex: Koen Verwimp from Precisions Operations GO LOW LEVEL strategy Search on Lucene index Returns noderefs Metadata are retrieved directly from database (MySQL) Also works my MySQL slave replication (e.g. When you consult these data remotely: 100ms to retrieve meta data from local DB Avoid permission checks using folder based permission. By user profile, retrieve only documents from authorised folders Probably only high performance with low number of folders Note: Nr of documents: about 1 million. Average seek time : 500ms. Sorting on time (milliseconds) is the most time consuming steps, on time. Average seektime: few seconds. Satisfying performance on alfresco 3.1.x with 1 miljoen documentsDecember 17, 2010 15 2010 - Proprietary and Confidential Information of Xenit Solutions
  16. 16. Performance : case Vera :webscripts What always applies: Measure before optimisation Rewrite the scripts in function of efficiency Caching (webscripts are HTTP cache enabled)! Memory versus CPU trade-off Explicit storage of document characteristics Denormalisation of properties Store parent properties in child for easy retrieval Webscript library optimization Resolve imports at package time instead of at runtime Alfresco specifics: Xpath-> Lucene Query Lucene: Filter using query clauses instead of filtering in script Java backed implementation Upgrade Alfresco regularly (ACL checking is faster!) Application level: Rethink your logic partition large result listsDecember 17, 2010 16 2010 - Proprietary and Confidential Information of Xenit Solutions
  17. 17. Performance: CMIS versus Web services Loading documents: context :1000 folderscontaining 1 file. WS implementation : WRITE 3,5 docs/second Via CMIS (nov 2010) : WRITE only 1,5 docs/second Sames test : larger files: (2MB), difference smaller, but old interface remains faster. Deletion of files: same speed. Jonas Heylen: Voorlopig zou ik dus bij Vivium nog niet overschakelennaar CMIS. Zowel wegens de lagere performance als de beperkingen van deCMIS standaard (inheritance, aspecten, auditable properties) http://xenitsupport.jira.com/wiki/download/attachments/2293927/Move2alf+benchmarks.pdfDecember 17, 2010 17 2010 - Proprietary and Confidential Information of Xenit Solutions
  18. 18. Compliance & Records Management Keep record of what yourenterprise does Alfresco RM based upon DOD5015 standard CAStor & Dell : compliance atstorage level XeniT developed the CASinterface ALF2CAS EU: Moreq2 (Moreq2010):MODEL REQUIREMENTS FOR THEMANAGEMENT OF ELECTRONIC RECORDSDecember 17, 2010182010 - Proprietary and Confidential Information of Xenit Solutions
  19. 19. Compliance: Record versus documentAn EDMSAn ERMSallows documents to be modified;prevents records from being modified;allows documents to exist in severalallows a single final version of a recordversions; to exist;may allow documents to be deleted byprevents records from being deletedtheir owners; except in certain strictly controlledcircumstances;may include some retention controls;must include rigorous retentionis intended primarily to support day-to- may support day-to-day working, but isday use of documents for ongoing primarily intendedbusiness.to provide a secure repository for business records.December 17, 2010 19 2010 - Proprietary and Confidential Information of Xenit Solutions
  20. 20. Compliance: Records A record is made from oneor more electronic documents.Records can be viewed asconsisting of: content; structure; context; presentation. Vital records absolutely essential to the organizations ability to carry out its business The documents become records when they are set aside, that is,captured into the ERMS. Upon capture, the records are classified, PDF/A : A subset of PDF designed for archival use, as defined in theISO 19005 series of standards. Much more useful on expertisecentrumdavidDecember 17, 2010 20 2010 - Proprietary and Confidential Information of Xenit Solutions
  21. 21. Alf2CAS: multi-store for multi purposeDMWCMRM DAM Content RepositoryRecords store (large volume) Life ECM system Records management Policy File System RDBMS File SystemRDBMS 2010 - Proprietary and Confidential Information of Xenit Solutions
  22. 22. Non functional roadmap Repository enhancements: Externalized indexingbased on Solr for improved indexing scalability andreliability Alfresco 3.4 : faster ACL checks Enhancements for 2010: Enhanced scalability to handle extremely large repositoriesboth in terms of documents and users. Project Swift (Q2 2011): Focus: Repository reliability and scalability, easyapplication development, ease of use.December 17, 2010 23 2010 - Proprietary and Confidential Information of Xenit Solutions
  23. 23. XeniT Thank youDecember 17, 2010242010 - Proprietary and Confidential Information of Xenit Solutions