## 信息输出:搜索和分析
尽管您可以将Elasticsearch用作文档存储并检索文档及其元数据,但真正的强大之处在于能够轻松访问基于Apache Lucene搜索引擎库构建的全套搜索功能。
Elasticsearch提供了一个简单,一致的REST API,用于管理您的集群以及索引和搜索数据。为了进行测试,您可以轻松地直接从命令行或通过Kibana中的开发者控制台提交请求。在您的应用程序中,您可以使用[Elasticsearch客户端](https://www.elastic.co/guide/en/elasticsearch/client/index.html)作为您选择的语言:Java,JavaScript,Go,.NET,PHP,Perl,Python或Ruby。
### 搜索数据
Elasticsearch REST API支持结构化查询,全文查询和结合了两者的复杂查询。结构化查询类似于您可以在SQL中构造的查询类型。例如,您可以搜索索引中的`gender`和`age`字段,`employee`然后按`hire_date`字段对匹配项进行排序。全文查询会找到所有与查询字符串匹配的文档,并按*相关性对*它们进行归还(它们与您的搜索词的匹配程度如何)。
除了搜索单个术语外,您还可以执行短语搜索,相似性搜索和前缀搜索,并获得自动完成建议。
是否要搜索地理空间或其他数字数据?Elasticsearch在支持高性能地理和数字查询的优化数据结构中索引非文本数据。
您可以使用Elasticsearch全面的JSON样式查询语言([Query DSL](https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl.html "查询DSL"))访问所有这些搜索功能。您还可以构造[SQL样式的查询,](https://www.elastic.co/guide/en/elasticsearch/reference/current/sql-overview.html "总览")以在Elasticsearch内部本地搜索和聚合数据,并且JDBC和ODBC驱动程序使范围广泛的第三方应用程序可以通过SQL与Elasticsearch进行交互。
### 分析数据
Elasticsearch聚合使您能够构建数据的复杂摘要,并深入了解关键指标,模式和趋势。通过汇总,您不仅可以找到谚语“大海捞针”,还可以回答以下问题:
* 大海捞针有多少根?
* 针的平均长度是多少?
* 针头的中位长度是多少,由制造商细分?
* 在过去六个月的每个月中,有多少根针被添加到干草堆中?
您还可以使用聚合来回答更细微的问题,例如:
* 您最受欢迎的针头制造商是哪些?
* 是否有异常或异常的针团?
由于聚合利用用于搜索的相同数据结构,因此它们也非常快。这使您可以实时分析和可视化数据。您的报告和仪表板会随着数据的更改而更新,因此您可以根据最新信息采取措施。
而且,聚合与搜索请求一起运行。您可以在单个请求中同时对相同数据搜索文档,过滤结果并执行分析。而且由于聚合是在特定搜索的上下文中计算的,因此您不仅显示了所有70针大小的针数,而且还显示了符合用户搜索条件的70针大小的针数-例如,所有尺寸的*不绣花*70针。
#### 但是等等,还有更多
是否想自动分析您的时间序列数据?您可以使用[机器学习](https://www.elastic.co/guide/en/machine-learning/7.6/ml-overview.html)功能在数据中创建正常行为的准确基准,并识别异常模式。通过机器学习,您可以检测到:
* 与值,计数或频率的时间偏差有关的异常
* 统计稀有度
* 人口成员的异常行为
最好的部分是?您无需指定算法,模型或其他与数据科学相关的配置即可执行此操作。
- Elasticsearch简介
- 数据输入:文档和索引
- 信息输出:搜索和分析
- 可扩展性和弹性
- Elasticsearch入门
- 启动并运行Elasticsearch
- 索引文件
- 开始搜索
- 使用汇总分析结果
- 从这里开始
- 设置Elasticsearch
- 安装Elasticsearch
- 从Linux或MacOS上的存档安装Elasticsearch
- 在Windows上安装Elasticsearch
- 使用Debian软件包安装Elasticsearch
- 使用RPM安装Elasticsearch
- 使用Windows MSI安装程序安装Elasticsearch
- 使用Docker安装Elasticsearch
- 使用Homebrew在macOS上安装Elasticsearch
- 配置Elasticsearch
- 设置JVM选项
- 安全设定
- 记录配置
- 审核设置
- 跨集群复制设置
- 转换设定
- 索引生命周期管理设置
- 许可设置
- 机器学习设置
- 监控设定
- 保护设置
- SQL访问设置
- 观察者设置
- 重要的Elasticsearch配置
- path.data 和 path.logs
- cluster.name
- node.name
- network.host
- 发现和集群形成设置
- 设置堆大小
- JVM堆转储路径
- GC记录
- 临时目录
- JVM致命错误日志
- 重要系统配置
- 配置系统设置
- 禁用交换
- 文件描述符
- 虚拟内存
- 线程数
- DNS缓存设置
- JNA临时目录未装入 noexec
- 引导检查
- 堆大小检查
- 文件描述符检查
- 内存锁检查
- 最大线程数检查
- 最大文件大小检查
- 虚拟内存最大大小检查
- 最大地图计数检查
- 客户端JVM检查
- 使用串行收集器检查
- 系统调用过滤器检查
- OnError和OnOutOfMemoryError检查
- 抢先检查
- G1GC检查
- 所有权限检查
- 发现配置检查
- 启动Elasticsearch
- 停止Elasticsearch
- 将节点添加到集群
- 全集群重启和滚动重启
- 设置X-Pack
- 配置X-Pack Java客户端
- 引导程序检查X-Pack
- 升级Elasticsearch
- 滚动升级
- 完整集群重新启动升级
- 升级前重新索引
- 重新索引到位
- 从远程群集重新索引
- 集合
- 度量聚合
- 平均聚合
- 加权平均聚合
- 基数聚合
- 扩展统计汇总
- 地理边界聚合
- 地心聚集
- 最大聚集
- 最小集合
- 百分位数汇总
- 百分数排名汇总
- 脚本式指标聚合
- 统计汇总
- 字符串统计汇总
- 总和
- 热门合集
- 价值计数汇总
- 中位数绝对偏差汇总
- 桶聚合
- 邻接矩阵汇总
- 自动间隔日期直方图聚合
- 子集聚集
- 复合聚集
- 日期直方图汇总
- 日期范围汇总
- 多元化的采样器聚合
- 筛选器汇总
- 筛选汇总
- 地理距离汇总
- GeoHash网格聚合
- GeoTile网格聚合
- 全局聚合
- 直方图聚合
- IP范围汇总
- 缺少聚合
- 嵌套聚合
- 父级汇总
- 范围汇总
- rare terms 聚集
- 反向嵌套聚合
- 采样器聚合
- 重要术语汇总
- 重要的文字汇整
- 术语汇总
- 铲斗范围字段的精妙之处
- 管道聚合
- 平均存储桶聚合
- 导数聚合
- 最大存储桶聚合
- 最小存储桶聚合
- 总和桶聚合
- 统计数据桶汇总
- 扩展的统计数据桶聚合
- 百分位桶聚合
- 查询DSL
- 查询和过滤上下文
- 跨集群搜索
- 脚本编写
- 如何使用脚本
- 映射
- 删除映射类型
- 文字分析
- 文字分析总览
- 模组
- 发现和集群形成
- 索引模块
- 分析
- 摄取节点
- 管道定义
- 管理索引生命周期
- 索引总览
- SQL访问
- SQL总览
- 监控集群
- 监控总览
- 冻结指标
- 最佳实务
- 汇总或转换数据
- 汇总历史数据
- 设置集群以实现高可用性
- 备份集群
- 快照和还原
- 注册资料库
- 保护集群
- 安全概述
- 警报群集和索引事件
- Watcher入门
- 命令行工具
- 弹性搜索证书
- 如何
- 一般建议
- 专业术语
- REST API
- API约定
- 发布要点
- 7.6.0
- 重大变化
- 7.6
- 发行说明
- Elasticsearch版本7.6.2