发布于 2016-10-22 00:31:41 | 163 次阅读 | 评论: 0 | 来源: 网友投递
RethinkDB 分布式数据库
RethinkDB是一个分布式数据库,最早是作为一个对SSD进行专门优化的MySQL存储引擎出现的,其特点在于对SSD的充分利用。而目前RethinkDB已经脱离MySQL成为一个独立的存储。
2016年10月5日,RethinkDB联合创始人Slava Akhmechet在官网上宣布RethinkDB 破产倒闭。Slava Akhmechet称其已经尽了最大的努力,最终还是无法建立一个可持续的商业模式。接下来Stripe公司将接纳RethinkDB 公司,RethinkDB工程师团队将加入到Stripe。在交接过程中RethinkDB公司下的RethinkDB和Horizon的开源项目不会关闭,这两个项目都将持续可用,rethinkdb.com 和 horizon.io网站上的一切都可正常访问。Slava Akhmechet也希望在广大社区贡献者的努力下,保持继续开放的开发进程。
RethinkDB是一款开源的分布式数据库,用于存储JSON文档,可以很容易地扩展到多台机器。它有一门令人愉快的查询语言,支持表连接和group等真正有用的查询,并且安装简单、易于学习。
一位RethinkDB的资深用户William Stein(SageMath及SageMathCloud创始人)就RethinkDB的倒闭对开源项目的可持续盈利的模式进行了反思。 本文详细刊登了William Stein的这次反思,以飨关心开源项目的读者。
三个星期前,2016年9月12日,我跟RethinkDB首席工程师Daniel Mewes讨论了一晚上。本来我已邀请联合创始人Slava和Michael,但他们当时忙于筹款,未能和我们一起讨论。整个晚上,我探讨了RethinkDB的实际商业模式是什么。昨天(是指写文章的时间),也就是2016年10月6日,RethinkDB宣布倒闭了。
风投公司Andreessen-Horowitz(A16Z)旗下一个基金的投资者曾经邀请我,让我阐释SageMath公司的商业化计划,因此我得以接触了一些RethinkDB的开发者。而RethinkDB正是A16Z投资的公司之一。起初,我并没有参加A16Z会议的打算,因为我从来没有见过风险投资家,而且也不打算筹集风投。然而我的顾问劝我,即使我从来没有接受风投投资的打算,风投也很有帮助。于是我参加了会议。
注:Andreessen Horowitz(A16Z),是美国目前的顶级风投之一,与Accel、Benchmark、Greylock、Kleiner和Sequoia等齐名。A16Z创建于2009年,被外媒誉为“硅谷最牛的50个天使投资人”之一,先后在初期投资了Facebook、Twitter、Groupon、Skype、Instagram、Foursquare、Pinterest、Airbnb、Fab 和Zynga等众所周知的名字。是诸多硅谷新贵的创业导师。联合创始人是Marc Andreessen和Ben Horowitz。
在我给A16Z演示的幻灯片第一稿中,其中有一页提到的问题是:“为什么您资助那些没有明确商业模式的开源公司,如RethinkDB和CoreOS?是否出于慈善而支持开源软件生态系统?”在与Google和RethinkDB开发者交谈后,我删除了这个幻灯片,因为慈善显然不是答案(我不知道是否有一个比“偶然”更好的答案)。
我已经着力使用RethinkDB近两年,在某种意义上,我可能是他们最大的用户。我的SageMathCloud项目利用RethinkDB提供基于Web的课程管理,如Python、R、Latex等。例如,每次在实时同步文档中输入一些文本时,RethinkDB表都会插入一个条目。我的RethinkDB表有近1亿条记录。我曾在RethinkDB聚会上发表演讲,提交了许多错误报告,于是,我被称为“最不幸运的用户”。总之,2015年,我在RethinkDB身上下了巨大的赌注,就像我启动SageMath项目时,打赌Python在2004年回归。这两年我访问旧金山的RethinkDB开发商时,我多次对他们说:“我有很好的既得利益,你们肯定会分得一杯羹。”我的SageMath公司也为RethinkDB的支持合同付款。
因为A16Z会议、公司董事会议即将召开,而我的想法是可持续的商业模式。SageMath公司的业务模式是通过订阅SageMathCloud(SMC,在Google Cloud Platform上托管)赚钱。当然,业务的运作已经根据客户的反馈改进了很多细节。 虽然我们的软件绝对是开源的,但我们销售的是便利性,易于访问和使用,我们通过托管数百个共享基础设施的项目来提供价值,所以它对大学而言,更廉价也更容易支付,而不是托管我们的软件本身(这也是相当容易)。这就是我们的商业模式,我认为它是可用的;至少我们的月经常性收入(MRR)正在稳步增长,收入是我们托管成本的两倍(由于开发人员成本,我们目前仍然没有可观的现金流)。
我可以确定,RethinkDB的商业模式可以通过以下方式赚钱:
向公司销售支持合同(我就买了一个)。
销售RethinkDB的闭源专有版本,具有企业感兴趣的额外功能(他们有一些这样的需求,例如审计日志的查询)。
Horizon将成为Firebase的云托管竞争对手,具有独特的优势,用户可以选择从云迁移到自己的私有数据中心,以及更多的可定制性。这个策略取决于用户从云迁移而不是迁移的趋势,RethinkDB的一些人认为这是一个真正的趋势(虽然我不同意这个观点)。
我不知道他们现在正在认真地努力做什么。RethinkDB的闭源专有版本似乎是一个刚刚开始的,也就是最近努力做成的事。也许它直接抵触成为一个纯开源公司的愿望?
足够多的用户能使商业模式更容易运行。我怀疑RethinkDB没有很多真正的用户。用户数量的趋向与邮件列表流量变化大致呈线性关系。并且与SageMath邮件列表相比,RethinkDB邮件列表的流量少了一个数量级,而SageMath有大约50,000个用户。仅仅一年多前,他们还告诉人们不要认真使用RethinkDB,直到最近,RethinkDB才宣告可应用于生产环境。数据库技术的采用周期很慢——人们明智地等待Aphyr的测试,与类似技术的基准测试等。与众不同的是,我选择RethinkDB比大多数人更早,因为我非常喜欢RethinkDB的设计理念。这是我喜欢的第一个数据库,已经用了很多很多年了。
结论
RethinkDB并不能形成真正的商业模式,短时间内不会成气候。
RethinkDB作为一个开源项目,我很担心它的未来。我不知道开发人员是否有过一名开源社区志愿者的成长经验; 它的困难令人难以置信,我甚至不清楚他们是否会参与。至少,我认为他们必须切换到非常自由的许可证(Apache而不是AGPL),并使一切(例如自动化测试代码,文档等)开源。对开源基础设施工作的支持是疯狂的——主要来自小政府补助金(用于研究软件)或公司员工(使用软件)的贡献。以公司友好的方式进行限制是至关重要的。
公司可以通过多种方式获得激励,包括:
获得下一轮风险投资;
找到可持续盈利模式,来自用户购买的收入大于企业支出;
先不顾成本抢占大量用户,再考虑如何赚钱。
SageMath是我在2004年开始的一个长期的开源项目。我努力使SageMathCloud周边业务取得成功,否则我会失败,因此我对风险的容忍度很低。失败不是我的选择,我不会寻找退路。对我来说,与我的价值观最匹配的策略是激励我的公司建立一个有利可图的业务,因为这是最有可能生存的,也给我们维护开源和纯数学软件的长期支持的自由。
因此对于我的公司来说,既不优化提高下一轮风险投资,也不考虑成本增长。你会惊讶有多少人认为我在这一点上完全错误。
ANDREESSEN-HOROWITZ
我和RethinkDB公司的开发人员,促膝交谈,谈了足足一夜,他们对于公司未来的商业愿景,过分的自信让人非常担忧。就我所知,他们可能是对开源最友好的风投公司。风投的资金充足,这让我看到了一丝希望,在开源领域,建立一家成功的初创企业并不是没有可能的。于是,我为A16Z准备的会议删除了幻灯片中关于RethinkDB的部分内容。
我抵达A16Z时受到了令人难以置信的欢迎。当我进入房间时看到原子弹工艺品,感到诧异,然后进到一间漂亮的小办公室等待。
在会议上,我播放了幻灯片,并解释了商业模式、目标等。他们说,A16Z没有直接投资我商业计划的地方,因为我五年之内的计划不够雄心勃勃,而且我没有明确的退出计划。 他们也担心数学软件Mathematica和Matlab的总市值太小(只有几亿?)。
然而,他们还是慷慨地向我介绍了更多的潜在天使投资者。
我们认为我正在尝试建立公司对外来投资的价值。我希望得到一些与我公司感兴趣的投资组合公司的了解或介绍(例如Udacity,GitHub),但他们偏离了所有这些问题。还有一些困窘,因为我很清楚向他们展示了我在做什么,我不是要求钱,而这不是他们的习惯。
不管如何,我很感谢这次会议,它让我醒悟,他们很明白无误地认为我完全错了:我不是想尽一切可能吸收投资者更多的钱。
BASECAMP
在创建SageMath公司的第一年,我曾计划筹集一轮风投,并为此做一切准备。然后我读了一些DHH的关于Basecamp的书,并意识到许多观点适用于我的情况,给了我价值观。经过反思,我改变了主意。我认为Basecamp本身主要是闭源,所以他们可能有建立业务的优势。 SageMathCloud和SageMath确实是100%的开源,而且构建一个完全开放源代码的业务可能更难。
投资者认为我们开源项目的知识产权毫无价值,一旦像RethinkDB这样倒闭,在投资者眼里就一文不值。就像开源项目RethinkDB一样,RethinkDB只是关闭,而Stripe只雇了RethinkDB的工程师。
注:Basecamp是37signals公司旗下的一款非常流行的基于云服务的项目管理软件。以简单易用和颠覆性的创新而出名。Basecamp提供了消息板,待办事宜,简单调度,协同写作,文件共享。而不是甘特图,炫丽的曲线图,和繁重的电子表格。目前,成千上万的人同意这是一种更好的方式。来自的Farhad Manjoo说:“Basecamp代表了Web软件的未来。”
在A16Z会议后的第二天,我和我的董事会,在几个小时内进行了充分的讨论。董事会一些成员也努力说服我,应该筹集更多的投资者的资金。
WILL POOLE:你已经注定失败
两个星期前,我遇到了Will Poole,是我朋友的朋友,我们谈到我的公司和计划。 我给他描述了我在做什么,一切都是开源的,我鼓励公司建立一个企业,而不是提高投资者的资金。他聆听了并问了很多后续问题,他很清楚的明白表示:建立一家公司的想法非常好。
但他的反馈令人沮丧。于是我说:“所以,你说我基本上注定失败了。”他回答道:“我并没有说你注定失败,但是通过你的方法,也许只能做一个小企业,长不大。我正在做的,绝对不会对孩子们的大学学费有任何帮助或者影响。”如果这是一个随机的人的反馈,它可能没有那么令人不安,但那是Will Poole的反馈,他 1996年加入微软,负责运营微软数十亿美元的Windows业务。Will Poole是一位退役的四星上将,参与过一个成功的海外战争;他在附近转悠过几次,试图说服我尽可能立即将SageMathCloud(SMC)闭源,并试图说服我让用户在SMC中创建内容,这样我可以重用任何想要的内容。我感到很震惊,并相信了他:我需要关闭SMC的部分,例如,我们花了一夏天实施的Kubernetes新后端。
(Will:如果你读这个,虽然这场讨论对我而言真的很不安,但我真的很感激和尊重你。)
为我介绍Will Poole以及其他人的朋友,将我描述为一个不想接受投资的、令人沮丧的企业家。他说,根据他在商学院的所学:良好的公司都是有很多债务的。我这样的情况让他感到惊讶,成了他一个有趣的例子。他补充说:“当然,我从来没有经营过这样一家公司。”
我结束了与Will的会晤,我相信,让SageMathCloud闭源,会使事情变得更加可靠。 然而,经过几天的思想斗争,并与公司其他人讨论,我决定不进行闭源。这只会使我们的工作更难、方式更难。 但我不会迫于恐惧做出任何决定。
我不在乎外人说什么,我坚信能把开源做成一门成功的生意,比如Wordpress即是一例。所以我不需要风险投资。
注:SageMath 是一个免费的、开源的数学软件系统,采用GPL协议。它整合了许多开源Python包,采用Python语言编写,但也支持其他语言。它的目标是创造一个可变的开源软件以替代Magma、Maple、Mathematica和Matlab。Sage不仅是一个软件,也是一个编程环境,提供命令行模式、笔记本模式,可以编写编译型程序和解释型程序。目前Sage支持Linux、Mac OS X、BSD、Solaris平台。