Project Planning
Introduction
There is a lot to consider when building out a scalable search solution for your site. The considerations below can help with your planning at the beginning of the process. Keep in mind that the HawkSearch Professional Services team has Engineers with over a decade of experience building out search solutions for some of the largest companies in the world as well as small teams looking to improve their initial search solution. We wish you good luck on your project!
Start on Development Environment
HawkSearch offers three environments for your project:
- Development
- Test
- Production
We typically recommend starting your project on Development for initial planning purposes. Note that the endpoints in the API section here point to the Development environment. Once you have indexed your data, you can add your API Key and actually run API tests straight from this website. See the Deployment section below for moving your index from the Development Environment to Test and/or Production with the support of the HawkSearch team.
Pick the framework that is right for you
HawkSearch provides multiple frameworks to speed up your search solution:
Rapid UI Framework
This SDK is built on handlebars.js. This is a templating framework which offers high flexibility to a technical resource related to styling and layout, however it does enforce the components a bit more strictly such as the search bar, search results, recommendations and landing pages. The framework is optimized for performance from the outset. Also note that this framework can still be used by non-technical teams for tasks such as adding a recommendation to a blog post even if the actual search experiences are built using an SDK or API.
React SDK
This SDK is built on React, a widely adopted JavaScript library for building user interfaces. React offers a component-based architecture that provides high modularity and reusability, making it ideal for scalable and maintainable front-end development. Technical teams benefit from its flexibility in customizing layouts and styling, while the framework enforces consistency across core components.
Vue SDK
This SDK is built on Vue.js, a progressive JavaScript framework known for its simplicity and ease of integration. Vue provides a reactive data-binding system and a component-driven structure designed for high performance ensuring smooth rendering.
Typical Project Flow
Although each project is different, most projects follow these steps:
- Define fields to be indexed in client system of record
- Create and configure fields in HawkSearch that map to these fields on Development Environment
- Define and build index process from system of record into HawkSearch. This may leverage the HawkSearch API or be handled through a Connector if the system of record is listed in the Connectors Section within this portal.
- Test indexing process to get data into HawkSearch index
- Configure merchandising rules within the HawkSearch dashboard
- Build front end solution for the search bar, search results, recommendations and/or landing page experiences (typically starting in a development or testing environment) leveraging the HawkSearch API or Rapid UI framework
- QA test entire process in a development/testing experience
- Coordinate with HawkSearch Customer Success Team to deploy Development/Test environment to production. This is typically done early in the week or weekends, and not late in the week.
Number of Indexes per Environment
Each environment comes with a default two indexes. One index is used for the website itself and the second is used for the next updates coming from your index process. If the index process has a problem, the website is not affected. When the index process is complete, the new index is replaced as the "current" index. There are APIs for supporting this process described in the API section.
It is possible to add other indexes to your environment if needed - this can be discussed with the Customer Success team.
Indexing Frequency
Each HawkSearch project has its own needs and requirements related to indexing frequency. The factors to consider are:
- How often is system of record data updated?
- How is system of record data updated (is it a full or partial update)?
- What data is changed in the system of record (i.e. attribute data affecting things such as facets or new records such as new products?)
- How large is the index?
Based on these considerations, we typically see a full index done every night with potential updates done dynamically throughout the day. Note that updates such as new products or new pages added to the index dynamically during the day for example do not require a new indexing process - they are automatically available to the next search request. But changes to fields, facet information for example do indeed require a new indexing process which could impact your production environment.
Field Mapping
Note that all data in HawkSearch is stored as a "field" this includes data such as product skus and names as well as attributes/facet information that helps with navigation in the search experience. If there are questions related to how to store your data in HawkSearch fields, please contact your Customer Success Manager.
Field Configuration Considerations
There are many configuration options available for each field. In some cases there are dozens or even hundreds of fields that are configured in HawkSearch. In many cases, not all fields needed to be "searchable" because they are used for information on the search results and are not necessarily required for searching. The HawkSearch Professional Services team provides services for search tuning which can help with performance or scale considerations.
Entitlements Considerations
Not all data stored in HawkSearch is accessible to all visitors searching on your site. There are often "entitlement" considerations which impact pricing or access based on the profile of the visitor on your site. There are two ways to handle these entitlements:
- Store the entitlement information in HawkSearch and incorporate the logic logic of your setup process to return the appropriate results
- Retrieve all results from HawkSearch and then filter the entitlements within your application before presenting the results on the site.
HawkSearch has worked with both scenarios successfully at scale. You can review these considerations with the HawkSearch Professional Services team when planning your project.
Implementation Process:
Data Management
These activities set the foundation of the implementation.
Development & Testing
Go Live & Support
Updated 13 days ago