Once you’re done with mastering all the capabilities of Elasticsearch, it’s time to go one step beyond. This final part of the Elasticsearch 5.x Solutions series dives into the third-party integration aspect of Elasticsearch. Spanning just under 3 hours, it gives you a detailed coverage of how Elasticsearch can be integrated with popular languages such as Python, Java and Scala, as well as shows you how Elasticsearch is integrated with third party tools for efficient Big Data solutions.
About the Author
Alberto Paro is an engineer, project manager, and software developer. He currently works as freelance trainer/consultant on big data technologies and NoSQL solutions. He loves to study emerging solutions and applications mainly related to big data processing, NoSQL, natural language processing, and neural networks. He began programming in BASIC on a Sinclair Spectrum when he was eight years old, and to date, has collected a lot of experience using different operating systems, applications, and programming languages.
In 2000, he graduated in computer science engineering from Politecnico di Milano with a thesis on designing multiuser and multidevice web applications. He assisted professors at the university for about a year. He then came in contact with The Net Planet Company and loved their innovative ideas; he started working on knowledge management solutions and advanced data mining products. In summer 2014, his company was acquired by a big data technologies company, where he worked until the end of 2015 mainly using Scala and Python on state-of-the-art big data software (Spark, Akka, Cassandra, and YARN).
An HTTP client is one of the easiest clients to create. It's very handy because it allows for the calling, not only of the internal methods as the native protocol does, but also of third-party calls implemented in plugins that can be only called via HTTP.
In this video, we will see how to manage indices via client calls.
In this video we will see how to manage mappings via a native client, and then use native APIs to manage documents.
In this video, we will see how to create a query object via QueryBuilder and via simple strings.
We can execute a query to retrieve some documents and learn what extra parameter in the query scroll is provided by Elasticsearch.
The first step for working with elastic4s is to create a connection client to call ElasticSearch. Similar to Java, the connection client is native and can be a node or a transport one.
After having a client, the first action to do is to create a custom index with an optimized mapping for it. Elastic4s provides a powerful DSL to do this kind of operation.
After creating an index, the next step is to add some mappings to it.
In this video, we will use APIs to manage documents.
Elastic4s leverages the query DSL, bringing to Scala a type-safe definition for the queries. One of the most common advantages of this functionality is that, as Elasticsearch evolves, in Scala code via elastic4s.
The elastic4s DSL also provides support for aggregation so that it can be built in a safer typed way.
We will look at how to manage indices via client calls
After creating an index, the next step is to add some type mappings to it
We will see how to use APIs to manage a document in a standard way
After inserting documents, the most commonly executed action in Elasticsearch is the search
Aggregations are executed along the search by performing analytics on searched results
We will see how to set up a working environment to develop native plugins
We will add a new custom English analyzer similar to the one provided by Elasticsearch
We will see how to define a REST entry-point and create its action; in the next one, we'll see how to execute this action
distributed in shards
An Elasticsearch action is generally executed and distributed in the cluster, and in this video, we will see how to implement this kind of action
In this video, we will see how to create a custom processor that stores the initial character of a field in another one
Packt has been committed to developer learning since 2004. A lot has changed in software since then - but Packt has remained responsive to these changes, continuing to look forward at the trends and tools defining the way we work and live. And how to put them to work.
With an extensive library of content - more than 4000 books and video courses -Packt's mission is to help developers stay relevant in a rapidly changing world. From new web frameworks and programming languages, to cutting edge data analytics, and DevOps, Packt takes software professionals in every field to what's important to them now.
From skills that will help you to develop and future proof your career to immediate solutions to every day tech challenges, Packt is a go-to resource to make you a better, smarter developer.
Packt Udemy courses continue this tradition, bringing you comprehensive yet concise video courses straight from the experts.