国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【Elasticsearch】 03-索引創(chuàng)建/更新/刪除詳解及示例

這篇具有很好參考價值的文章主要介紹了【Elasticsearch】 03-索引創(chuàng)建/更新/刪除詳解及示例。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

1. 簡介

Elasticsearch 是一個開源的分布式搜索和分析引擎,提供了強大的全文搜索、實時數據分析和數據可視化功能。本文將詳細介紹 Elasticsearch 的新增語法,包括索引的創(chuàng)建、數據的插入、更新和刪除等操作,并提供豐富的示例代碼,幫助您更好地理解和使用 Elasticsearch。

2. 安裝 Elasticsearch

在開始之前,需要先安裝和配置 Elasticsearch。您可以從 Elasticsearch 官方網站下載適合您操作系統(tǒng)的版本,并按照官方文檔進行安裝和配置。

3. 創(chuàng)建索引

在 Elasticsearch 中,索引類似于數據庫中的表,用于組織和存儲數據。以下是創(chuàng)建索引的示例代碼:

CreateIndexRequest request = new CreateIndexRequest("my_index");
request.settings(Settings.builder()
                .put("index.number_of_shards", 3)
                .put("index.number_of_replicas", 2)
            );
request.mapping("_doc",
                "{\n" +
                "  \"properties\": {\n" +
                "    \"title\": {\n" +
                "      \"type\": \"text\"\n" +
                "    },\n" +
                "    \"content\": {\n" +
                "      \"type\": \"text\"\n" +
                "    }\n" +
                "  }\n" +
                "}"
            );
CreateIndexResponse response = client.indices().create(request, RequestOptions.DEFAULT);

4. 插入數據

使用 Elasticsearch 的 Java 客戶端,可以將數據插入到索引中。以下是插入數據的示例代碼:

IndexRequest request = new IndexRequest("my_index");
request.id("1");
request.source("title", "Elasticsearch Introduction", "content", "Elasticsearch is a distributed search and analytics engine.");

IndexResponse response = client.index(request, RequestOptions.DEFAULT);

5. 更新數據

使用 Elasticsearch 的 Update API,可以更新索引中的文檔。以下是更新數據的示例代碼:

UpdateRequest request = new UpdateRequest("my_index", "1");
request.doc("title", "Updated Title");

UpdateResponse response = client.update(request, RequestOptions.DEFAULT);

6. 刪除數據

使用 Elasticsearch 的 Delete API,可以從索引中刪除文檔。以下是刪除數據的示例代碼:

DeleteRequest request = new DeleteRequest("my_index", "1");

DeleteResponse response

 = client.delete(request, RequestOptions.DEFAULT);

7. 注意事項與避坑指南

7.1 映射定義與字段類型

在創(chuàng)建索引時,要根據實際需求定義映射和字段類型。確保字段的類型與實際數據的類型匹配,避免數據錯誤或搜索不準確。

7.2 分詞器與全文搜索

Elasticsearch 使用分詞器對文本進行分詞處理,以支持全文搜索功能。要根據實際需求選擇合適的分詞器,確保搜索結果準確匹配。

7.3 性能優(yōu)化

在大規(guī)模數據存儲和搜索時,需要考慮性能優(yōu)化。合理設置分片和副本數量、使用索引別名和優(yōu)化查詢等方法,可以提高 Elasticsearch 的性能。

7.4 數據備份與恢復

定期進行數據備份,確保數據的安全性。在需要恢復數據時,可以使用 Elasticsearch 的快照和恢復功能進行數據恢復。

8. 示例代碼

8.1 創(chuàng)建索引與插入數據

示例代碼展示了如何創(chuàng)建索引并插入數據到 Elasticsearch:

// 創(chuàng)建索引
CreateIndexRequest request = new CreateIndexRequest("my_index");
// 設置索引配置
request.settings(Settings.builder()
                .put("index.number_of_shards", 3)
                .put("index.number_of_replicas", 2)
            );
