Search
WHAT'S IN THIS CHAPTER?
- Learning about Lucene
- Discovering new features in search
- Understanding search entities and APIs
- Integrating with modules
- Writing a new crawler
Search was built from the ground up in DNN 7.1. The main objective was to provide Google-type search capabilities in the DNN platform and the extensions that were built on top of that. Some of the key features of search were speed, relevance, and security.
HISTORY
The DNN Platform has had search functionality since the early versions. Search functionality was based on the ISearchable interface, where a scheduled task was present to periodically probe modules implementing this interface. The interface allowed the platform to extract information from modules and store it in a common store. Search storage happened to use SQL Server, which provided a good centralized location for storing and querying content. Although SQL Server provided decent search capabilities, it had many problems such as speed, accuracy, and result highlighting.
When the commercial editions were initially launched around DNN 5.x, they included the File Crawler and URL Crawler. These were also implemented as scheduled tasks. The File Crawler allowed indexing of Office and PDF documents. The URL Crawler was more like a typical web crawler and traversed from one link to another on the site, thereby parsing and indexing the content.
OBJECTIVES ...
Get Professional DNN7: Open Source .NET CMS Platform now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.