## Solarize Magento
Using a searchengine for more than just search
## About me
- Nils Preuss @tutnix
- Tech Lead Ecommerce
- Polo-motorrad @polo-motorrad
Starting Point
- one storeview with SaaS Solution
- costly
- fully tuned
- problems with complex scenarios
- two storeviews with MySQL Search
- super slow
- bad result relevance
## Alternatives
- Solr
- Elasticsearch
- Sphinx
- SaaS
## Solr and Elasticsearch
- personal preference
- for search, both shine
- colleague with Solr experience
## Sphinx
- no internal experience
- no api available
## SaaS
- lacking adaptability
- tempting to optimize result not data
- can become costly
- optimization not transferable
## Solr
- EE connector
- old versions (3.6 from 2012)
## Alternatives again
- 3rd party module
- worked out of the box
- extendable
## Pros of the module
- easy controllable
- attribute boost
- good communication with the developers
## More than simple search replacement
- auto suggest without magento interaction
- skip from index
- per product boost
## Enhance Solr usage
- infrastructure already in place
- most of the data already indexed
- got inspired by lizards and pumpkins
@tim_bezhashvyly, @vinaikopp, @fabian_ikono
## Ideas
- get category_product relations
- get category_view data
- get product_view data
- keep html of those in solr
## Category Product Relations
- all data is there
- search for products with category_id
- filter magento collection
- return to normal magento-flow
## Category view data
- extend the indexer
- more data needed
- get data-JSON from Solr
- put everything into Varien_Collection
- simple adaptions of templates
## Product view data
- all product information into Solr
- rebuild product structure in Solr
- search for Id & child documents
- return data-JSON
- "mock" a product model with data
## Improvements
- rebuild template for direct JSON parsing
- use JS for JSON2HTML templating
## Benefits of HTML in Solr
- most performant solution
- easier scaleable
## Problems with HTML from Solr
- slower indexing
- WAY bigger index (multistore)
- rebuild after data changes
- rebuild after template changes
## Magento 2
- extension migration already begun
- extended ideas are transferable
## Answers?
- Twitter: @tutnix
- slides at http://github.com/nhp/solarize_magento.git