elasticsearch java API ------定义索引字段属性
TransportClient client = null;
public ESClientTest() {
Settings settings = ImmutableSettings.settingsBuilder()
.put("client.transport.sniff", true).build();
client = new TransportClient(settings);
}
public void connect() {
client.addTransportAddress(new InetSocketTransportAddress("localhost", 9300));
}
public void close(){
client.close();
}
public void putMapping(){
try {
//先创建空索引库
client.admin().indices().prepareCreate("productindex").execute().actionGet();
XContentBuilder mapping = XContentFactory.jsonBuilder()
.startObject()
.startObject("productindex")
.startObject("properties")
.startObject("title").field("type", "string").field("store", "yes").endObject()
.startObject("description").field("type", "string").field("index", "not_analyzed").endObject()
.startObject("price").field("type", "double").endObject()
.startObject("onSale").field("type", "boolean").endObject()
.startObject("type").field("type", "integer").endObject()
.startObject("createDate").field("type", "date").endObject()
.endObject()
.endObject()
.endObject();
PutMappingRequest mappingRequest = Requests.putMappingRequest("productindex").type("productindex").source(mapping);
client.admin().indices().putMapping(mappingRequest).actionGet();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
ESClientTest es = new ESClientTest();
es.putMapping();
es.close();
}
相关推荐
**Elasticsearch Java API详解** Elasticsearch是一个分布式、RESTful风格的搜索和数据分析引擎,广泛应用于大数据领域的实时分析和信息检索。Java API是Elasticsearch官方提供的与Elasticsearch服务器进行交互的...
Java API 提供了与 Elasticsearch 服务器交互的能力,使得开发者能更方便地在 Java 应用程序中集成 Elasticsearch。 **Spring Boot 与 Elasticsearch 整合** Spring Boot 是一种简化 Spring 应用程序开发的框架,...
7. **映射(Mapping)**:通过Java API可以定义和更新索引的映射,这决定了字段的数据类型和如何被分析。例如,`client.admin().indices().preparePutMapping().setSource(mappingJson).execute()`可以用来设置映射...
- 设置环境变量`JAVA_HOME`指向JDK的安装路径,确保Elasticsearch能识别Java运行环境。 3. **启动与管理**: - 使用命令行启动Elasticsearch,进入解压目录执行`bin/elasticsearch.bat`。 - 使用`bin/elastic...
总结, 本文详细介绍了使用 Java API 实现与 Elasticsearch 集群交互的方法, 包括连接集群、定义索引字段、索引数据、删除数据、搜索以及数据同步等方面的内容。这些技术对于构建高效稳定的搜索系统至关重要。
**Elasticsearch Java API 离线文档** Elasticsearch 是一个开源的全文搜索引擎,它以其高效、可扩展和易用性而广受开发者欢迎。Java API 是 Elasticsearch 提供的一种客户端接口,允许开发者使用 Java 语言与 ...
Elasticsearch是一个开源的全文搜索引擎,它以分布式、RESTful API接口、实时、高可用性和可扩展性而闻名。在Windows环境下安装和使用Elasticsearch 7.8.0版本,用户可以享受到强大的搜索和分析功能,适用于日志分析...
Elasticsearch 5.x 版本的 Java API 手册是开发者进行 Elasticsearch 相关开发的重要参考资料。Elasticsearch 是一个流行的开源全文搜索引擎,广泛应用于数据检索、分析和实时数据存储。Java API 提供了与 Elastic...
- **类型(Type)**:在一个索引中定义的不同类型的文档(自Elasticsearch 7.0.0起已被弃用,所有文档默认属于 `_doc` 类型)。 - **分片(Shard)**:为了提高性能和可扩展性,索引被分割成多个分片,可以在不同节点...
1. **映射创建**:Elasticsearch的映射(Mapping)定义了索引中字段的数据类型和规则。在Java中,可以通过`PutMappingRequest`创建映射,并使用`RestHighLevelClient`的`putMapping`方法提交请求。例如,为一个名为`...
在Java环境中操作Elasticsearch,我们通常会利用官方提供的Java API,这是一个非常全面且强大的工具集,让我们能够方便地进行索引管理、查询、过滤、分组和映射设置等操作。 首先,让我们详细了解如何使用Java API...
Java API是与Elasticsearch交互的主要方式之一,尤其对于Java开发者来说,它提供了丰富的功能和高效的性能。本手册将深入探讨Elasticsearch Java API的各个方面,帮助你充分利用这个强大的工具。 1. **Elastic...
- `mapper-extras-7.4.0.jar`:包含了一些额外的字段映射类型,扩展了Elasticsearch的默认映射能力。 - `elasticsearch-rest-client-7.4.0.jar`:Elasticsearch的REST客户端库,允许通过HTTP/RESTful API与Elastic...
- **映射(Mapping)**:定义索引中字段的数据类型和分析规则。 2. **IK分词器:** - IK分词器是Elasticsearch中常用的中文分词插件,专为中文设计。它支持动态词典加载,能处理复杂的中文词汇和短语,提高搜索精度...
在Elasticsearch中,mapping是定义索引中字段的数据类型和属性的过程,它影响着数据如何被索引和搜索。通过自定义注解,开发者可以在实体类上直接声明字段的mapping,避免了手动编写JSON映射文件的繁琐工作。这使得...
5. **动态映射**:Elasticsearch支持动态字段映射,意味着可以自动识别新添加字段的数据类型,无需预先定义。 6. **多租户**:一个Elasticsearch实例可以支持多个索引,每个索引有自己的设置和映射,实现资源隔离。...
在本文中,我们将深入探讨如何将Spring Boot与Elasticsearch集成,...通过定义实体、创建repository接口以及使用提供的API,我们可以实现对Elasticsearch的数据管理,从而实现高效的全文检索、数据分析和实时数据处理。