什么是使用elasticsearch与标准sql查询的一些用例?

我刚刚开始使用Elasticsearch,我已经看到的主要用例之一是在大型数据集上进行search的可扩展性,但除此之外,您还想使用它来仅使用传统的RDMS创buildSQL查询吗?

有两个主要的Elasticsearch用例:

  1. 文本search

当您进行大量文本search时,您希望使用Elasticsearch,而传统的RDBMS数据库执行得并不是很好(configuration不佳,充当黑匣子,性能较差)。 Elasticsearch是高度可定制的,可通过插件扩展。 你可以build立强大的search没有太多的知识相当快。

  1. logging和分析

另一个边缘的情况是,很多人使用Elasticsearch来存储来自不同来源的日志(集中它们),所以他们可以分析它们并从中理出。 在这种情况下,Kibana变得方便。 它可以让您连接到Elasticsearch集群,并立即创build可视化。 例如, Loggly是使用Elasticsearch和Kibana构build的。

请记住,您不希望将Elasticsearch用作主要的数据存储。 这里的原因: ElasticSearch作为主要数据存储的可靠性如何,如写入丢失,数据可用性等因素

更新

我觉得第二部分不再是前卫,这实际上就是Elastic公司在过去一年中所做的一切。 随着目前的DevOps移动,CI / CDpipe道,来自不同来源的度量指标的不断增加,ELK成为基础设施监控的实际select,它不再只是一个分布式的RESTful文本search引擎。 它有一个惊人的一套产品:

  • Logstash(吨数据input)
  • 节拍
    • Filebeat
    • Metricbeat
    • Packetbeat
    • Winlogbeat
  • Kibana
    • graphics
    • 天联
  • X-Pack(溢价)
    • 警报
    • 报告
    • 安全
    • 机器学习
    • 跨数据中心指标

由社区构build的生态系统正在围绕ELK堆栈发展,扩大了当前的function,其中很less值得一提:

  • ElastAlert
  • 护盾

为了增加其他答案,日志logging仍然是一个重要的用例以及search,但是现在指标和分析变得越来越重要。

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

随着Web 2.0的出现,静态网页已经变得活跃,社交媒体也在我们身边。 每个人都在发微博,发帖,写博客,看video,分享照片,聊天和评论。 物联网(IoT)正在兴起 – 一个快速增长的连接设备networking,用于收集和交换数据,如传感器和智能设备。 这里有一些很好的例子。

总而言之,这会产生大量的企业想要吸收和使用的新数据,以提供诸如产品推荐和更好的客户体验等function。 可以分析数据以寻找应用程序的模式,例如欺诈检测和行为分析。 大部分新数据是非结构化的,这意味着它不能整齐地存储在表格数据库中。

想象一下,试图devise一个数据库来保存你的杂货店的数据 – 你喜欢什么,多久购买一次,不pipe你喜欢牛奶还是奶油和咖啡。 新的数据库types需要存储新的数据,他们需要非关系和理想的低成本。 敲响任何铃声? 与NoSQL没有关系,在开源中成本低。

我与之谈到的Elasticsearch架构师之一表示,Elasticsearch在公司中使用的数据中有80%是非结构化的,而20%是结构化的。 这是公司正在研究的非结构化数据,以发现罕见或不寻常的数据模式。 他们也使用Elasticsearch来监控数据模式。 例如,一家大型零售商正在使用Elasticsearch进行实时跟踪,以确保人们在商店提供充足的货币供应,以便在工资日进行现金支票。

根据我对search用例的经验,我们不仅使用模糊search,而且演变为自动完成和快速search。 从我所看到的,一旦你开始使用Elasticsearch,你就开始演变成其他用例,补充你现有的东西。 现在我们已经build立了Elasticsearch作为我们公司的模糊search引擎,现在我们有其他团队正在研究分析和度量指标。

以下是有关此主题的其他更多资源:

  • Elasticsearch用例,用户故事
  • Elasticsearch的使用
  • Elasticsearch分析用例
  • Elasticsearch用例进行文档存储
  • 图与Elasticsearch
  • 法医学分析:巴拿马论文与人群智慧
  • 用Elasticsearch介绍机器学习