How to do Upsert Operation in OpenSearch

We will learn how to do upsert operation in OpenSearch. There are couple of ways to do it, one using Index operation & another using Update operation. But how they work is different. So we will have to choose carefully based on our use case. Upsert using Index operation: Index operation by default does upsert. … Read more

How to Write OpenSearch Bulk Operation Using Java SDK

Here we will learn the basic code to do bulk operation in OpenSearch using Java SDK. We will need below dependencies in our Gradle project. This is part of build.gradle file. implementation ‘org.opensearch.client:opensearch-rest-client: 2.3.0’ implementation ‘org.opensearch.client:opensearch-java:2.0.0’ For maven projects, we need to add the dependencies in pom.xml file. As we know, OpenSearch provides bulk operation … Read more

How to Write OpenSearch Multi-Match Query in Java

Here we will see how to write OpenSearch multi-match query using Java SDK. OpenSearch multi-match query is supported for String type fields only. We will write code in Java to implement that. Also, we will write some Java code which can be used to emulate multi-match query for non-String data type fields like Integer, Long, … Read more

How to Instantiate OpenSearch Client in Java

Here we will learn how to create OpenSearch client using Java SDK. We will see how to connect to an OpenSearch cluster from a Java application for both AWS & non-AWS environments. OpenSearchClient for non-AWS environment: For a Gradle project, we need to add below dependencies in build.gradle file. For maven project, we would need … Read more

Connecting to LocalStack OpenSearch from localhost Docker container

As I mentioned earlier, I use LocalStack to emulate AWS services during development phase. It works more or less well. Recently I faced a problem with LocalStack OpenSearch instance. I created one OpenSearch cluster using LocalStack. My LocalStack is installed via docker-compose file & it runs in a container. Now I have developed a Java … Read more