Elasticsearch क्लाइंट Java के लिए: कनेक्शन और कार्य के लिए पूर्ण गाइड

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

Elasticsearch क्लाइंट Java के लिए: पूर्ण गाइड



Elasticsearch Lucene पर आधारित एक शक्तिशाली वितरित खोज और विश्लेषण प्रणाली है। Java अनुप्रयोगों से इसके साथ इंटरैक्ट करने के लिए एक आधिकारिक क्लाइंट है, जो इंडेक्सिंग, खोज और डेटा प्रबंधन के लिए एक सुविधाजनक API प्रदान करता है। इस लेख में, हम Elasticsearch Java क्लाइंट की स्थापना, कॉन्फ़िगरेशन और मुख्य क्षमताओं पर विस्तार से चर्चा करेंगे, साथ ही व्यावहारिक कोड उदाहरण भी प्रस्तुत करेंगे।



Elasticsearch Java क्लाइंट क्या है?

Elasticsearch Java क्लाइंट एक आधिकारिक लाइब्रेरी है जो Java अनुप्रयोगों से Elasticsearch क्लस्टर के साथ इंटरैक्ट करने के लिए डिज़ाइन की गई है। यह दो मुख्य दृष्टिकोणों का समर्थन करता है:

  • Low-level REST Client — एक निम्न-स्तरीय क्लाइंट जो सीधे HTTP अनुरोधों के साथ काम करता है। पूर्ण नियंत्रण देता है, लेकिन मैन्युअल रूप से JSON बनाने की आवश्यकता होती है।
  • High-level REST Client — एक उच्च-स्तरीय रैपर जो सामान्य संचालन (इंडेक्सिंग, खोज, अपडेट) के लिए ऑब्जेक्ट-ओरिएंटेड API प्रदान करता है। अधिकांश परियोजनाओं के लिए अनुशंसित।

Elasticsearch 7.0 से शुरू करके, High-level REST Client का उपयोग करने की अनुशंसा की जाती है, क्योंकि यह अधिक सुविधाजनक और सुरक्षित है।



स्थापना और कनेक्शन

Java (Maven) प्रोजेक्ट में क्लाइंट को जोड़ने के लिए, pom.xml फ़ाइल में निम्नलिखित निर्भरता जोड़ें:

<dependency>    <groupId>org.elasticsearch.client</groupId>    <artifactId>elasticsearch-rest-high-level-client</artifactId>    <version>7.17.0</version></dependency>


यदि आप Gradle का उपयोग करते हैं, तो यह पंक्ति जोड़ें:

implementation 'org.elasticsearch.client:elasticsearch-rest-high-level-client:7.17.0'


निर्भरता जोड़ने के बाद, क्लाइंट का एक इंस्टेंस बनाएं:

import org.elasticsearch.client.RestHighLevelClient;import org.elasticsearch.client.RestClient;import org.apache.http.HttpHost;

public class ElasticsearchClientExample { public static void main(String[] args) { RestHighLevelClient client = new RestHighLevelClient( RestClient.builder(new HttpHost("localhost", 9200, "http")) ); // Elasticsearch के साथ आपका कोड try { client.close(); } catch (IOException e) { e.printStackTrace(); } }}


क्लाइंट के साथ मुख्य संचालन



इंडेक्स बनाना

डेटा के साथ काम शुरू करने से पहले, एक इंडेक्स (SQL में डेटाबेस के समान) बनाना आवश्यक है। उदाहरण:

import org.elasticsearch.client.indices.CreateIndexRequest;import org.elasticsearch.client.indices.CreateIndexResponse;import org.elasticsearch.client.RequestOptions;

public void createIndex(RestHighLevelClient client, String indexName) throws IOException { CreateIndexRequest request = new CreateIndexRequest(indexName); CreateIndexResponse response = client.indices().create(request, RequestOptions.DEFAULT); System.out.println("इंडेक्स बनाया गया: " + response.isAcknowledged());}


दस्तावेज़ को इंडेक्स करना

Elasticsearch में दस्तावेज़ JSON ऑब्जेक्ट होते हैं। दस्तावेज़ जोड़ने के लिए IndexRequest का उपयोग करें:

import org.elasticsearch.action.index.IndexRequest;import org.elasticsearch.action.index.IndexResponse;import org.elasticsearch.common.xcontent.XContentType;import java.util.HashMap;import java.util.Map;

public void indexDocument(RestHighLevelClient client, String indexName) throws IOException { Map<String, Object> jsonMap = new HashMap<>(); jsonMap.put("title", "Elasticsearch क्लाइंट Java के लिए"); jsonMap.put("content", "Java से Elasticsearch के साथ काम करने का विस्तृत विवरण।"); jsonMap.put("views", 150);

IndexRequest request = new IndexRequest(indexName) .id("1") .source(jsonMap);

IndexResponse respon

अनुशंसाएँ