Elasticsearch is an open source search and analysis engine distributed for all data types, including textual, numerical, geo-spatial, structured, and unstructured. Elasticsearch was founded on Apache Lucene and was first released by Elasticsearch NV in 2010. Elasticsearch, known for its distributed speed and scalability, is the main component of Elastic Stack, a set of open source tools for enrichment, storage, analysis, and visualization. Commonly referred to as ELK Stack (after Elasticsearch, Logstash, and Kibana), Elastic Stack includes a carrier tool known as Beats to send data to Elasticsearch.
What is Elasticsearch used for?
Elasticsearch has speed and scalability, and the ability to index many types of content:
- Search for apps
- Web site search
- Enterprise search
- Logging and log analysis
- Infrastructure metrics and container monitoring
- Monitor application performance
- Spatial data analysis and visualization
- Security analysis
- Business analytics
How does Elasticsearch work?
Raw data comes to Elasticsearch from a variety of sources, including logs, system metrics, and web applications. The data transfer parses this raw data before it is indexed in Elasticsearch. After indexing in Elasticsearch, users can run complex queries against their data and get complex summaries of the data. Users from Kibana can create powerful visualizations of their data, share dashboards, and manage Elastic Stack.
What is Kibana used for?
Kibana is a data visualization and management tool for Elasticsearch that provides real-time histograms, line charts, pie charts, and maps. Kibana also includes advanced apps such as Canvas, which allows users to create custom dynamic Infographics based on their data, and Elastic Maps to visualize geolocation data.
What is Logstash used for?
Elastic Stack is used to collect, process, and send Logstash data from its core products to Elasticsearch. Logstash is an open source, server-side data processing line that allows you to import data from multiple sources at the same time and enrich and convert it before it is indexed to Elasticsearch.
Why Use Elasticsearch?
Elasticsearch is built on Lucene and is perfect for full-text search. Elasticsearch is also a real-time search platform, which makes it searchable from the moment a document is indexed, and the latency is very short — typically a second.
Elasticsearch comes with a wide range of features. In addition to its speed, scalability, and flexibility, Elasticsearch has a number of powerful built-in features that make storing and searching data more efficient, such as data collection and directory cycle management.
Elastic Stack makes it easy to visualize and report data retrieval. With Beats and Logstash integration, it simplifies the processing of data before indexing to Elasticsearch, and Kibana application performance monitoring (APM) enables real-time viewing of Elasticsearch data as well as user interfaces for quick access to logs and infrastructure metric data.
What programming languages does Elasticsearch support?
- .NET (C#)
Click here for more information