图表数据库 – 投注公司呢?
看看Neo4j,320亿的关系限制让我感到担忧(假设有4000万用户上传了500张照片,500个朋友,500条评论等,而在你知道之前你已经超过了320亿)。必须确保我正在使用哪个数据库做出最佳select。
不寻找主观的答案,也没有在这里辩论 – 即。 哪一个更好,等等 – 相反,因为我在图表数据库的使用上打赌一个创业公司的未来 ,所以我需要知道不同数据库存在的风险,比如Neo4j没有超过320亿的关系。
现在,有几家公司把他们的graphics数据库称为“领先的graphics数据库”。但让我们来看看过去的炒作 – 哪一个最有经济支持? 哪个数据库享有较大的社区支持? 哪一个公司背后有一个坚实的公司来支持商业?
哪一个最有可能是足够成熟,所以如果你想,你可以轻松地创buildFacebook的最小努力?
select技术特性或熟悉度的graphics数据库是很容易的 – 但是我正在寻找更多的东西 – 我想确保公司的几年时间还在。 我想确保我不会select与Neo4j基于炒作和它目前(暂时?)的势头… …
还有什么其他的图表可以与Neo4gj竞争,创造一个类似Facebook的完整的社交networking(再次, 不寻找更好的 ,只是寻找一个坚实的竞争对手)。
请不要让这变成一个主观的Neo vs Dex辩论 – 只是事实和固体的答案,请..
迈克尔打败了我,但让我补充一下,回答Neo4j,让别人回应其他技术。
以下链接包括关于Neo4j社区状态,产品采用情况以及产品背后的公司的各种事实:
http://blog.neo4j.org/2013/01/2012-year-in-review-happy-2013-it-looks.html
以下链接提到今年的路线图,除其他事项外,这将提升目前的规模限制。 这个限制仅仅是一个空间性能优化,当价格性能比有点不同时,这个优化被select回来了。 今年我们会做这个工作来增加一些指针大小,并在接下来的几个月发布一个没有实际上限的版本:
http://blog.neo4j.org/2013/01/2013-whats-coming-next-in-neo4j.html
在高度活跃的网站背后,在Neo4j集群中有一半的Facebook社交图的制作安装。 我所知道的唯一的跨区域Amazon数据库集群(对于任何数据库pipe理系统)是在Neo4j上运行的:在美国,亚洲和欧洲之间分布的10个实例。 全球最大的包裹递送服务之一使用Neo4j完成所有的包裹路由,在高峰期每秒发送2000+包裹。 当包裹滑下滑道时,决定是实时做出的。 他们去年秋天去了,圣诞节能够发生在数千万人的身上。 还有更多。 这是一个抽样。
欢迎来到图的真棒世界! 无论您最终select哪种解决scheme,我们都乐意将您作为graphics数据库社区的一部分。
菲利普
免责声明:我为Neo4j工作
只是谈论这里的成熟度(不是技术性) – Neo技术公司拥有超过50名员工,2500万美元的资金和繁荣的用户群,下载量达到50万次,每月运行3万个新的数据库,一个活跃的社区不会走开。 您也可以查看SO问题以查看社区活动。
我们在诸如Adobe(在Neo4j上运行创意云),思科(Org-Management,MDM),社交networking如Viadeo和许多职位search公司(GlassDoor,以及其他)的许多领域拥有一批健康的客户 ,在iOS上发表stream行的“纸”应用程序的第五十三名。
我们的社区网站neo4j.org应该是一个很好的去处,开始的时候,你会发现有介绍性的内容以及有关编程语言 , 驱动程序和部署的信息 ,可以帮助你入门。
Emil,Ian和Jim用O'Reilly写了一本关于“graphics数据库”的介绍性书籍,该书目前可作为免费的电子书下载 。
所以你看,我们不仅关心我们自己的产品,还关心更大的graphics生态系统,还有许多会议讲座 , 会议组 (全球41个)和开源生态系统的支持。
希望能帮助你决定。
PS关于您的担忧:今年的规模限制(无论如何是人为的) 将会增加 。
所以我在去年testing过图表数据库。 我认为只有当你足够了解你的数据时,才能够猜测你是否有任何节点需要超过320亿的关系。 我认为对于大多数人来说这是一个限制,没有太多的用例是正确的。 但是,这不是绝对的。
Neo4j是一个辉煌的产品。 有很好的文档logging,像maxdemarzi这样的人写了优秀的博客文章,如: http ://maxdemarzi.com/,这将使任何人都快速地加快neo4j的function和复杂性。 (另外他是一个好人,如果你有他们,他会回答你的问题)
如果规模是一个问题,我还build议你看看泰坦 – http://thinkaurelius.github.com/titan/ 。 这背后的家伙是辉煌的,它的目的是大规模。 它不像neo4j那样在市场上已经build立,但是它具有很大的function,并且让你在Cassandra,Hbase和BerkeleyDB之间select底层存储,从而给你一些优先级的灵活性。
Neo4j是一家资金充足的公司,拥有丰厚的收入。 它不会去任何地方。 泰坦虽然较小,但我认为是在一个快速上升的曲线。
事实是,虽然这是一个新的空间。 你没有像Postgres,MySql或Oracle的企业实力那样得到任何东西。 我们不要欺骗自己。
但是graphics数据库社区相对较小,友好且乐于助人。 它运行着很棒的活动 – 我在Neo4j的GraphCon活动上非常棒,我曾经和Titan的一些人谈过很棒。 最终,如果你想成为Facebook,无论你从哪里开始,最终都会build立自己的基础架构。 有规模,然后有你需要的所有数据中心规模小的国家规模。
最后一个想法。 4000万用户和底层基础设施挑战的问题是一个成熟的资金雄厚的公司的问题。 你没有达到4000万用户,没有吸引资金或产生必要的收入来build立自己的基础设施。 你现在可以计划,当你4000万用户,绝对。 去吧。 这是初创企业早期阶段的乐趣。 但是,更大的问题就是要达到你的第一百万甚至一千万。 对于这种用途,无论这些数据库中的哪一个,都可以让您以坚实的产品进入市场。
我的build议是在标准API(如蓝图)上构build应用程序。 主要的蓝图页面列出了可用的各种实现。 这样,您就不会被locking,并能根据您的需求(规模,速度,价格)和当时的市场状况select最佳实施scheme。
我们自2010年以来一直与Neo4j合作,不仅投注我们的公司,而且投入了相当多的时间进入开源项目( http://www.ohloh.net/p/structr )。 有一个从2012年2月的博客文章,您可以阅读详细信息:
http://structr.org/blog/the-story-behind-structr
无可否认,我们的公司很小。 但是我们已经完成了Neo4j的十几个项目,并且对结果感到非常满意。
Neo4j背后的社区充满活力,开放,并始终非常支持。 你应该去参加一个聚会活动来获得一个想法。 🙂
就像理查德说的那样,金融事实毫无疑问。 我觉得最令人印象深刻的是,Neo Technology公司的员工尽pipe是一个需要创造收入的商业公司,但他们真正热爱自己的工作,真正致力于开源模式。
所以是的,我有偏见,但并非没有理由。 🙂
为了增加好的反应,你还需要考虑许可。 如果你的项目是完全满足GPLv3要求的开源项目,那么neo4j是一个很好的select。 但是,如果您正在使用专有系统,则需要购买neo4j企业许可证,或使用像Titan那样使用更less许可限制(MIT或Apache 2许可证)的其他数据库。
这是一个很好的资源审查许可证: http : //en.wikipedia.org/wiki/Graph_database