http://www.sufeinet.com/plugin.php?id=keke_group

苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

分布式系统框架(V2.0) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper爬虫框架(V2.7-含.netcore) HttpHelper官方出品,爬虫框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 开源的爬虫类,支持多种模式和属性 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 4833|回复: 5

[Elasticsearch] 8-elasticsearch空查询

[复制链接]
发表于 2018-12-8 17:41:59 | 显示全部楼层 |阅读模式
教程目录帖

http://www.sufeinet.com/thread-24643-1-1.html



8-elasticsearch空查询

让我们以 最简单的 search API 的形式开启我们的旅程,空查询将返回所有索引库(indices)中的所有文档:

[Shell] 纯文本查看 复制代码
GET /_search
{} 

        
这是一个空的请求体。

只用一个查询字符串,你就可以在一个、多个或者 _all 索引库(indices)和一个、多个或者所有types中查询:

[Shell] 纯文本查看 复制代码
GET /index_2014*/type1,type2/_search
{}


同时你可以使用 from 和 size 参数来分页:
[Shell] 纯文本查看 复制代码
GET /_search
{
  "from": 30,
  "size": 10
}


一个带请求体的 GET 请求?

某些特定语言(特别是 JavaScript)的 HTTP 库是不允许 GET 请求带有请求体的。 事实上,一些使用者对于 GET 请求可以带请求体感到非常的吃惊。

而事实是这个RFC文档 RFC 7231— 一个专门负责处理 HTTP 语义和内容的文档 — 并没有规定一个带有请求体的 GET 请求应该如何处理!结果是,一些 HTTP 服务器允许这样子,而有一些 — 特别是一些用于缓存和代理的服务器 — 则不允许。

对于一个查询请求,Elasticsearch 的工程师偏向于使用 GET 方式,因为他们觉得它比 POST 能更好的描述信息检索(retrieving information)的行为。然而,因为带请求体的 GET 请求并不被广泛支持,所以 search API 同时支持 POST 请求:

[Shell] 纯文本查看 复制代码
POST /_search
{
  "from": 30,
  "size": 10
}

类似的规则可以应用于任何需要带请求体的 GET API。
我们将在聚合 聚合 章节深入介绍聚合(aggregations),而现在,我们将聚焦在查询。

相对于使用晦涩难懂的查询字符串的方式,一个带请求体的查询允许我们使用 查询领域特定语言(query domain-specific language) 或者 Query DSL 来写查询语句。



1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
发表于 2018-12-8 18:07:38 | 显示全部楼层
看到这帖子真是高兴!
发表于 2018-12-8 18:20:45 | 显示全部楼层
强烈支持楼主ing……
发表于 2018-12-9 18:09:50 | 显示全部楼层
激动人心,无法言表!
发表于 2018-12-9 18:53:24 | 显示全部楼层
激动人心,无法言表!
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备18043678号-2)

GMT+8, 2024-11-8 13:58

© 2014-2021

快速回复 返回顶部 返回列表