#SummitNow Super Size Your Search 14 th November 2013 Fran Alvarez (Zaizi)
#SummitNow Agenda Myself & My company Background Our Solution Scenario Demo Conclusions
#SummitNow About me Director of Zaizi Iberia and Chief Architect Alfresco Certified Engineer Responsible of large Alfresco architectures Semantic Consultant for Sensefy Alfresco Meetups Organizer
#SummitNow We are an Open Source Development Company that helps people work together more effectively HQ: London (UK) Seville (Spain) Colombo (Sri Lanka) Singapore
#SummitNow What we offer Open Source System Integrator Specialist in ECM Platinum Alfresco partner Best Systems Integrator Partner EMEA 2012 Best Systems Integrator Partner EMEA 2013 Million $ Club in 2013 Support 24/7
#SummitNow Background Let’s put a bit of context
#SummitNow Those Old Days… Only Lucene in Alfresco 3.4- Indexes were managed within Alfresco context Permissions were checked after Lucene returned all results
#SummitNow Present Solr as Search Subsystem Indexes are managed outside Alfresco context Permissions are checked at query time No in-transaction index
#SummitNow Alfresco 4 is… Common Enemies Find a single document Return large data sets Filter by permissions Be fast! “Sometimes one superhero is not enough”
#SummitNow Alfresco + Solr Approach Quite a good architecture Takes care of both performance and usability Flexibility in deployment and installations However… Sometimes we just need to use something else
#SummitNow Future Don’t freak out dude! We can arrange something
#SummitNow Our solution Use Apache ManifoldCF Decoupled from Alfresco Can be integrated with either Alfresco or any other repository vendor Preserve security and permissions within results It’s included in our Semantic solution: Sensefy! API to manage Manifold Services API for searching, decoupling Search engine chosen Simple Bundled UI Lots of Manifold Customization
#SummitNow Apache ManifoldCF Open Source Apache SF Project Get content from repos Push content on search services Based on “Connector” and “Job” concept Crawling model (add, change, delete) And respect permissions, bitch!
#SummitNow ManifoldCF Overview Repository 1 Repository 3 Repository 4 Repository 2 Apache ManifoldCF Search Server 1 Search Server 2 Search Server 3 Authority Service Authority 1 Authority 2 user specific search results
#SummitNow ManifoldCF – Architecture Repository Job Search Server ACLs
#SummitNow ManifoldCF – Architecture Repository Job Search Server ACLs Repository Connector
#SummitNow ManifoldCF – Architecture Repository Job Search Server ACLs Repository ConnectorOutput Connector
#SummitNow ManifoldCF – Architecture Repository Job Search Server ACLs Repository ConnectorOutput Connector Authority Connector
#SummitNow ManifoldCF – Architecture Repository Job Search Server ACLs Repository Connector query to retrieve contents Output Connector Authority Connector
#SummitNow ManifoldCF – Architecture Repository Job Search Server ACLs Repository Connector query to retrieve contents Output Connector metadata mapping content ingestion Authority Connector
#SummitNow ManifoldCF – Architecture Repository Job Search Server ACLs Repository Connector query to retrieve contents Output Connector metadata mapping content ingestion Authority Connector retrieve content ACEs
#SummitNow ManifoldCF – Architecture Repository Job Search Server ACLs Repository Connector query to retrieve contents Output Connector metadata mapping content ingestion Authority Connector retrieve content ACEs verbal description crawling model scheduling
#SummitNow Our ManifoldCF Contribution Alfresco Repository Connector: New implementation Amazon Cloud Search Output Connector Alfresco Authority Connector: Design & Development
#SummitNow Some of our most famous villains
#SummitNow Several Alfresco instances Current Alfresco instances don’t share indexes Indexes can’t be merged Can’t have federated search No good approach for presenting results to users
#SummitNow Several Alfresco instances Our solution Once index to rule them all Data origin is irrelevant (or not if we don’t) Single search across repositories You choose your search engine!
#SummitNow Alfresco + Other data providers Current Alfresco Search subsystem != Other provider Search services Alfresco can’t reach external data No way to merge results uniformly to end users
#SummitNow Alfresco + Other data providers Our solution Search engine is shared All of them speak ‘our language’ Alfresco can reach external data through Results are present and accessible between data providers
#SummitNow Alfresco + O(TB) data Current Alfresco Search subsystem Single or clustered Solr Every Solr instance manage its own index No chance to apply scale techniques Huge server are required and performance might be compromised
#SummitNow Alfresco + O(TB) data Our Solution Alfresco uses our index Indexing techniques can be applied according to use cases Sharding, Replication… Search strategy can be adopted with best suitable search solution
#SummitNow Other benefits Extract, index and map information from any other sources Putting them together in a single index Permissions are checked just once Search capabilities: facets, highlighting… Red Link Apache ManifoldCF Search Server Authority Service Alfresco Permissions Alfresco
#SummitNow Demo
#SummitNow Demo : Architecture
#SummitNow Demo: Who are these guys? Christian Bale, Actor Christopher Nolan’s Batman Gareth Bale, footballer Real Madrid latest star
#SummitNow Conclusions Searching & Indexing in most popular Cloud Search solutions Retrieving information from most popular repositories and data providers altogether Manage permission and security for data Fully supported by us!
#SummitNow Conclusions
#SummitNow What’s coming How can we improve it, dude? - Powerful UI - New connectors - Large data volume benchmarking - Share integration
#SummitNow We are not Batman But we can be your Superhero Zaizi Ltd.Fran Álvarez (+44) (+34)
#SummitNow Thank you! May you want to help us with this one?