// 定義映射
request.mapping("_doc",
                "{\n" +
                "  \"properties\": {\n" +
                "    \"title\": {\n" +
                "      \"type\": \"text\"\n" +
                "    },\n" +
                "    \"content\": {\n" +
                "      \"type\": \"text\"\n" +
                "    }\n" +
                "  }\n" +
                "}"
            );
CreateIndexResponse response = client.indices().create(request, RequestOptions.DEFAULT);

// 插入數據
IndexRequest request = new IndexRequest("my_index");
request.id("1");
request.source("title", "Elasticsearch Introduction", "content", "Elasticsearch is a distributed search and analytics engine.");

IndexResponse response = client.index(request, RequestOptions.DEFAULT);

8.2 更新數據

示例代碼展示了如何使用 Update API 更新數據:

UpdateRequest request = new UpdateRequest("my_index", "1");
request.doc("title", "Updated Title");

UpdateResponse response = client.update(request, RequestOptions.DEFAULT);

8.3 刪除數據

示例代碼展示了如何使用 Delete API 刪除數據:

DeleteRequest request = new DeleteRequest("my_index", "1");

DeleteResponse response = client.delete(request, RequestOptions.DEFAULT);

9. 結論

本文詳細介紹了 Elasticsearch 的新增語法,包括索引的創(chuàng)建、數據的插入、更新和刪除等操作。示例代碼幫助讀者更好地理解和使用 Elasticsearch。在實際使用中,請根據實際需求合理配置映射、字段類型和分詞器,注意性能優(yōu)化和數據備份,以充分發(fā)揮 Elasticsearch 的功能和性能。文章來源地址http://www.zghlxwxcb.cn/news/detail-766959.html

10. 參考鏈接

  • Elasticsearch 官方網站: https://www.elastic.co/
  • Elasticsearch Java 客戶端文檔: https://www.elastic.co/guide/en/elasticsearch/client/java-rest/current/index.html

