Knowledge graphs are key to delivering relevant search results, meeting the four criteria for relevance: query, context, user, and business goal. Knowledge graphs provide an entity-centric view of linked data, enabling growth, enhancement, and continuous updates. They store multiple views in Elasticsearch for fast response and serve as a pattern for others to use. The rise of knowledge graphs has been observed across industries, including ecommerce, finance, health, and criminal investigation. Data sparsity is a challenge that can be addressed through collaborative filtering, tagging-based systems, or trust networks. Knowledge graphs are being used for uncovering patterns in disease progression, causal relations involving disease, symptoms, and treatment paths. They provide traceability from the knowledge graph back to its source of information, maintaining data relevance and up-to-date status. Elasticsearch is used as a cache and powerful search engine on top of Neo4j, providing fast, reliable, and easy-to-tune textual search capabilities. A signal is any component of a relevance-scoring calculation corresponding to meaningful and measurable information, which can be controlled through signal modeling or ranking functions. Personalizing search involves including users as a new source of information for customized result sets. Concept search moves from searching for strings to searching for things, using data enrichment techniques such as adding synonyms or machine learning tools. Combining Neo4j and Elasticsearch offers two approaches: one with documents in Elasticsearch and the graph database, and another with tighter connection between Elasticsearch and the knowledge graph. The latter approach appears more performant by narrowing down the operation based on context or user.