AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

Yahoo 开源实时大数据处理服务系统 Vespa

  • 2017-09-28
  • 本文字数:1748 字

    阅读完需:约 6 分钟

从 2006 年开源 Hadoop 开始,Yahoo(也就是现在的 Oath)为广大开发者社区的大数据基础设施做出了不可磨灭的贡献。现在,我们又卖出了坚实的一步,Yahoo 的大数据处理和服务引擎 Vespa 正式在 GitHub 上开源了( https://github.com/vespa-engine )。

越来越多的应用程序需要处理大量的数据,尽管开发者可以使用 Hadoop 来存储和批处理数据,也可以使用 Storm 来处理流式数据,但这些技术无法直接服务于最终用户。提供大规模服务是一项巨大的挑战,当用户需要等待基于大量数据集的计算结果时,比如特征搜索、推荐系统、定制化,这种挑战就会变得尤为明显。

有了 Vespa,开发者可以轻松地构建基于大数据集实时计算结果的应用,而到目前为止,只有少数几个大公司具备这样的能力。

提供服务不是简单地根据 ID 查询项目或应用模型计算出几个数字,很多提供服务的应用需要基于大数据集运行计算,比如搜索和推荐。为了给用户返回精确的搜索结果或推荐清单,应用程序需要找出所有符合查询条件的项目,根据相关度或推荐模型决定每一个项目的匹配程度,移除重复项目,增加浏览辅助项,最后把结果返回给用户。因为这些计算依赖用户的具体请求,所以无法预先计算。应用程序必须实时地处理用户请求,而且要快,因为用户在等待结果。在大数据集上快速执行上述操作需要很多基础设施的支持——分布式算法、数据分布和管理、高效的数据结构和内存管理等等。而这些正是 Vespa 要为开发者提供的——一个一站式的引擎,简洁易用。

我们已经在 Oath 的多个产品上使用了 Vespa,包括 Yahoo.com、Yahoo News、Yahoo Sports、Yahoo Finance、Yahoo Gemini、Flickr 等。我们使用 Vespa 来处理每日数十亿个用户请求,为用户返回基于数十亿文档得出的搜索结果和推荐内容,并提供定制化内容和广告。事实上,Vespa 每秒可以处理 90,000 次内容和广告请求,延迟通常只有几十毫秒。在 Flickr 上,Vespa 每秒可以处理数百个基于数百亿张图片的关键字和图像搜索。另外,Vespa 在 Yahoo Gemini 上每天处理 30 亿个请求,高峰时段每秒钟 140,000 个请求,直接给公司带来可观的收益。

我们基于 Vespa 构建的应用具备如下特性:

  • 使用 SQL 风格的查询和文本搜索来过滤内容

  • 基于匹配项生成数据驱动的页面

  • 根据人工或机器学习相关度模型对匹配进行排名

  • 毫秒级的处理响应时间

  • 实时写入数据,每个节点每秒钟写入数千次

  • 在运行服务的同时进行伸缩和重配置

为了保证速度和伸缩性,Vespa 在多台机器上分布数据和计算任务,避免了单点 master 的瓶颈。传统的应用将数据拉取到一个无状态的层上进行处理,而 Vespa 是将计算任务推送给数据集。为此,Vespa 需要做很多非常棘手的工作,比如当机器发生故障或增加新机器时在后台重新分布数据、实现分布式的低延迟和处理算法、处理分布式数据一致性等。

我们在构建 alltheweb.com(后被 Yahoo 收购)时就开始开发我们的搜索和服务。在过去几年中,我们不断使用新技术重写了我们的引擎。Vespa 是我们发布过的项目当中涉及范围最广、代码量最大的一个项目。Vespa 已经在 Yahoo 的大部分关键系统上得到了实地验证,所以我们很高兴能够把 Vespa 推向世界。

Vespa 赋予了开发者将任意大小数据集和模型填充进服务系统的能力,而且可以实时地得到计算结果,带来更好的用户体验,而且成本更低,比预计算方式具有更低的复杂度。而且,开发者可以与复杂的计算展开实时的交互,不需要启动离线作业或反复回过头来检查结果。

Vespa 可以运行在自有数据中心或云端。我们提供了 Vespa 的 Docker 镜像和 rpm 安装包,也提供了运行指南,可以让 Vespa 运行在本地机器或 AWS 集群上。

这个( http://docs.vespa.ai/ )是我们的文档,里面包含了一个入门指南

管理分布式系统不是件简单的事情。我们投入了大量精力开发Vespa,其他开发者就可以专注在创建功能上,他们可以实现基于大数据集的实时计算,而不是把时间花在集群和数据的管理上。根据我们的文档所给出的指南,你可以在不到十分钟的时间内让一个应用跑起来。

原文地址: http://blog.vespa.ai/post/165763618906/open-sourcing-vespa-yahoos-big-data-processing


感谢杜小芳对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-09-28 19:004573
用户头像

发布了 322 篇内容, 共 151.5 次阅读, 收获喜欢 148 次。

关注

评论

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

ToothFairy for Mac:轻松管理蓝牙设备

晨光熹微

钉钉携手鸿蒙扫一扫,打造高效办公新体验

HarmonyOS SDK

harmoyos

OmniReader Pro for Mac:重塑你的阅读体验

晨光熹微

KubeCon 抢鲜 | Kmesh与你共创高性能流量治理更优方案

华为云原生团队

云计算 容器 云原生

Java集合源码--ArrayList的可视化操作过程

电子尖叫食人鱼

Java 算法

为什么别人工资比你高?「程序员性能优化手册」你有吗

Geek_Yin

Java 编程 程序员

Screen Wonders for Mac:点亮 Mac 桌面的奇幻之光

晨光熹微

告别数据库瓶颈!用这个技巧让你的程序跑得飞快!

左诗右码

Package Builder for Mac:Mac 软件打包的得力助手

晨光熹微

一文让你简单了解国密堡垒机定义以及作用

行云管家

堡垒机 国密算法 国密堡垒机 信创国密

智慧党建系统(源码+文档+讲解+演示)

深圳亥时科技

HarmonyOS NEXT应用开发-Notification Kit(用户通知服务)通知类型、级别与渠道

李洋-蛟龙腾飞

金九银十春招必看的2025年Java高频面试题汇总(附答案)

Geek_Yin

Java 编程 程序员 java面试 Java面试题

【堡垒机小知识】堡垒机可以做到应用透明吗?

行云管家

堡垒机 IT运维 应用透明

从AI通识教育到医学+AI,北京中医药大学实现医工交叉、科教融合

ModelWhale

人工智能 人工智能通识教育 AI通识教育 北京中医药大学 医学+AI

博睿数据×华为, 共筑智慧金融新未来

博睿数据

南京大学金莹教授解读AI通识课程体系,清华指导发布AI教育白皮书

ModelWhale

南京大学 人工智能通识教育 人工智能教育 AI通识教育

“深时数字地球”新进展!科学智能助推地球科学研究范式变革

ModelWhale

科学智能 地球科学 AI4S DDE深时数字地球

跨端生态×AI赋能:移动研发模式的双擎驱动

xuyinyin

云智慧再次入选2024亚太区ITSM软件市场TOP10

云智慧AIOps社区

ITSM ITSM软件 工单系统

Go 切片拷贝性能揭示:大切片总体拷贝时间更长,但单元素成本更低

异常君

Go 性能 内存 优化 切片

HarmonyOS运动开发:打造你的专属运动节拍器

王二蛋和他的张大花

鸿蒙 os

视觉与图像识别自动化测试 | 音频转文字

测试人

人工智能

DePIN代币正构建 Web3 和 AI 融合的新范式

PowerVerse

AI Web 3.0 DAO DePIN gpu 算力

甘其果:以《道德经》智慧破局生鲜零售,缔造社区水果新标杆

极客天地

Java面试高频核心宝典(含答案)

Geek_Yin

Java 程序员 java面试 Java面试题

详细教程!Ollama本地部署新版DeepSeek-R1,如何实现远程访问?

贝锐

内网穿透 DeepSeek R1 模型

人工智能在音频、视觉、多模态领域的应用

测试人

从CPU冒烟到丝滑体验:算法SRE性能优化实战全揭秘|得物技术

得物技术

cpu

一文搞懂K8s中的RBAC认证授权

不在线第一只蜗牛

Kubernetes 容器 云原生

拒绝停服,随时回退:MS SQL 到 ≈ 的无缝数据库双向迁移方案

tapdata

容灾备份 高可用数据库迁移 mssql迁移 sqlserver迁移 双向同步

Yahoo开源实时大数据处理服务系统Vespa_大数据_Jon Bratseth_InfoQ精选文章