写点什么

PayPal 开源 JunoDB,支持 3500 亿次日请求的键值存储

  • 2023-06-24
    北京
  • 本文字数:1172 字

    阅读完需:约 4 分钟

PayPal开源JunoDB,支持3500亿次日请求的键值存储

PayPal 最近开源了JunoDB,这是一个底层使用 RocksDB 存储引擎的分布式键值存储。JunoDB 是一个高度可用且非常注重安全的数据库。在 PayPal,它每天处理 3500 亿次请求。

 

JunoDB是用 Golang 编写的,采用了基于代理的设计,支持连接的线性横向扩展。它使用一致性哈希算法对数据进行分区,最大限度地减少了集群扩展或收缩时的数据移动。为了实现零停机,JunoDB 使用了数据中心内和跨数据中心复制,并通过基于仲裁的协议和两阶段提交确保数据一致性。PayPal 首席 MTS Yaping Shi写道:


实际上,PayPal 的每一个核心后端服务都依赖于 JunoDB,从登录到风险再到最终的交易处理。使用 JunoDB,应用程序可以有效地存储和缓存数据,以便在关系数据库和其他服务上快速访问以及降低负载。



图片来源:https://medium.com/paypal-tech/unlocking-the-power-of-junodb-paypals-key-value-store-goes-open-source-ee85f935bdc1

 

该数据库主要包含三个组件:JunoDB 客户端库(有面向不同语言的版本)、JunoDB 客户端代理(一个连接存储服务器并负责分片的负载平衡器),以及 JunoDB 存储(基于高性能嵌入式数据库RockDB,同时提供了内存和磁盘持久化存储)。

 

如果出现节点故障,那么它提供的自动化即时故障转移功能避免了集群领导的重新选举或数据的重新分配。

 

对于这个新的 NoSQL 解决方案,其建议的应用场景包括缓存、存储用户首选项、帐户详情和 API 响应等信息、幂等性(确保操作幂等并消除任何重复处理)和延迟桥接(帮助解决由跨区域的分布式数据库所造成的复制延迟)。Shi 介绍了该项目在 PayPal 内部的演进情况:


它最初是一个单线程的 C++程序,但后来,为了实现高并发和多核友好性,我们用 Golang 进行了重写。JunoDB 还从一个短 TTL(生存时间)的内存数据存储演变为一个支持长 TTL 的持久数据存储。默认情况下,它通过磁盘加密和 TLS 传输来提升数据的安全性。

 

Mercado Libre 高级软件工程师 Nahim Felicito Gomez评论道:


使用 Golang 重写 JunoDB,PayPal 充分利用了该语言的并发性和多核能力,那也是 Golang 成为构建 JunoDB 客户端库的理想选择的原因。

 

Hacker News上,许多用户讨论了该项目及键值存储的好处,并将 JunoDB 与FoundationDB等其他数据库进行了比较,而用户 gregwebs 则质疑公告中缺乏数据:


如果能看到一些基准测试,或者只是提供一些数据,那就太好了。TiKV是 CNCF 捐赠的项目,具有大致相同的架构,并已部署在超过 200 个节点的大型集群中。

 

JunoDB 是GitHub上的一个开源项目,遵循 Apache 2 许可。为了帮助开发人员有效地使用该数据库,PayPal 发布了服务器设置客户端构建视频教程。该项目的路线图上还包括 Golang 客户端和 Kubernetes JunoDB 操作符。

 

原文链接:

https://www.infoq.com/news/2023/06/paypal-junodb-kv-store/


相关阅读:

Skyscanner 数据文化的改进之道

DevSecOps,将安全性集成到软件开发的每一个阶段

零拷贝技术升级,V6D 让数据传输更高效

2023-06-24 08:004654

评论 1 条评论

发布
用户头像
如果已经存储10亿条数据在内了,一天存取3500亿还是可以的,如果本身10条数据,任何一个循环存储本地map对象都比这个快。。。。。
2023-08-01 21:36 · 广东
回复
没有更多了
发现更多内容

微软远程桌面连接工具,Remote Desktop下载 Mac远程软件

Rose

大模型驱动的新一代 BI 平台,Sugar BI 开启智慧决策新模式

百度Geek说

企业号 5 月 PK 榜 Sugar BI 企业号2024年5月PK榜

暗黑破坏神II:狱火重生(暗黑破坏神2重制版)/毁灭之王中文版 Mac/win

Rose

算法人生(9):从“贝叶斯更新”看“战胜拖延”(消极预期版)

养心进行时

机器学习 算法 贝叶斯算法 走出拖延 拖延

云南等级保护测评机构有哪些?分别在哪里?

行云管家

等保 堡垒机 云南 等保测评机构

纬湃科技第一季度以稳健业绩开启2024财年

财见

算法人生(4):从“选项学习”看“战胜拖延”(担心失败版)

养心进行时

算法 强化学习 走出拖延 拖延 选项学习

算法人生(6):从“反馈学习”看“战胜拖延”(被动攻击版)

养心进行时

算法 强化学习 走出拖延 拖延 反馈学习

LLM 大模型学习必知必会系列(二):提示词工程-Prompt Engineering 以及实战闯关

汀丶人工智能

Prompt工程

Parallels Desktop 18 for Mac(Pd虚拟机) 18.3.2通用激活版

Rose

ChatGPT-5最新消息;预计包含Sora模型;附最新使用教程

蓉蓉

openai ChatGPT4

Mac电脑风扇控制软件:Macs Fan Control Pro 授权激活版

Rose

算法人生(7):从“时间折扣策略”看“战胜拖延”(等待最佳时机版)

养心进行时

算法 强化学习 走出拖延 拖延 时间折扣

测试答疑助手:从需求文档到设计文档、测试用例的完整测试过程

霍格沃兹测试开发学社

软件测试过程中的痛点思考

老张

提升效率 质量保障

算法人生(2):从“强化学习”看如何“活在当下”

养心进行时

算法 活在当下 强化学习

LLM 大模型学习必知必会系列(一):大模型基础知识篇

汀丶人工智能

prompt 工程 检索增强技术RAG LLM大模型

商品上新业务状态机接入实践

得物技术

Java 前端 企业号 2024年5月 PK 榜

魔兽争霸3冰封王座Warcraft III for mac 解除8M地图限制v1.24.0中文

Rose

算法人生(3):从“贪心算法”看“战胜拖延”(完美主义版)

养心进行时

算法 拖延症 贪心算法 走出拖延 拖延

算法人生(5):从“元学习”看“战胜拖延”(没兴趣版)

养心进行时

机器学习 算法 元学习 走出拖延 拖延

算法人生(8):从“注意力算法”看“战胜拖延”(被分心太多版)

养心进行时

深度学习 算法 走出拖延 拖延 注意力算法

RWA会成为下一个风口吗?有哪些值得关注的项目?

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

AnyGo for Mac(虚拟定位软件) 使用教程

Rose

一文盘点 Partisia Blockchain 生态 4 月市场进展

西柚子

HBase Meta 元信息表修复实践

vivo互联网技术

HBase HBase meta表 HBase meta表修复

算法人生(1):从“强化学习”看如何“战胜拖延”

养心进行时

算法 拖延症 强化学习 走出拖延 拖延

「参数」让流水线动起来

都广科技

DevOps

一键自动化博客发布工具,用过的人都说好(cnblogs篇)

程序那些事

自动化 工具 程序那些事 自动发布

PayPal开源JunoDB,支持3500亿次日请求的键值存储_数据库_Renato Losio_InfoQ精选文章