10 月 23 - 25 日,QCon 上海站即将召开,9折优惠最后2天 了解详情
写点什么

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:004848

评论 1 条评论

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

零代码集成自动化的实现逻辑是什么?

谷云科技RestCloud

零代码 APPlink

好用的思维导图软件MindNode for mac中文版 支持mac14系统

南屿

Mac软件 MindNode破解版下载 思维导图软件MindNode

当创建一个ingress后,kubernetes会发什么?

华为云开发者联盟

云原生 后端 HTTP 华为云 华为云开发者联盟

需方管理运维运营服务的一些心得

太乙闲人

Git 对项目更新的时候提示错误 repository not owned by current user

HoneyMoose

《2023央国企数字化产业赋能图谱》正式发布!(内附下载)

信通院IOMM数字化转型团队

ICT深度观察 央国企数字化转型 央国企数字化产业赋能图谱

文心一言 VS 讯飞星火 VS chatgpt (172)-- 算法导论13.3 1题

福大大架构师每日一题

福大大架构师每日一题

功能强大的专业扫描套装:ExactScan Enterprise中文下载

胖墩儿不胖y

Mac软件 扫描工具

Authing 受邀参加 2023 QCon 全球软件开发大会

Authing

InfoQ Qcon Authing

好消息!时习知荣获IXDC AWARD国际体验奖

平平无奇爱好科技

Excelize入选“2023开源创新榜”优秀开源项目

xuri

GitHub 开源 Excel 创新 Excelize

极狐GitLab Helm Registry 使用指南

极狐GitLab

华为产品创新经验,帮你成为更好的产品创新者

平平无奇爱好科技

在 Walrus 上轻松集成 OpenTofu

SEAL安全

开源 IaC Walrus OpenTofu

C 语言用户输入详解:scanf、fgets、内存地址解析及实用指南

小万哥

程序人生 编程语言 软件工程 C/C++ 后端开发

Super Speed vs. Wireless: A detailed comparison of QCN9274 and QCA9880 wireless network card chips

wallysSK

重磅发布《政务数据云发展与应用白皮书(2023)》(附下载)

信通院IOMM数字化转型团队

政务 政务数据安全 ICT深度观察 政务数据云

展望2024: 中国AI算力能否引爆高性能计算和大模型训练的新革命?

GPU算力

Calendar 366 II for Mac日历软件 最新版下载安装

南屿

Mac日历软件 菜单栏日历提醒工具 Calendar 366 II mac版 Calendar 366 II 下载

速卖通商品列表数据接口(aliexpress.item_search)丨速卖通API接口

tbapi

速卖通API接口 速卖通商品数据接口 速卖通商品列表数据接口 关键词搜索速卖通商品接口

2024上海城博会|上海国际城市与建筑博览会

AIOTE智博会

城博会 上海城博会

K-最近邻算法(KNN)是什么法?

小齐写代码

流式湖仓增强,Hologres + Flink构建企业级实时数仓

阿里云大数据AI技术

速卖通商品详情数据接口(aliexpress.item_get)丨速卖通API接口

tbapi

速卖通商品详情数据接口 速卖通API接口 速卖通商品数据接口 速卖通商品列表数据接口

求解算力“致用”难题,中国算力行业给出首个答案

脑极体

AI

Spring 应用合并之路(二):峰回路转,柳暗花明 | 京东云技术团队

京东科技开发者

国企财务管控模式的创新思路

智达方通

国企 国有企业 财务管控 国企财务管控

说个大事:问界M9来了!

平平无奇爱好科技

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