【ArchSummit架构师峰会】基于大模型的基础框架、中台、应用层等专题全覆盖 >>> 了解详情
写点什么

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

评论 1 条评论

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

北京大学讲座 | 大模型时代的软件研发:技术、范式与工具

平平无奇爱好科技

闲在家里可以做点什么挣钱的工作

闵东升

没本钱怎么在手机一天赚500 一部手机

闵东升

什么网络兼职可以一天收入500的?

闵东升

Redis开源协议调整,我们怎么办?

平平无奇爱好科技

云原生中间件最新动态24年3月 - 分布式消息队列服务DMS

轶天下事

《编译原理》阅读笔记:p4-p17

codists

编译原理

阅读架构整洁之道

追随月光的战士

香港云服务器

百度搜索:蓝易云

云服务器 香港服务器 海外服务器 高防服务器 免备案服务器

宝妈在家手机赚钱的软件有哪些

闵东升

有什么可以在手机上挣钱的

闵东升

手机上干点啥能挣零花钱是真的吗

闵东升

华为云FunctionGraph构建高可用系统的实践

平平无奇爱好科技

手机上干点啥能挣零花钱学生党

闵东升

软件开发生产线CodeArts 3月新特性上线啦!

轶天下事

手机一天挣200元的方法

闵东升

每天500元左右的收入

闵东升

只有一部手机在家怎么才能赚钱

闵东升

华为云开发者桌面全新发布CodeArts IDE for Python,极致优雅云原生开发体验

轶天下事

阅读架构整洁之道

追随月光的战士

centos7更新podman

百度搜索:蓝易云

Linux centos 运维 云服务器 Podman

git密码正确还提示git Permission denied, please try again.

百度搜索:蓝易云

git 云计算 Linux 运维 云服务器

带你了解GaussDB SQL中的BOOLEAN表达式

华为云开发者联盟

数据库 华为云 华为云GaussDB 华为云开发者联盟 企业号2024年5月PK榜

30岁女人学点啥挣钱多的职业

闵东升

在Ubuntu安装RPM文件

芯动大师

ubuntu 系统 内核 uboot

如何在Ubuntu 20.04|18.04上安装FreeSwitch

百度搜索:蓝易云

云计算 Linux 运维 云服务器 高防服务器

手机就可以做挣外快的正规平台

闵东升

华为云发布CodeArts API,为API护航

平平无奇爱好科技

高效云端管理的秘诀——华为云命令行工具KooCLI

轶天下事

企业数字化转型,人才是关键。华为政企咨询如何赋能客户高效培养数字化人才?

轶天下事

Docker容器没有ip addr命令:exec ip addr报错

百度搜索:蓝易云

Docker 云计算 运维 IP 云服务器

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