Elasticsearch多文件操作

2021-09-26 10:17:30 字數 1798 閱讀 3288

閱讀文字大概需要3分鐘。

1、        一次性獲取多個index

public static void main(string args) throws ioexception 

}//onshutdown

client.close();

}

執行結果

2、 bulk api,又稱批量api允許在單個請求中索引和刪除多個文件

public static void main(string args) throws ioexception 

//on shutdown

client.close();

}

通過以上**就可以插入兩條index,可以通過查詢index的api查詢到插入成功。

3、using bulk processor,bulkprocessor提供乙個基於請求數量和大小或者某個特定時間之後的自動重新整理批處理操作介面

bulkprocessor bulkprocessor = bulkprocessor.builder(

client, //增加elasticsearch客戶端

new bulkprocessor.listener() 

//呼叫bulk之前執行 ,例如你可以通過request.numberofactions()方法知道numberofactions

@override

publicvoid afterbulk(long executionid,bulkrequest request, bulkresponse response)

//呼叫bulk之後執行 ,例如你可以通過request.hasfailures()方法知道是否執行失敗

@override

publicvoid afterbulk(long executionid,bulkrequest request,throwable failure) // 呼叫失敗拋 throwable

}).setbulkactions(10000) //每次10000請求

.setbulksize(new bytesizevalue(5,bytesizeunit.mb)) //拆成5mb一塊

.setflushinterval(timevalue.timevalueseconds(5))//無論請求數量多少,每5秒鐘請求一次。

.setconcurrentrequests(1) //設定併發請求的數量。值為0意味著只允許執行乙個請求。值為1意味著允許1併發請求。

.setbackoffpolicy(backoffpolicy.exponentialbackoff(timevalue.timevaluemillis(100),3))//設定自定義重複請求機制,最開始等待100毫秒,之後成倍更加,重試3次,當一次或多次重複請求失敗後因為計算資源不夠丟擲 esrejectedexecutionexception 異常,可以通過backoffpolicy.nobackoff()方法關閉重試機制

.build();

推薦閱讀

spring boot 最流行的 16 條實踐

ssm框架的面試常見問題

【分布式】快取穿透、快取雪崩,快取擊穿解決方案

阿里p7給出的乙份超詳細 spring boot 知識清單

關注我每天進步一點點

你點的每個在看,我都認真當成了喜歡

文檢索 ElasticSearch(上)

文檢索 elasticsearch 2 檢視索引列表 curl xget localhost 9200 cat nodes?v 3 檢視索引列表 curl xget localhost 9200 cat indices?v 4 建立索引 curl xput localhost 9200 custom...

elasticsearch多磁碟擴容

由於早前elasticsearch集群資料儲存路徑只配置了乙個,所以某天磁碟突然爆滿,集群差點當機。需重新配置多路徑儲存路徑,因為在生產環境,得保證集群不死掉,只能一台一台配置重啟。修改elasticsearch.yml中path.data屬性,新增多路徑以逗號分隔 有乙個索引的某個分片一直處理un...

c 多函式多文

問大神,大神說每個cpp檔案都要寫乙個寫乙個同名.h檔案,這個應該是針對複雜情況,簡單的情況就是寫乙個.h檔案把全域性變數和會用到的函式寫進去,然後需要呼叫的地方寫 include h 就行。注意 main函式中的變數宣告還要再寫一次的 float a,b,c 這是沒用.h的情況,用的話其實也就是把...