Store, Analyze and Search with ElasticSearch
Submitted by Gayathri Menakath (@gayathrimenakath) on Saturday, 3 December 2016
Elasticsearch is an open source real-time search and analytic engine developed in Java. The elastic searching technique adopted by Elasticsearch engine is highly scalable and helps to search through different kinds of documents. The engine provides REST APIs which helps to interact with it using the programming language of our choice. This talk will highlight the basics of Elasticsearch, how to install, configure and use ElasticSearch engine using Python programming language. The talk will be concluded with a working demo of Xen Code Review Dashboard using Elasticsearch.
ElasticSearch is a open source Document datastore which enables to do realtime search operations and support huge analytics workload. Unlike in NoSQL databases, Elasticsearch stores semi-structured data but share many similarity with NoSQL. This part of talk will cover on how Elasticsearch is different from other datastores and some of the use-cases in could be used.
REST API (5mins)
ElasticSearch provides REST APIs to upload and retrieve data from the data store. The APIs allows the application developer to use the programming language of their choice to interact with the store. This part of the talk will explain in detail the functionality of REST API functions that ElasticSearch provides.
Installing Elasticsearch is very simple and need to make sure that all the prerequisites are met. In section of the talk, I will explains the roadblocks that people can come across while installing Elasticsearch.
The Elasticsearch datastore is highly scalable which helps to distribute data across thousands of server in a cluster. Any change to the index values are propagated across the cluster in fraction of a second unlike in relational database. In Elasticsearch index corresponds to a database, type to a table, document to row, fields of a document to a column and mapping to a schema. In this section, I will talk about on how to configure ElasticSearch to better search and retrieve data from it.
Application of ElasticSearch will be demonstrated where the audience can see how the data is being uploaded to ElasticSearch and how other functionalities like modifying the data, searching, deleting etc are carried out. All the above said functionalities and terms would be made clear.
Conclusion and Q & A (5min)
This session would familiarize the audience about ElasticSearch. installation, configuration and the important terminologies required to interact with ElasticSearch will be covered. The audience will have a clear idea of the concepts like indexing a document, feeding data, getting a document, updating the document and searching across the indexes.
An interest to know about recent technologies in data analytics and searching techniques. Knowledge in Python programming language will be beneficial.
I am Gayathri Menakath, pursuing BTech in Computer Science and Engineering at Amrita School Of Engineering, Amritapuri Campus, Kollam. An active contributor to the Xen Code Review Dashboard project, I work closely with Xen community. The Code Review Dashboard is a collaborative project with Linux Software Foundation. As an open source enthusiast, I have volunteered to mentor high school students as part of #includefellowship organized by the US based community, SHE++.