Your SlideShare is downloading. ×
0
The 8.5 Search Architecture<br />
Bill Cava<br /><ul><li>Chief Evangelist, Ektron
http://twitter.com/billcava
bill.cava@ektron.com</li></li></ul><li>
Agenda & Overview<br />What’s New in 8.5 Search <br />Search Design Considerations<br />Search Developer Experience<br />K...
8.5 Search - Overview<br /><ul><li>Microsoft Search Technology
Supports All Types of Content
Features Include
Faceted Navigation
Narrow/Expand Queries Based on Taxonomies
Suggested Results
“Did you mean?”
Federated Search
Search Ektron, SharePoint, SAP, OpenText, IBM, Etc.
Dynamic Relevancy
Re-Order Search Results Based On User Behavior
Search High Availability Upgrade
Clustered, Enterprise Scalable Search Capability</li></li></ul><li>Getting Things Setup<br />Documentation<br />http://bit...
Who Uses Search? What do they Want?<br />Site Visitors<br />Developers<br />A modern site search experience<br />Google & ...
What is “Site Search?”<br />Search as Navigation<br />Site Search vs. Internet Search<br />Search strategy, defined goals<...
What is “Application Search?”<br />Use your search for more than simply site-search<br />Search index has denormalized vie...
Application Search Based Delivery<br />Denormalized search index<br />Search cross-cutting properties<br />Provide a conte...
“We have made a very strong effort into producing a usableand extensibleSearch API in the 8.5 Release” – Chris Banner, 8.5...
Developer Experience<br />3 Ways to Retrieve Search Results<br />Keyword Query Syntax<br />Search Framework API<br />Searc...
Keyword Query Syntax<br />Basic Search<br />Boolean Operators – AND, OR, NOT<br />Group phrases w/ parens– ((a OR b) AND c...
Intro to Search Framework API<br />Three Elements of Search Framework API<br />Search Manager<br />manager.Search(criteria...
Search Manager<br />usingEktron.Cms.Framework.Search;<br />SearchManagermanager = <br />newSearchManager();<br />SearchMan...
Search Criteria<br />usingEktron.Cms.Framework.Search;<br />KeywordSearchCriteriacriteria = newKeywordSearchCriteria();<br...
Advanced Search Criteria<br />usingEktron.Cms.Framework.Search;<br />AdvancedSearchCriteriacriteria = new AdvancedSearchCr...
Advanced Search Criteria<br />usingEktron.Cms.Framework.Search;<br />AdvancedSearchCriteriacriteria = new AdvancedSearchCr...
Advanced Search Criteria<br />usingEktron.Cms.Framework.Search;<br />AdvancedSearchCriteriacriteria = new AdvancedSearchCr...
Advanced Search Criteria<br />SearchContentProperty.Title<br />SearchContentProperty.DateCreated<br />SearchContentPropert...
Framework API vs Search API?<br />Framework API<br />Returned a ContentData object<br />Queries against the source of trut...
Demo:Search Framework API<br />
Search Framework UI Templated Server Controls<br />“We built the templated controls to be a base for our customers to use ...
Search Framework UI Templated Server Controls<br />SiteSearch<br />Site Search Interface<br />Simple controls<br />No Java...
Demo: search Templated controls<br />
What About Upgrades?<br />If you use the …<br />Legacy Search Server Controls (pre-8.5)<br />Legacy Search API (pre-8.5)<b...
What About Upgrades?<br />If you wrote CISSO queries …<br />Need to rewrite queries to use the new Search API or Server Co...
Upcoming SlideShare
Loading in...5
×

Ektron 8.5 RC - Search

2,617

Published on

Slides from Bill Cava's webinar on 8.5 Search. In this webinar, Bill Cava covers architecture, design, developer experience, and more.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,617
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
28
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Ektron 8.5 RC - Search"

  1. 1. The 8.5 Search Architecture<br />
  2. 2. Bill Cava<br /><ul><li>Chief Evangelist, Ektron
  3. 3. http://twitter.com/billcava
  4. 4. bill.cava@ektron.com</li></li></ul><li>
  5. 5. Agenda & Overview<br />What’s New in 8.5 Search <br />Search Design Considerations<br />Search Developer Experience<br />Keyword Query Syntax<br />Search Framework API<br />Search Framework UI – Templated Controls<br />Search Architecture<br />Crawling, Querying, Ranking, Diagnostics<br />Hardware/Software Requirements<br />
  6. 6. 8.5 Search - Overview<br /><ul><li>Microsoft Search Technology
  7. 7. Supports All Types of Content
  8. 8. Features Include
  9. 9. Faceted Navigation
  10. 10. Narrow/Expand Queries Based on Taxonomies
  11. 11. Suggested Results
  12. 12. “Did you mean?”
  13. 13. Federated Search
  14. 14. Search Ektron, SharePoint, SAP, OpenText, IBM, Etc.
  15. 15. Dynamic Relevancy
  16. 16. Re-Order Search Results Based On User Behavior
  17. 17. Search High Availability Upgrade
  18. 18. Clustered, Enterprise Scalable Search Capability</li></li></ul><li>Getting Things Setup<br />Documentation<br />http://bit.ly/ektron-85-search-docs<br />Installing and Configuration of Ektron Search<br />Installing Search Server<br />Understanding the Search Crawl<br />Searching a Website<br />Upcoming Screencast<br />Installation & Configuration of Search Server <br />
  19. 19. Who Uses Search? What do they Want?<br />Site Visitors<br />Developers<br />A modern site search experience<br />Google & Bing like features<br />Fast & relevant search results<br />Auto corrections<br />“Search just works”<br />An API to query for content across properties<br />A fast and reliable way to retrieve content<br />Insight into the crawling process<br />Insight into underlying queries and results returned<br />
  20. 20. What is “Site Search?”<br />Search as Navigation<br />Site Search vs. Internet Search<br />Search strategy, defined goals<br />Features support strategy<br />
  21. 21. What is “Application Search?”<br />Use your search for more than simply site-search<br />Search index has denormalized view of content<br />Uses a Search API to deliver dynamic lists of data<br />
  22. 22. Application Search Based Delivery<br />Denormalized search index<br />Search cross-cutting properties<br />Provide a content list based on a folder, tagged with a category, with certain metadata.<br />Strength of Site Search<br />
  23. 23. “We have made a very strong effort into producing a usableand extensibleSearch API in the 8.5 Release” – Chris Banner, 8.5 Search Engineer @ ektron<br />Usability<br />A compact API; performs complex searches using short, expressive syntax<br />Extensibility<br />Abstraction layer over search<br />Provides future proofing for future releases<br />An upgrade safe search and a maintainable search platform<br />
  24. 24. Developer Experience<br />3 Ways to Retrieve Search Results<br />Keyword Query Syntax<br />Search Framework API<br />Search Framework UI’s Templated Server Controls<br />
  25. 25. Keyword Query Syntax<br />Basic Search<br />Boolean Operators – AND, OR, NOT<br />Group phrases w/ parens– ((a OR b) AND c)<br />Wildcards – run*, account*<br />Managed Properties – contentId, folderId<br />Metadata – ektron/metadata/[name]/[type] > 0<br />SmartForm Data – ektron/sf/[name]/[type] : “value”<br />
  26. 26. Intro to Search Framework API<br />Three Elements of Search Framework API<br />Search Manager<br />manager.Search(criteria)<br />Search Criteria<br />criteria.QueryText= "ektron";<br />SearchResponse Data Type<br />
  27. 27. Search Manager<br />usingEktron.Cms.Framework.Search;<br />SearchManagermanager = <br />newSearchManager();<br />SearchManagermanager = <br />newSearchManager(ApiAccessMode.Admin);<br />SearchManagermanager = <br />newSearchManager(<br />ApiAccessMode.LoggedInUser);<br />
  28. 28. Search Criteria<br />usingEktron.Cms.Framework.Search;<br />KeywordSearchCriteriacriteria = newKeywordSearchCriteria();<br />criteria.QueryText = "ektron";<br />
  29. 29. Advanced Search Criteria<br />usingEktron.Cms.Framework.Search;<br />AdvancedSearchCriteriacriteria = new AdvancedSearchCriteria();<br />criteria.ExpressionTree = SearchContentProperty.Title.Contains("web");<br />
  30. 30. Advanced Search Criteria<br />usingEktron.Cms.Framework.Search;<br />AdvancedSearchCriteriacriteria = new AdvancedSearchCriteria();<br />criteria.ExpressionTree = SearchContentProperty.Title.Contains("web") & !SearchContentProperty.Title.Contains("cms");<br />
  31. 31. Advanced Search Criteria<br />usingEktron.Cms.Framework.Search;<br />AdvancedSearchCriteriacriteria = new AdvancedSearchCriteria();<br />criteria.ExpressionTree = (SearchContentProperty.Title.Contains("web") & !SearchContentProperty.Title.Contains("cms")) |<br />SearchContentProperty.Title.Contains(“ektron");<br />
  32. 32. Advanced Search Criteria<br />SearchContentProperty.Title<br />SearchContentProperty.DateCreated<br />SearchContentProperty.Private<br />SearchContentProperty.FolderName<br />SearchContentProperty.Id<br />SearchContentProperty.ExpiryDate<br />SearchContentProperty.ExpiryType<br />SearchContentProperty.Author<br />... only a subset, dozens more available<br />
  33. 33. Framework API vs Search API?<br />Framework API<br />Returned a ContentData object<br />Queries against the source of truth<br />Querying against ContentData properties<br />Simple criteria using Filters<br />Search API<br />Returned a SearchResult object<br />Search Indexes aren’t instantly updated<br />Querying against properties that span types (taxonomy, etc)<br />Complex criteria using expression trees<br />
  34. 34. Demo:Search Framework API<br />
  35. 35. Search Framework UI Templated Server Controls<br />“We built the templated controls to be a base for our customers to use to build their websites. They’re designed to be flexible.” – Steve Mann, 8.5 Search Engineer<br />Tight, semantic markup means designers customize the look and feel just by using CSS<br />No XSLT needed. Markup controlled using ASP.NET templates<br />
  36. 36. Search Framework UI Templated Server Controls<br />SiteSearch<br />Site Search Interface<br />Simple controls<br />No JavaScript Dependencies<br />UserSearch<br />ProductSearch<br />XmlSearch<br />
  37. 37. Demo: search Templated controls<br />
  38. 38. What About Upgrades?<br />If you use the …<br />Legacy Search Server Controls (pre-8.5)<br />Legacy Search API (pre-8.5)<br />Then …<br />Your upgraded site will route through new architecture<br />Recommended to upgrade code to use the new APIs & Controls<br />
  39. 39. What About Upgrades?<br />If you wrote CISSO queries …<br />Need to rewrite queries to use the new Search API or Server Controls<br />If you used Integrated Search feature<br />Needs to be reconfigured to use 8.5 Federated Search capabilities <br />
  40. 40. Search Architecture<br />
  41. 41. What is crawling?<br />A crawl is the process by which search server pulls data from the CMS to construct its internal indexes<br />
  42. 42. Crawl Types<br />
  43. 43. Crawling Process<br />
  44. 44. Querying Process<br />
  45. 45. Diagnostic tools & Administration Console<br />Status information on crawling process<br />Readily accessible through the Workarea<br />Advanced information through Microsoft Search Server Admnistrative Console<br />
  46. 46. Hardware Requirements<br />Processor Requirements<br />64-bit, Quadcore<br />RAM Requirements<br />For development: 4 GB<br />For evaluation or single-server production use: 8 GB <br />For multiple-server production use: 16 GB<br />
  47. 47. For SQL Server used by Search Server<br />
  48. 48. Disk Space<br />Rule of Thumb: Index size + 80 GB free space, plus 2x the ram on the production<br />Note<br />Search stores full-text index file on the file system of the query servers<br />
  49. 49. Software Requirements<br />Operating System<br />The 64-bit edition of Windows Server 2008 Standard, Enterprise, Data Center, or Web Server with Service Pack 2 (SP2). <br />The 64-bit edition of Windows Server 2008 R2 Standard, Enterprise, Data Center, or Web Server.<br />
  50. 50. Database Server<br />The 64-bit edition of Microsoft SQL Server 2008 with Service Pack 1 (SP1) and Cumulative Update 2 (CU2), CU5 or CU6. <br />The 64-bit edition of Microsoft SQL Server 2005 with Service Pack 3 (SP3)<br />Microsoft SQL Server 2008 R2<br />Software Requirements<br />
  51. 51. Questions?<br />Bill Cava<br /><ul><li>Chief Evangelist, Ektron
  52. 52. http://twitter.com/billcava
  53. 53. bill.cava@ektron.com</li>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×