使用Elasticsearch与标准SQL查询有哪些用例?

Jam*_*ard 121 use-case elasticsearch

我刚刚开始使用Elasticsearch,我看到的一个主要用例是它在大型数据集上搜索的可扩展性,但除此之外,您是否希望使用它而不是使用传统的RDBMS创建SQL查询?

Eva*_*kas 76

有两个主要的Elasticsearch用例:

  1. 文字搜索

当您进行大量文本搜索时,您需要Elasticsearch,传统的RDBMS数据库执行效果不佳(配置不佳,充当黑盒,性能不佳).Elasticsearch可高度自定义,可通过插件扩展.您可以在没有太多知识的情况下快速构建强大的搜

  1. 记录和分析

另一个优势是许多人使用Elasticsearch存储来自各种来源的日志(集中他们),因此他们可以分析它们并从中理解.在这种情况下,Kibana变得方便.它允许您连接到Elasticsearch集群并立即创建可视化.例如,Loggly是使用Elasticsearch和Kibana构建的.

请记住,您不希望将Elasticsearch用作主数据存储.原因在于:ElasticSearch作为主要数据存储区的可靠性与写入丢失,数据可用性等因素有关

更新

我觉得第二部分不再是前卫,实际上Elastic作为一家公司在过去一年里做得非常好.随着当前DevOps运动,CI/CD管道,各种来源的指标数量的增加,ELK成为基础设施监控的事实选择,它不再仅仅是一个分布式RESTful文本搜索引擎.它有一套惊人的产品:

  • Logstash(大量数据输入)
  • 节拍
    • Filebeat
    • Metricbeat
    • Packetbeat
    • Winlogbeat
  • Kibana
    • 图形
    • 天联
  • X-Pack(高级版)
    • 警报
    • 报告
    • 安全
    • 机器学习
    • 跨数据中心指标

由社区构建的生态系统正在围绕ELK堆栈发展,扩展了当前的功能,其中很少值得一提:

  • ElastAlert
  • 搜索警卫

  • @Legends我的意思是糟糕的配置选项.我自己的经验仅限于MSSQL全文搜索,MSSQL中的设置数量无法与Elasticsearch进行比较.RDBMS中的文本搜索是一个功能,而在Elasticsearch中它是本质. (2认同)

Jam*_*ard 27

要添加其他答案,日志记录仍然是一个主要用例和搜索,但现在指标和分析变得越来越重要.

我相信这篇文章总结了推动大数据新用例的市场变化. 所有你真正需要了解的开源数据库

随着Web 2.0的出现,静态网页变得充满活力,社交媒体就在我们身边.每个人都在推特,发帖,写博客,视频博客,分享照片,聊天和评论.物联网(IoT)正在兴起 - 一个快速增长的连接设备网络,用于收集和交换数据,如传感器和智能设备.这里有一些很好的例子.

总而言之,这会产生大量新数据,企业希望吸收和使用这些数据以保持领先地位,提供诸如产品推荐和更好的客户体验等功能.可以分析数据以搜索欺诈检测和行为分析等应用程序的模式.大部分新数据都是非结构化的,这意味着它不能整齐地存储在表格数据库中.

想象一下,试图设计一个数据库来保存您的杂货店购物数据 - 您喜欢什么,购买频率,您喜欢牛奶还是奶油.需要新类型的数据库来存储新数据,并且它们需要是非关系的并且理想地是低成本的.敲响任何铃声?与NoSQL中的关系不同,开源中的成本低.

我采访过的Elasticsearch架构师之一表示,Elasticsearch在公司中使用的数据中有80%是非结构化的,而20%是结构化的. 这是公司正在寻找的非结构化数据,用于发现罕见或不寻常的数据模式. 他们还使用Elasticsearch来监控数据模式.例如,一家大型零售商正在与Elasticsearch进行实时跟踪,以确保商店有足够的货币供应,供人们在发薪日进行现金支票检查.

根据我自己的搜索用例体验,我们不仅使用模糊搜索,而且还演变为自动完成和快速搜索.从我所看到的情况来看,一旦你开始使用Elasticsearch,你就会开始进入其他用例,补充你现有的用例.现在我们已经将Elasticsearch建立为我们公司的模糊搜索引擎,现在我们有其他团队正在研究用于记录的分析和指标.

以下是一些关于此主题的更深入的其他资源: