我刚开始使用Elasticsearch,我看到的主要用例之一是它在大型数据集上进行搜索时具有可伸缩性,但是除此之外,您何时想将其用于仅使用传统RDBMS创建sql查询呢?
我刚开始使用Elasticsearch,我看到的主要用例之一是它在大型数据集上进行搜索时具有可伸缩性,但是除此之外,您何时想将其用于仅使用传统RDBMS创建sql查询呢?
Answers:
有两个主要的Elasticsearch用例:
当您执行大量文本搜索时,传统的RDBMS数据库的性能不是很好(配置差,充当黑匣子,性能不佳),因此您需要Elasticsearch。Elasticsearch是高度可定制的,可通过插件扩展。您可以快速建立健壮的搜索而无需太多知识。
另一个极端的情况是,很多人使用Elasticsearch存储来自各种来源的日志(以将它们集中化),因此他们可以对其进行分析并使之有意义。在这种情况下,Kibana变得很方便。它使您可以连接到Elasticsearch集群并立即创建可视化效果。例如, Loggly是使用Elasticsearch和Kibana构建的。
请记住,您不想使用Elasticsearch作为主要数据存储。此处的原因:ElasticSearch作为主要数据存储在面对写入丢失,数据可用性等因素方面的可靠性如何
我觉得第二部分不再是前卫的,实际上是Elastic作为一家公司在过去一年中一直表现出色的东西。随着当前DevOps的发展,CI / CD管道,来自各种来源的越来越多的度量标准,ELK成为了基础架构监视的事实上的选择,它不再只是分布式的RESTful文本搜索引擎。它具有一组惊人的产品:
由社区构建的生态系统围绕ELK堆栈成长,扩展了当前功能,其中很少有值得一提的:
要补充其他答案,日志记录和搜索仍然是主要的用例,但是现在指标和分析变得越来越重要。
我相信这篇文章总结了市场的变化,这些变化正在推动大数据的新用例。 您真正需要了解的有关开源数据库的所有信息
随着Web 2.0的出现,静态网页已变得动态化,社交媒体遍布我们。每个人都在发推文,发布,博客,视频博客,共享照片,聊天和评论。物联网(IoT)不断涌现-一个快速增长的连接网络,用于收集和交换数据,例如传感器和智能设备。这里有一些很好的例子。
总而言之,这会产生大量新数据,企业希望吸收并使用这些新数据以保持领先地位,以提供诸如产品推荐和更好的客户体验之类的功能。可以对数据进行分析,以搜索诸如欺诈检测和行为分析之类的应用程序的模式。许多新数据都是非结构化的,这意味着它们不能整齐地存储在表格数据库中。
想象一下,尝试设计一个数据库来保存您的杂货店购物数据–您喜欢什么,购买频率如何,无论您喜欢在咖啡中喝牛奶还是奶油。需要使用新型的数据库来存储新数据,并且它们必须是非关系型的,并且理想地是低成本的。敲钟吗?不像NoSQL中那样具有关系性,不像开源中那样成本低。
与我交谈的一位Elasticsearch架构师说,Elasticsearch在公司中使用的数据80%是非结构化的,而20%是结构化的。 公司正在寻找非结构化数据以发现稀有或异常数据模式。 他们还使用Elasticsearch监视数据模式。例如,一家大型零售商正在与Elasticsearch进行实时跟踪,以确保商店中有足够的货币供应量,以便人们在发薪日兑现支票。
以我自己的搜索用例经验,我们不仅使用模糊搜索,而且还演变为自动完成和快速搜索。据我所知,一旦开始使用Elasticsearch,您便开始发展为其他用例,以补充已经存在的用例。现在,我们已经在公司中将Elasticsearch建立为模糊搜索引擎,我们现在还有其他团队正在研究用于记录的分析和指标。
以下是一些其他资源,可以更深入地讨论该主题: