Elasticsearch is a free, open source, distributed, real-time analytics and search engine. It's built to be used in environments where speed and availability are considered high priorities. This course will introduce users to Elasticsearch, do a walkthrough of a basic installation, and teach the user how to index data and query it efficiently. The course will then go on to teach more advanced querying techniques, filters, and analytics. Finally, the course will show users how to integrate Elasticsearch with their .NET projects using a basic console application example.
Data Types & Index Options Welcome to module 2 of Getting Started with Elasticsearch for. NET Developers. In the last module, we broke the ice with Elasticsearch and got an idea of how it works and why you might want to use it. We installed a local instance, or node, of Elasticsearch, and tested it to make sure it was working okay. We installed a handy plugin to help us with administration and querying. In this module, we're going to take things to the next level. In terms of traditional database parlance, indexes are like databases in Elasticsearch, so let's learn how to create them. We've already gotten our local Elasticsearch node working and tested. The next thing we should discuss are data types. Just like in a typical relational database, Elasticsearch has some native data types that it supports out of the box. We're going to learn about those first so that we'll have an idea of what kind of options we have to store our data. Then we'll actually create our first index. In fact, you'll find that we'll create and destroy our index several times in this module as we discover new and interesting options to make storing our data more efficient and easier to search. We'll also get into some basic administrative helpers like routing and aliases, which are a major help when working with multiple indexes. They're smaller topics, but they're no less important to the day-to-day operations of a healthy Elasticsearch cluster.
Querying & Analysis Welcome to module three of Getting Started with Elasticsearch for. NET Developers. In this module, we're going to learn how to query Elasticsearch for data using a few different methods. We'll begin with some light searching, and then move on to using more complicated queries, filters, and full text search. Towards the end of the module, we're going to learn about analyzers and how they can affect your searches.
Elasticsearch With .NET In this, our last module, we're going to take a look at how to integrate Elasticsearch with. NET so that it can be useful for your projects. Specifically, we'll focus on one open source library that makes working with Elasticsearch from. NET a lot easier. We won't be building out an extensive demonstration application, just a basic console app so that we can demonstrate the basic connection to Elasticsearch, creating an index, and querying data, similar to how we did with the direct HTTP API in the previous module. There are a couple of libraries available for working with Elasticsearch with. NET, but the one I want to introduce you to is the NEST library, started by Martijn Laarman. It's a C# implementation of the Elasticsearch API. Like a lot of open source projects, the source code is available on GitHub, and, at the time of this recording, has over 30 contributors. The nice thing about NEST is that it has a nearly one to one match parity of features with the Elasticsearch API. Almost anything you can do using the native Elasticsearch REST API you can also do from the NEST library, including adding or deleting indexes, changing mappings, and running queries. In fact, the NEST library is so good it was incorporated as the official. NET client library for Elasticsearch. So let's take a look at how it works.