12
Target.com Search + LucidWorks #TargetSearch

Minneapolis Solr Meetup - May 28, 2014: Target.com Search

Embed Size (px)

Citation preview

Page 1: Minneapolis Solr Meetup - May 28, 2014: Target.com Search

Target.com Search + LucidWorks#TargetSearch

Page 2: Minneapolis Solr Meetup - May 28, 2014: Target.com Search

2

Change is constant…but we always reflect on our core culture

Page 3: Minneapolis Solr Meetup - May 28, 2014: Target.com Search

work & thinkdifferent

bring your skills not your title

be accountable

be transparent

progress over perfection

Page 4: Minneapolis Solr Meetup - May 28, 2014: Target.com Search

Setting sail with Solr…

Page 5: Minneapolis Solr Meetup - May 28, 2014: Target.com Search

5

We have left port…

Solr POC

Production

Page 6: Minneapolis Solr Meetup - May 28, 2014: Target.com Search

6

What we have learned so far…

Went Well Not so Well

• Transforming data into Solr • Facets are different between the platforms

• Loading data to Solr using Dynamic Fields

• Grouping and pagination

• Speed of importing data • Start from scratch on relevancy

• Relevancy strategy management

• Ease of adding additional data signals

Page 7: Minneapolis Solr Meetup - May 28, 2014: Target.com Search

<RECORD> <PROP NAME="recordType"> <PVAL>Product</PVAL> </PROP> <PROP NAME="productTitle"> <PVAL>Converse® One Star® Men's Short Sleeve Henley - Dog Bone L</PVAL> </PROP> <PROP NAME="listprice"> <PVAL>14.99</PVAL> </PROP> <PROP NAME="saleprice"> <PVAL>14.99</PVAL> </PROP> <PROP NAME="partNumber"> <PVAL>14930617</PVAL> </PROP> <PROP NAME="InvStatus"> <PVAL>0</PVAL> </PROP> <PROP NAME="categoryName"> <PVAL>short sleeve tees</PVAL> </PROP> <PROP NAME="categoryName"> <PVAL>shirts</PVAL> </PROP>.

Data Conversion

7

Catalog FeedSolr

<doc> <field name="D_Marketing">New</field> <field name="D_Categories">4919|short sleeve tees|Y|NOLEAF</field> <field name="D_Categories">4921|shirts|Y|NOLEAF</field> <field name="D_Nav">0|4919</field> <field name="D_Nav">1|4919|4921</field> <field name="P_Record_Type">Product</field> <field name="P_ListPrice">14.99</field> <field name="P_OfferPrice">14.99</field> <field name="D_PriceRange">B ($10 - $15)</field> <field name="P_Inv_Status">0/field> <field name="D_Inv_Status">0</field> <field name="P_ProductInfoTitle">Converse® One Star® Men's Short Sleeve Henley</field> <field name="P_DefinedAttributes">Size</field>...

Page 8: Minneapolis Solr Meetup - May 28, 2014: Target.com Search

<dynamicField name="D_*" type="text_en_splitting" stored="true" multiValued="true"/>

<dynamicField name="*_facet" type="string" indexed="true" stored="true" multiValued="true"/>...<copyField source="D_*" dest="*_facet"/>

Dynamic Fields

8

In Solr Schema:

Page 9: Minneapolis Solr Meetup - May 28, 2014: Target.com Search

9

Signals = Relevancy

Basic Question: How do you take basic information from activity on your website and use it to make results more relevant? Example: Hello Kitty

Page 10: Minneapolis Solr Meetup - May 28, 2014: Target.com Search

Solr’s default strategy finds what it “thinks” is most relevant

Untuned results

10

Page 11: Minneapolis Solr Meetup - May 28, 2014: Target.com Search

Once Solr is told to look at the most viewed/ordered items… voila!

Results with guest data

11

Page 12: Minneapolis Solr Meetup - May 28, 2014: Target.com Search

Questions?