信息输出:搜索和分析
当你使用Elasticsearch作为你的文档库的时候,并且检索文档和元数据,真正的核心来自于能够轻松访问构建在ApacheLucene搜索引擎库上的全套搜索功能。
ElasticSearch提供了一个简单、一致的RESTAPI,用于管理集群、索引和搜索数据。出于测试目的,您可以直接从命令行或通过Kibana中的开发人员控制台轻松提交请求。从您的应用程序中,您可以使用ActudiSql客户端来选择您的语言:Java、JavaScript、GO、.NET、PHP、Perl、Python或Ruby。
查询你想要的数据
ElasticSearch REST API支持结构化查询、全文查询和将两者结合在一起的复杂查询。结构化查询与您可以在SQL中构造的查询类型类似。例如,您可以搜索员工索引中的性别和年龄字段,并按雇用日期字段对匹配项进行排序。全文查询查找与查询字符串匹配的所有文档,并返回按相关性排序的文档,它们与搜索词的匹配程度如何。
除了搜索单个术语之外,还可以执行短语搜索、相似性搜索和前缀搜索,并获取自动完成建议。
是否有要搜索的地理空间数据或其他数字数据?ElasticSearch在支持高性能地理和数字查询的优化数据结构中索引非文本数据。
您可以使用ElasticSearch的综合JSON风格查询语言(查询DSL)访问所有这些搜索功能。您还可以构造SQL样式的查询,以在elasticsearch中本机搜索和聚合数据,JDBC和ODBC驱动程序使广泛的第三方应用程序能够通过SQL与elasticsearch交互。
分析数据
ElasticSearch聚合使您能够构建复杂的数据摘要,并深入了解关键指标、模式和趋势。聚合使您能够回答以下问题,而不仅仅是找到谚语中的“大海捞针”。
-
干草堆里有多少针?
-
针的平均长度是多少?
-
针的中间长度是多少,由制造商细分?
-
在过去的六个月里,干草堆里每加了多少针?
您还可以使用聚合来回答更微妙的问题,例如:
-
你们最受欢迎的针制造商是什么?
-
是否有异常或异常的针团?
因为聚合利用用于搜索的相同数据结构,所以它们也非常快。这使您能够实时分析和可视化数据。您的报表和仪表板会随着数据的更改而更新,因此您可以根据最新信息采取操作。
此外,聚合与搜索请求一起运行。您可以在单个请求中同时对同一数据搜索文档、筛选结果和执行分析。而且,由于聚合是在特定搜索的上下文中计算的,因此您不仅显示所有70号针的数量,还显示符合用户搜索标准的70号针的数量,例如,所有70号不粘刺绣针。
还有更多
想要自动分析时间序列数据吗?您可以使用机器学习功能来创建数据中正常行为的精确基线,并识别异常模式。通过机器学习,您可以检测到:
-
与数值、计数或频率的时间偏差有关的异常
-
统计稀有性
-
一个群体成员的异常行为
最好的部分呢?您可以这样做,而无需指定算法、模型或其他与数据科学相关的配置。