我刚刚开始使用Elasticsearch,我看到的一个主要用例是它在大型数据集上的搜索可扩展性,但除此之外你想用它来创建传统的SQL查询RDBMS?
答案 0 :(得分:73)
有两个主要的Elasticsearch用例:
当您进行大量文本搜索时,您需要Elasticsearch,而传统的RDBMS数据库执行效果不佳(配置不佳,充当黑盒,性能不佳)。 Elasticsearch可高度自定义,可通过插件扩展。您可以在没有太多知识的情况下快速构建强大的搜索。
另一个优势是许多人使用Elasticsearch存储来自各种来源的日志(集中他们),因此他们可以分析它们并从中理解。在这种情况下,Kibana变得方便。它允许您连接到Elasticsearch集群并立即创建可视化。例如,Loggly是使用Elasticsearch和Kibana构建的。
请注意,您不希望将Elasticsearch用作主要数据存储。原因在于:How reliable is ElasticSearch as a primary datastore against factors like write loss, data availability
我觉得第二部分不再是前卫,它实际上是Elastic公司去年做得非常好的事情。随着当前DevOps运动,CI / CD管道,来自各种来源的指标数量的增加,ELK成为基础设施监控的事实选择,它不再仅仅是分布式RESTful文本搜索引擎。它有一套惊人的产品:
由社区建立的生态系统正在围绕ELK堆栈发展,扩展了当前的功能,其中很少值得一提:
答案 1 :(得分:25)
要添加其他答案,日志记录仍然是一个主要用例以及搜索,但现在指标和分析变得越来越重要。
我相信这篇文章总结了推动大数据新用例的市场变化。 All you really need to know about Open Source Databases
随着Web 2.0的出现,静态网页变得充满活力 社交媒体就在我们身边。每个人都在发推,发帖, 博客,视频博客,分享照片,聊天和评论。该 物联网(IoT)正在兴起 - 一个快速增长的网络 连接和交换数据的连接设备,如传感器和 智能设备。这里有一些很好的例子。
总而言之 生成大量企业希望吸收的新数据 用来保持领先,提供产品推荐等功能 和更好的客户体验。可以在搜索中分析数据 欺诈检测和行为等应用程序的模式 分析。大部分新数据都是非结构化的,这意味着它 不能整齐地存储在表格数据库中。
想象一下尝试设计 一个数据库,用于保存您的杂货店购物数据 - 您喜欢什么,如何 经常你买它,不管你喜欢牛奶还是奶油和咖啡。 需要新类型的数据库来存储新数据 是非关系的,理想的是低成本。敲响任何铃声?不 NoSQL中的关系和开源中的低成本。
我采访过的一位Elasticsearch架构师表示,Elasticsearch在公司中使用的数据中有80%是非结构化的,而20%是结构化的。 这是公司正在寻找的非结构化数据,用于发现罕见或不寻常的数据模式。他们还使用Elasticsearch监控数据模式。例如,一家大型零售商正在与Elasticsearch进行实时跟踪,以确保商店有足够的货币供应,以便人们在发薪日进行现金支票。
根据我自己的搜索用例体验,我们不仅使用模糊搜索,而且还演变为自动完成和快速搜索。从我所看到的情况来看,一旦你开始使用Elasticsearch,你就开始进入其他用例,补充你现有的用例。现在我们已经将Elasticsearch建立为我们公司的模糊搜索引擎,现在我们有其他团队正在研究用于记录的分析和指标。
以下是一些更深入讨论此主题的其他资源: