【锁定直播】字节、华为云、阿里云等技术专家讨论如何将大模型接入 AIOps 解决实际问题,戳>>> 了解详情
写点什么

Elasticsearch 的诞生、发展与愿景

  • 2014-12-10
  • 本文字数:1715 字

    阅读完需:约 6 分钟

Elasticsearch 是一款基于 Apache Lucene 构建的开源搜索引擎,它采用 Java 编写并使用 Lucene 构建索引、提供搜索功能,Elasticsearch 的目标是让全文搜索变得简单,开发者可以通过它简单明了的 RESTFul API 轻松地实现搜索功能,而不必去面对 Lucene 的复杂性。Elasticsearch 能够轻松的进行大规模的横向扩展,以支撑 PB 级的结构化和非结构化海量数据的处理,最近来自于 S&S Media 的 Diana Kupfer 就 Elasticsearch 的发展历程采访了其创建者Shay Banon,本文整理了该采访的主要内容,如果想阅读英文原文,可以点击这里

在谈到为什么会接触Lucene 并开发Elasticsearch 的时候,Shay Banon 认为自己参与Lucene 完全是一种偶然,当年他还是一个待业工程师,跟随自己的新婚妻子来到伦敦,妻子想在伦敦学习做一名厨师,而自己则想为妻子开发一个方便搜索菜谱的应用,所以才接触到Lucene。直接使用Lucene 构建搜索有很多问题,包含大量重复性的工作,所以Shay 便在Lucene 的基础上不断地进行抽象,让Java 程序嵌入搜索变得更容易,经过一段时间的打磨便诞生了他的第一个开源作品“Compass”,中文即“指南针”的意思。之后,Shay 找到了一份面对高性能分布式开发环境的新工作,在工作中他渐渐发现越来越需要一个易用的、高性能、实时、分布式搜索服务,于是他决定重写Compass,将它从一个库打造成了一个独立的server,并将其改名为Elasticsearch。

对于开发开源分布式系统的一些最佳实践,以及需要特别注意的地方,Shay Banon 认为构建一个分布式的系统并不容易,在将Elasticsearch 从一个个人项目变成一个公司项目之后,他们的首要任务就是创建一个崭新的测试基础设施以测试并验证系统的行为。分布式系统需要在网络上的不同机器上运行,这意味着当错误发生的时候很难调试,为此Elasticsearch 花费了大量时间构建了一个能够将分布式测试作为“普通”集成测试的一部分运行的测试工具。Shay Banon 认为“如果一个系统没有测试,何谈它的运行机理”,测试系统是构建分布式系统最重要的基础设施之一。

Shay Banon 认为对于现在的企业而言数据是所有业务的生命源泉,企业想要通过最简单的方式从数据中获取尽可能多的价值,而搜索就是实现这一目标的一种非常好的方式。 Elasticsearch 能够对海量数据进行全文搜索,结构化的搜索和分析,并且已经被大量的组织所使用,包括 Foursquare、Wikimedia、GitHub 以及 CERN。谈到 Elasticsearch 的成功,Shay Banon 认为 Elasticsearch 通过构建一种能够允许用户将任意领域模型映射到“搜索”上的技术实现了用例的爆发式增长;通过标准化的 JSON 和 RESTful 接口,使用不同编程语言、不同框架的开发者可以将其应用到各种各样的用例中。另外,Elasticsearch 不关心数据的类型,无论是传统的 web 页面、word 文档、web 服务器的日志,还是 Foursquare 上的一个位置,银行的一条交易记录都可以通过它进行索引并搜索。

今年夏天,Elasticsearch 获得了 7000 万美元的 C 轮融资,对于该融资对公司路线图的影响,Shay Banon 说:

“正如你所看到的,作为一家公司我们有非常雄伟的目标。我们最高的目标就是尽快地为我们的用户交付实实在在的东西。在创建公司的时候我们做的第一件事就是确保所有流行的语言和框架都有正式的客户端驱动。现在,我们已经有可以与 Ruby、Python、PHP、Perl、.NET 和 Java 集成的客户端,将来会有更多。我们还在构建 Kibana 和 Logstash,前者旨在让用户能够非常容易地可视化 Elasticsearch 中的数据,后者则是为了收集、分析和存储日志而设计,用户可以使用它将数据导入到 Elasticsearch 中。除此之外,我们还在开发一个能够将 Elasticsearch 与 Hadoop 集成到一起的模块,它支持所有的 Hadoop 发行版,包括 Apache Hadoop、MapR、Cloudera 和 Hortonworks。这些都是大项目,大部分投资都进入到了这些项目的开发中。通过融资,我们不仅能够确保公司可以实现短期目标,同时还能够制定雄伟的长期计划并尽快地开始实施。”


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

