Redis 简史

来自 The race to replace Redis [LWN.net] 的第一部分

Redis 简史

Redis 的历史相当复杂。项目的发起者 Salvatore Sanfilippo(又名 “antirez”)本是打算为一个名为 LLOOGG 的实时日志分析应用创建一个"另类数据库",因为 MySQL 并不能满足他的需求。他并没有创建一个关系数据库,而是设计了一个能在内存中存储键-值对的简单字典数据库,这也是 “remote dictionary server"(远程字典服务器)名字的缩写。这个项目随着时间推移不断成熟,增加了很多新功能。Redis 很快在 NoSQL 运动中备受欢迎,并于 2010 年被 VMware 聘用开发 Redis。他在 2013 年转向 VMware 的子公司 Pivotal,并继续参与此项目。

当时的 Redis 正在日益受欢迎,Twitter 和 Pinterest 等知名企业都在使用 Redis,并且也开始出现在 Linux 的发行版中。它在 Ubuntu 12.04(2012 年 4 月)和 Fedora 18(2013 年 1 月)等发行版中得到打包。2013 年 9 月,亚马逊 Web 服务(AWS)的 ElastiCache 服务开始支持 Redis,进一步助力了 Redis 的流行。

2013 年初,一家名为 Garantia Data 的初创公司开始提供 Redis 服务,并试图定位以自己为 “开源 Redis” 的更佳替代方案。2013 年 11 月,Garantia 完成了第一轮融资,并考虑将公司更名为 RedisDB。在遭到 Sanfilippo 的反对后,该公司于 2014 年初改名为 Redis Labs。Sanfilippo 于 2015 年加入 Redis Labs,担任开源开发主管。他在 Redis Labs 工作直到 2020 年。

2018 年,Redis Labs 为其在核心数据库之外的添加模块采用了新的许可证。公司选择使用 Apache License,Version 2.0 的改良版,上面附加了一个名为 Commons Clause 的条款,这一条款禁止出售软件或收费提供服务。公司做出这种更改的理由是,云服务提供商利用开源社区,售卖他们并未开发的基于开源代码的服务。当时,公司表示 Redis “是 BSD 的,并且将永远保持 BSD”。

Redis Labs 并非唯一一家开始尝试使用使用限制许可证的公司。受到投资者支持的数据库公司开始倾向于使用新的许可证,以确保他们能够独家销售使用该软件的服务。例如,MariaDB 在 2016 年为 MaxScale 产品创建了 Business Source License(BSL),MongoDB 则在 2018 年底推出了 Server Side Public License(SSPL)。最终,Redis Labs 为其模块选择了 SSPL 和自有的 Redis Source Available License(RSAL)双重许可证模式。

公司在 2021 年年中将 “Labs” 从其名字中移除。在宣布更名时,Redis 再次承诺支持开源,并且表示公司的重命名 “不会影响 Redis 的开源许可,该许可一直以来都是,并将继续是 BSD 许可”。公司还制定了一个治理模型,重大的关于 Redis 的 “架构、设计或者理念” 的决策都要交给社区的 “核心团队”。你可能会希望这个团队的职责包括确定 Redis 本身的许可证。Redis 的治理页面已经不再可见,但你可以在互联网档案馆的 Wayback Machine 上找到。该页面列出了由五个成员组成的核心团队,其中三个来自 Redis(Yossi Gotlieb、Oran Agra 和 Itamar Haber),另外两个分别来自阿里巴巴的赵赵和 AWS 的 Madelyn Olson。

在 2022 年 3 月 20 日,Redis 宣布 “所有未来的 Redis 版本都将使用源代码可用的许可证”,也就是具体的 SSPL 和 RSAL。Redis 的 CEO Rowan Trollope 写道,保持 BSD 许可证现在 “与我们能够成功引领 Redis 走向未来的能力有所冲突”。在这里,他所说的 “未来版本”,指的是 Redis 7.4 及其后的版本。该公告中的常见问答表示,根据公司的安全策略,安全补丁将会被回溯到使用原版的三项 BSD 许可证的旧版本。

By GPT-4

另外,对于代码的贡献:

代码贡献
(Unknown) (未知) 331 34.2%
Tencent 腾讯 240 24.8%
Redis 雷迪斯 189 19.5%
Alibaba 阿里巴巴 65 6.7%
Huawei 华为 50 5.2%
Amazon 亚马逊网站 50 5.2%
Bytedance 字节跳动 19 2.0%
NetEase 网易 13 1.3%

其中腾讯的 BinBin Wang 负责该项目近 25% 的提交。一些没有明确雇主的贡献者肯定是 Redis 员工。


真大佬。

现在有更多KV存储的选择了。部署也不是“大问题”了。Redis的商业化会比Elasticsearch艰难。

因为不是web程序员,所以没用过redis。但一直听说redis性能如何强悍,不知道用redis做视频图像的中转服务器可不可行。
实际需求是:现在有好多摄像头视频数据需要处理。是否可以将每个摄像头的图像实时存入redis,然后有多个脚本通过访问redis来读取数据进行并行处理?

AI 说可以:

可以的。Redis的性能非常强大,它可以用来作为实时数据的缓存。你可以将每个摄像头的视频数据实时存入Redis,然后通过多个脚本并行处理这些数据。这种方式可以大大提高数据处理的效率。但是,你需要注意Redis的内存使用情况,因为Redis所有的数据都存放在内存中,如果数据过大可能会消耗大量的内存。你可能需要定期清理不需要的数据,或者使用更大的服务器来满足你的需求。