This course covers the fundamentals of developing, debugging, deploying and maintaining a search engine. We'll learn how to develop performant indexing and query pipelines, scale our engine for both high volume query and document loads. We will also dig into how to best debug common scenarios related to typical search use cases and performance needs. Finally, we will cover how to design for fault tolerance and disaster recovery, while monitoring the health and security of your production system.
Throughout the course, you will take a hands-on approach via weekly projects and examples using the OpenSearch search engine (an open fork of Elasticsearch). While the course uses OpenSearch, the concepts taught will be broadly applicable across search engines like Apache Solr, Lucene, Elasticsearch and Vespa.
Note: This course assumes that you have already learned search fundamentals; if not, then we encourage you to take our companion “Search Fundamentals” course so that you will be prepared for this one.
Course taught by expert instructors
Former CTO at Wikimedia
Grant is a CTO, independent consultant and advisor. He is the former CTO of the Wikimedia Foundation and the co-founder and ex-CTO of Lucidworks, co-author of Taming Text, co-founder of Apache Mahout and a long-standing committer on the Apache Lucene and Solr open source projects. Grant’s experience includes managing a large team of engineers, researchers and data scientists at a top ten website as well as engineering a variety of search, question answering, and natural language processing applications for a variety of domains and languages. He earned his B.S. from Amherst College in Math and Computer Science and his M.S. in Computer Science from Syracuse University.
Principal Software Engineer at NetSuite
Dave is a versatile software architect, technology, and entrepreneur, and currently a Principal Software Engineer at Oracle NetSuite. Dave's areas of expertise include building and operating high-scale, data-intensive distributed systems, search with machine learning applications, container orchestration, and SRE. Prior to Oracle NetSuite, Dave has been a serial entrepreneur as Co-Founder of Peopleclick and Zema Good.
Learn and apply skills with real-world projects.
Software engineers looking to enhance their search engineering skills related to indexing and search performance, scalability, fault tolerance, security and debugging.
Ability to write Python and work with documented libraries.
Comfort working with web applications, Docker basics (e.g. start, stop) and the command line.
Search Fundamentals class certificate or academic or industry experience working with search engines such as Elasticsearch/OpenSearch/Solr/Vespa. We will not be teaching search fundamentals in this course.
Try these prep courses first
You will improve the Indexing and query performance of a search system.
- Understand common search architectures and when to use them
- Learn how to increase query and indexing performance
- Know key data modeling tradeoffs performance implications
You will tune a single node of OpenSearch for memory, storage and performance factors as well as explore key single node configurations and their impact on the system.
- Understand how to tune a search engine for memory and storage considerations of an application
- Learn how different caching strategies work and their performance implications
- Know what OpenSearch, JVM and operating system parameters impact search operations
You will expand your single node OpenSearch instance to a multi-node search cluster
- Know the node roles and strategies for scaling out your cluster, such as election of primary and replica nodes
- Understand leader election and failover scenarios
- Learn common sharding and replication strategies and how they relate to query and ingestion performance
You will work through key monitoring, backup/recovery and security scenarios to improve the health of your cluster.
- Understand key monitoring features and functionalities
- Know what the key operational metrics are to ensure cluster health and stability
- Learn how to configure key security features such as encryption, authentication, and authorization on a cluster
- Understand options for backup and recovery of indices
A course you'll actually complete. AI-powered learning that drives results.
Transform your learning programs with personalized learning. Real-time feedback, hints at just the right moment, and the support for learners when they need it, driving 15x engagement.
Live courses by leading experts
Our instructors are renowned experts in AI, data, engineering, product, and business. Deep dive through always-current live sessions and round-the-clock support.
Practice on the cutting edge
Accelerate your learning with projects that mirror the work done at industry-leading tech companies. Put your skills to the test and start applying them today.
Flexible schedule for busy professionals
We know you’re busy, so we made it flexible. Attend live events or review the materials at your own pace. Our course team and global community will support you every step of the way.
Each course comes with a certificate for learners to add to their resume.
15-20x engagement compared to async courses
Support & accountability
You are never alone, we provide support throughout the course.
Get reimbursed by your company
More than half of learners get their Courses and Memberships reimbursed by their company.
Hundreds of companies have dedicated L&D and education budgets that have covered the costs.