公众号推荐:

2024 年 1 月,InfoQ 研究中心重磅发布《大语言模型综合能力测评报告 2024》,揭示了 10 个大模型在语义理解、文学创作、知识问答等领域的卓越表现。ChatGPT-4、文心一言等领先模型在编程、逻辑推理等方面展现出惊人的进步,预示着大模型将在 2024 年迎来更广泛的应用和创新。关注公众号「AI 前线」,回复「大模型报告」免费获取电子版研究报告。

AI 前线公众号
2014-12-10 02:2813876
用户头像

发布了 321 篇内容, 共 115.9 次阅读, 收获喜欢 18 次。

关注

评论

发布
暂无评论
发现更多内容

FinClip 12 月大事件 | IDE支持小游戏开发调试和预览

FinClip

小游戏引擎如何选?看完这篇就够了

FinClip

2023前端二面必会vue面试题指南

bb_xiaxia1998

Vue

【12.30-1.6】写作社区优秀技术博文回顾

InfoQ写作社区官方

热门活动

React组件之间的通信方式总结(上)

beifeng1996

React

Hyperledger AnonCreds:开源、开放规范下,保护隐私的可验证凭证

BSN研习社

火山引擎DataLeap数据调度实例的 DAG 优化方案

字节跳动数据平台

大数据 数据治理 数据研发

SREWorks v1.4 版本发布 | 离线安装 & 前端重构

阿里云大数据AI技术

大数据 开源 运维 企业号 1 月 PK 榜

水印LOGO有哪些类型?如何在线给图片添加水印LOGO?

互联网民工阿强

图片处理 添加水印 水印 水印LOGO

构建自组织团队,让敏捷管理更好地落地

敏捷开发

项目管理 敏捷开发 项目管理软件 自组织

Java高手速成 | Spring、JPA与Hibernate的整合

TiAmo

hibernate Spring JPA Spring Java

这些js原型及原型链面试题你能做对几道

loveX001

JavaScript

美团前端一面必会react面试题

beifeng1996

React

【团队效率提升】Python-PyWebIO介绍

京东科技开发者

html 软件 markdown Python. 企业号 1 月 PK 榜

谈谈前端性能优化-面试版

loveX001

JavaScript

React组件之间的通信方式总结(下)

beifeng1996

React

我在京东做研发 | 京东云算法科学家解析爆火的ChatGPT

京东科技开发者

AI 技术 算法 经验分享 ChatGPT

【从零开始学爬虫】采集食品行业最新报价数据

前嗅大数据

数据采集 爬虫软件 爬虫案例 爬虫入门教程 爬虫分享

在vue的v-for中,key为什么不能用index?

bb_xiaxia1998

Vue

字节前端必会vue面试题集锦

bb_xiaxia1998

Vue

跨集群流量调度实现 Kubernetes 集群金丝雀升级

Flomesh

K8s 多集群管理 流量管理

HummerRisk V0.8.0:新增金山云、K8s基准检测、源IP审计分析等

HummerCloud

Kubernetes 云安全 云原生安全

前端一面react面试题总结

beifeng1996

React

前端经典面试题(有答案)

loveX001

JavaScript

深航携手华为云,共建数字化智慧民航标杆

Geek_2d6073

Java中不可或缺的关键字「volatile」

小小怪下士

Java 程序员 volatile

如果才能做好准备好前端面试

loveX001

JavaScript

FLStudio水果萝卜最新汉化21版本下载

茶色酒

flstudio FLStudio21 FLStudio21.0.0

聚焦技术创新实力,时序数据库 TDengine 荣登中国技术先锋年度评选两大榜单

TDengine

数据库 tdengine 时序数据库

写过vue自定义指令吗,原理是什么?.m

bb_xiaxia1998

Vue

架构实战 - 模块 6 作业

mm

#架构实战营 电商微服务分析

Elasticsearch的诞生、发展与愿景_大数据_孙镜涛_InfoQ精选文章