到了這里,關于【Elasticsearch】 03-索引創(chuàng)建/更新/刪除詳解及示例的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Elasticsearch介紹及其索引庫的創(chuàng)建刪除和重新綁定

    Elasticsearch介紹及其索引庫的創(chuàng)建刪除和重新綁定

    Elasticsearch是一個開源的分布式搜索和分析引擎,基于Apache Lucene構建。它提供了一個快速、實時的搜索和分析功能,適用于各種用例,包括全文搜索、日志和指標分析、安全事件檢測等。 主要特點包括: 分布式架構 :Elasticsearch采用分布式架構,可以水平擴展以處理大量數據

    2024年04月12日
    瀏覽(42)
  • Elasticsearch中別名alias相關操作(創(chuàng)建、更新、刪除)

    Elasticsearch中別名alias相關操作(創(chuàng)建、更新、刪除)

    ????????在Elasticsearch中,別名(alias)是一種將一個或多個索引(index)映射到一個邏輯名稱上的方式。通過使用別名,我們可以為目標索引提供簡潔、易于理解的名稱,并將多個索引組合到一個別名下。 ????????例如,假設我們有兩個索引分別存儲了不同時間段的日

    2023年04月20日
    瀏覽(30)
  • 使用python在es中基本操作詳解(添加索引、查詢索引、刪除索引、判斷索引是否存在、添加數據、更新數據、查詢數據)

    使用python在es中基本操作詳解(添加索引、查詢索引、刪除索引、判斷索引是否存在、添加數據、更新數據、查詢數據)

    示例代碼1: 運行結果: 示例代碼2: 運行結果: 示例代碼3: 運行結果: 注意: 對比上面幾種建立索引的方法,是有一定區(qū)別的。根據響應結果可以看出: es.?indices.create() 方法是標準的創(chuàng)建索引的方法,其它幾種方法在創(chuàng)建索引的同時也會生成一條數據,并且生成mappin

    2024年02月11日
    瀏覽(1065)
  • ElasticSearch7.3學習(十六)----RestHighLevelClient Java api實現(xiàn)索引的創(chuàng)建、刪除、是否存在、關閉、開啟

    注意:導入的包區(qū)別,不同的包創(chuàng)建索引的方式不同。博主親身實踐,具體體現(xiàn)在createIndexRequest.mapping()里面。讀者可自行試驗。 ?由此可以猜想一下: 可以看到上述兩種方式導入的包的子類名是相同的,但是具體對索引的操作方式可能是不同的。具體的區(qū)別博主暫時還不清

    2024年02月16日
    瀏覽(91)
  • Elastic Search 命令詳解-索引操作

    Elastic Search 命令詳解-索引操作

    關于Elastic Search安裝可以參考《Elastic Search 8.6.2集群安裝部署》及Kibana安裝可以參考《Elastic Search 8.6.2簡單操作》。相關命令將在Kibana工具的Console平臺上執(zhí)行。 Elastic Search索引操作主要包含:創(chuàng)建、刪除、關閉和打開索引,以及索引別名的操作。其中,索引別名的操作在生產環(huán)

    2024年02月08日
    瀏覽(18)
  • 【深度學習】 Python 和 NumPy 系列教程(三):Python容器:1、列表List詳解(初始化、索引、切片、更新、刪除、常用函數、拆包、遍歷)

    【深度學習】 Python 和 NumPy 系列教程(三):Python容器:1、列表List詳解(初始化、索引、切片、更新、刪除、常用函數、拆包、遍歷)

    目錄 一、前言 二、實驗環(huán)境 三、Python容器(Containers) 0、容器介紹 1、列表(List) 1. 初始化 a. 創(chuàng)建空列表 b. 使用現(xiàn)有元素初始化列表 c. 使用列表生成式 d. 復制列表 2. 索引和切片 a. 索引 b. 負數索引 c. 切片 3. 常用操作(更新、刪除) a. 更新單個元素 b. 更新切片 c. 刪除單

    2024年02月09日
    瀏覽(25)
  • [elastic 8.x]java客戶端連接elasticsearch與操作索引與文檔

    為了方便演示,我關閉了elasticsearch的安全驗證,帶安全驗證的初始化方式將在最后專門介紹 其中,HotelDoc是一個實體類 帶安全驗證的連接有點復雜,將下列代碼中CA證書的位置改為實際所在的位置就行了。 password為elastic的密碼,可以在我的另一篇文章中查看密碼的重置方式

    2024年04月11日
    瀏覽(28)
  • Elasticsearch:在 Java 客戶端應用中管理索引 - Elastic Stack 8.x

    管理索引是客戶端應用常用的一些動作,比如我們創(chuàng)建,刪除,打開 及關閉索引等操作。在今天的文章中,我將描述如何在 Java 客戶端應用中對索引進行管理。 我們需要閱讀之前的文章 “Elasticsearch:在 Java 客戶端中使用 truststore 來創(chuàng)建 HTTPS 連接”。在那篇文章中,我們詳

    2023年04月09日
    瀏覽(22)
  • Elasticsearch:如何通過 3 個簡單步驟從 Elastic 數據中刪除個人身份信息

    Elasticsearch:如何通過 3 個簡單步驟從 Elastic 數據中刪除個人身份信息

    作者:Peter Titov 對于任何組織來說,個人身份信息 (Personally Identifiable information, PII) 合規(guī)性都是一個日益嚴峻的挑戰(zhàn)。 無論你是在電子商務、銀行、醫(yī)療保健還是其他數據敏感的領域,PII 都可能會在無意中被捕獲和存儲。 擁有結構化日志,可以輕松快速識別、刪除和保護敏

    2024年02月13日
    瀏覽(24)
  • ChatGPT 和 Elasticsearch:使用 Elastic 數據創(chuàng)建自定義 GPT

    ChatGPT 和 Elasticsearch:使用 Elastic 數據創(chuàng)建自定義 GPT

    作者:Sandra Gonzales ChatGPT Plus 訂閱者現(xiàn)在有機會創(chuàng)建他們自己的定制版 ChatGPT,稱為 GPT,這替代了之前博客文章中討論的插件?;诒鞠盗械牡谝徊糠值幕A —— 我們深入探討了在 Elastic Cloud 中設置 Elasticsearch 數據和創(chuàng)建向量嵌入 —— 這篇博客將指導你完成開發(fā)一個定制的

    2024年04月26日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包