RestHighLevelClient批量刪除滿足某些條件的數據

這個可以通過DeleteByQueryRequest來實現,實例代碼如下

	/**
	 * 批量刪除文檔
	 * @throws IOException
	 */
	@Test
	public void deleteByQueryRequest() throws IOException {
		DeleteByQueryRequest request = new DeleteByQueryRequest("sub_bank1031");
		request.setDocTypes("sub_bank");
		request.setQuery(new TermQueryBuilder("unionNumber", "104663451012"));
		request.setSize(1);
		BulkByScrollResponse resp = highLevelClient.deleteByQuery(request, RequestOptions.DEFAULT);
		println(resp);
	}

 

pom文件es相關依賴如下:

         <dependency>
            <groupId>org.elasticsearch</groupId>
            <artifactId>elasticsearch</artifactId>
            <version>6.8.0</version>
        </dependency>
        <!-- elasticsearch high level -->    
        <dependency>
            <groupId>org.elasticsearch.client</groupId>
            <artifactId>elasticsearch-rest-high-level-client</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.elasticsearch</groupId>
                    <artifactId>elasticsearch</artifactId>                
                </exclusion>
            </exclusions>
            <version>6.8.0</version>
        </dependency>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章