vlambda博客
学习文章列表

【开源访谈】NoSQL 数据库 SSDB 作者访谈


项目介绍

SSDB 是一个 C/C++ 语言开发的高性能 NoSQL 数据库,支持 zset(sorted set), map(hash),kv,list 等数据结构,用来替代或者与 Redis 配合存储十亿级别列表的数据。SSDB 在 QIHU 360 被大量使用,同时也被国内外业界的众多互联网企业所使用。

项目主页:http://ssdb.io/zh_cn/

作者:@ideawu

正文

1.请简单地介绍一下你自己(技术背景、学习经历、工作经历)。

我第一份工作是在百度, 第二份工作在 360,都是常说的 Web 开发,但是我从来不是仅仅把自己当作一个 Web 程序员,或者某个语言的程序员来工作,事实上我开发过收费的 Mac OS X 软件和 iOS 软件并有可观的用户量。

目前,我和几个朋友创办了懒投资(lantouzi.com),这是一个互联网金融方面的平台,目前在该领域已经处在领先者行列。


2.你开发 SSDB 是基于何种缘由?

我开发 SSDB 数据库的目的就是要替代 Redis,事实证明,SSDB 已经在很多公司和创业团队的产品中替代了 Redis,甚至还包括一些知名的传统大企业。SSDB 之所以能替代 Redis,是因为它成熟稳定,有金钱成本优势,因为内存总是要比硬盘贵得多。


3.你平时是如何管理和维护 SSDB 项目的?

一方面,我们会在自己的产品中使用SSDB,"吃自己狗粮",这也有助于这个项目快速地发现和解决问题。

另一方面, 我会通过开源中国网站,Github,QQ群,我的个人网站和微博等途径,和大家交流,收集反馈。我很高兴的是,交流的人越来越多,提交 Pull Request 和 Issue 的程序员也越来越多。


4.与 MongoDB、Redis 等数据库技术相比,SSDB 的核心优势是什么?

SSDB 从来只和 Redis 进行对比,SSDB 的核心优势是单实例大容量和成本优势。另外,如果你关注和使用 SSDB,你可以和它的开发者面对面的网上交流,这种亲切感是一种软优势,虽然它的开发者对待技术会很严厉。

如果 SSDB 非要和 MongoDB 对比的话,那就是 MongoDB 的用户踩了大坑之后的自然反映。


5.在开发 SSDB 的时候为什么会选择 NoSQL 数据库?

因为 SSDB 的上的是要替代 Redis,Redis 就是一个 NoSQL 数据库。


6.你能否谈谈 SSDB 和 NoSQL 未来的发展方向?

SSDB 的未来方向是集群,但集群从来就不是一个简单的事。我常常调侃那些言集群必称一致性哈希的技术半桶水,好像他们口中喊喊一两个名词就能解决问题似的,即使是 Redis 集群,做了几年也没有达到生产要求。SSDB 现在已经有了可用的实验性质的集群雏形。

“未来发展方向”这个词比较大,选择 NoSQL 就是想要高性能和大容量(或集群),曾经人们以为 KV=NoSQL,现在没人这样认为,结构化和关系也是最重要的功能。


7.你能否谈一下你对开源的理解?你认为国内开源现状如何?

我认为开源对所有的参与者都是有利无弊的,开源软件和技术的提供者,检验了自己,收获看得见和看不见的东西。而开源技术的使用者,获得低成本的产品,学到免费的技术,也提高了自己。我们公司招程序员时,如果有正式开源项目的话,直接录用。能做出完整的产品和解决方案的人,和所谓的码农不是一个级别的选手,前者要高贵得多。而做出开源项目的人,不仅是硬实力的体现,更是在自信心和思维能力等等方面的软实力上面的完胜。

国内的开源我认为还不错,10 年前如果你在优秀和开源项目和代码中找到中国人的名字,那是凤毛麟角,如今中国人开发和主导的开源项目已经非常普遍。这其实和我们社会的发展是相对应的。中国在开源上的发展,和中国的整体发展一样,见仁见智。

有一个比较突出的事我想说说,那就是大部分中国的开源使用者(技术人员)的提问能力实在让人无法恭维,和我在网络上看到的国外的会提问的技术人员的区别,就是古代中国"科学"和西方科学的区别,前者没有条理没有逻辑。


8.你对开源中国有何意见和建议?

开源中国在国内的技术界非常有传播性和推广力的,但层次上不够高大上。我觉得开源中国可以更专注一些,同时要向某些把握了"万众创业"和"互联网+"的公司学习。


关于开源访谈

开源访谈是开源中国推出的一系列针对国内开源技术发展的访谈,以文字的方式记录并传播。我们希望开源访谈能全面的展现国内开源软件、开源软件作者的现状,着实推动国内开源软件的推广与应用。