Elastic Search RESTful API

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: ES是一个服务,通过webservice即可完成集群管理与搜素引擎使用。 1.集群管理 ip:port :默认端口号是9200。es服务正常的话就会见到图1-1. 图1-1  ip:port/_cluster/health :集群的健康状况。 ip:port/_cluster/nodes/_shutdown : 关掉整个集群。 ip:port/_cluster/node

ES是一个服务,通过webservice即可完成集群管理与搜素引擎使用。

1.集群管理

ip:port :默认端口号是9200。es服务正常的话就会见到图1-1.


图1-1 

ip:port/_cluster/health :集群的健康状况。

ip:port/_cluster/nodes/_shutdown : 关掉整个集群。

ip:port/_cluster/nodes/nodeName/_shutdown:关掉指定的node。

2.文档操作

2.1增

ip:port/indexName/type/   POST  :增加文档。见图2-1.

图2-1 增添文档成功

2.2删

ip:port/indexName/type/docID  DELETE  :删除指定id的文档

图2-2 删除指定id的文档

2.3改


2.4查

ip:port/indexName/type/docID GET:按照doc的id来查。见下图。


图2-4 按照docID来查文档

2.5 搜索

2.5.1 GET方法

ip:port/indexName/_search?q=field:content GET:根据关键词搜索文档


图2-5 搜索
由图2-5可见,took表示花费时间,timed_out表示是否超时。

2.5.2 POST方法

POST方法可以携带更多的信息,比如:
{
	"query": {
		"filtered": {
			"query": {
				"bool": {
					"should": [{
						"query_string": {
							"query": "+source:online +countPerMinute:[50 TO 99]",
							"lowercase_expanded_terms": false
						}
					}]
				}
			},
			"filter": {
				"bool": {
					"must": [{
						"range": {
							"@timestamp": {
								"from": 1461845220944,
								"to": 1461846120944
							}
						}
					}]
				}
			}
		}
	},
	"fields": ["theKey"],
	"size": 1000
}

3.索引设置

3.1 创建

3.1.1 自动创建

ip:port/indexName  PUT  :创建名为indexName的索引。

3.1.2 定义索引结构并创建

ip:port/indexName  POST :创建名为indexName的索引。
mapping的意思是 schema mapping,用于定义索引结构。
post内容示例见下:
{
	"mappings": {
		"essay": {
			"properties": {
				"id": {
					"type": "long",
					"store": "yes",
					"precision_step": "0"
				},
				"title": {
					"type": "string",
					"store": "yes",
					"index": "analyzed"
				},
				"content": {
					"type": "string",
					"store": "yes",
					"index": "analyzed"
				}
			}
		}
	}
}

3.2 查看索引结构

ip:port/indexName  GET:查看名为indexName的索引结构。

3.3 开启与关闭

ip:port/indexName/_open:开启索引。
ip:port/indexName/_close:关闭索引。关闭后就不能对这个索引进行读写。

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
目录
相关文章
|
4天前
|
安全 Java API
RESTful API设计与实现:Java后台开发指南
【4月更文挑战第15天】本文介绍了如何使用Java开发RESTful API,重点是Spring Boot框架和Spring MVC。遵循无状态、统一接口、资源标识和JSON数据格式的设计原则,通过创建控制器处理HTTP请求,如示例中的用户管理操作。此外,文章还提及数据绑定、验证、异常处理和跨域支持。最后,提出了版本控制、安全性、文档测试以及限流和缓存的最佳实践,以确保API的稳定、安全和高效。
|
16天前
|
前端开发 Java API
构建RESTful API:Java中的RESTful服务开发
【4月更文挑战第3天】本文介绍了在Java环境中构建RESTful API的重要性及方法。遵循REST原则,利用HTTP方法处理资源,实现CRUD操作。在Java中,常用框架如Spring MVC简化了RESTful服务开发,包括定义资源、设计表示层、实现CRUD、考虑安全性、文档和测试。通过Spring MVC示例展示了创建RESTful服务的步骤,强调了其在现代Web服务开发中的关键角色,有助于提升互操作性和用户体验。
构建RESTful API:Java中的RESTful服务开发
|
20天前
|
XML JSON 安全
谈谈你对RESTful API设计的理解和实践。
RESTful API是基于HTTP协议的接口设计,通过URI标识资源,利用GET、POST、PUT、DELETE等方法操作资源。设计注重无状态、一致性、分层、错误处理、版本控制、文档、安全和测试,确保易用、可扩展和安全。例如,`/users/{id}`用于用户管理,使用JSON或XML交换数据,提升系统互操作性和可维护性。
14 4
|
28天前
|
缓存 前端开发 API
构建高效可扩展的RESTful API:后端开发的最佳实践
【2月更文挑战第30天】 在现代Web应用和服务端架构中,RESTful API已成为连接前端与后端、实现服务间通信的重要接口。本文将探讨构建一个高效且可扩展的RESTful API的关键步骤和最佳实践,包括设计原则、性能优化、安全性考虑以及错误处理机制。通过这些实践,开发者可以确保API的健壮性、易用性和未来的可维护性。
|
30天前
|
API 开发者 UED
深入探讨RESTful API设计原则及最佳实践
在当今互联网时代,RESTful API已成为各种软件系统之间进行通信的重要方式。本文将从资源定义、URI设计、HTTP方法选择、状态码规范等方面深入探讨RESTful API设计的原则与最佳实践,帮助开发者更好地构建高效、健壮的API。
|
30天前
|
JSON Java API
Springboot项目中如何设计一个规范的统一的Restful API 响应框架?
Springboot项目中如何设计一个规范的统一的Restful API 响应框架?
22 1
|
1月前
|
XML JSON API
通过Flask框架创建灵活的、可扩展的Web Restful API服务
通过Flask框架创建灵活的、可扩展的Web Restful API服务
|
3月前
|
JSON API 数据格式
RESTful API 最佳实践
RESTful API 最佳实践
118 0
|
10月前
|
XML JSON 安全
深入理解RESTful API设计原则及最佳实践
2.尽可能使用HTTP标准方法来表示对资源的操作。比如使用GET方法来获取资源,使用POST方法来创建资源,使用PUT方法来更新资源,使用DELETE方法来删除资源。
140 0
|
XML JSON API
RESTful API 最佳实践
RESTful API 最佳实践
136 0